CVE-2026-104267 Botan: scrypt V-buffer heap overflow on 32-bit from constructor-accepted parameters
Description
Botan is a C++ cryptography library. From 2.7.0 until 3.13.0, Botan's Scrypt implementation on 32-bit platforms computes required memory with unchecked multiplication, allowing attacker-controlled Scrypt parameters to wrap the allocation size and create a buffer smaller than the algorithm subsequently writes. The issue affects systems that enable Scrypt and accept arbitrary parameters from a hostile source, including applications that decrypt attacker-supplied encrypted private keys. A triggering parameter set can cause approximately four gigabytes of Scrypt output to be written past the allocated heap buffer, immediately crashing the process and causing denial of service. Arbitrary code execution is not demonstrated and appears difficult, but cannot be excluded from the overwrite primitive. This issue is fixed in version 3.13.0.
Détail CVSS 4.0
Vecteur CVSS:4.0/AV:L/AC:H/AT:P/PR:L/UI:P/VC:N/VI:N/VA:H/SC:N/SI:N/SA:NExploitable avec un accès local à la machine, avec un compte ordinaire et si un utilisateur effectue une action ; un attaquant peut compromettre gravement la confidentialité, l’intégrité ou la disponibilité.
- Vecteur d’attaque
- Local
- Complexité
- Élevée
- Prérequis d’attaque
- Présents
- Privilèges requis
- Faibles
- Interaction
- Passive
- Confidentialité
- Aucun
- Intégrité
- Aucun
- Disponibilité
- Élevé
- Confidentialité des autres systèmes
- Aucun
- Intégrité des autres systèmes
- Aucun
- Disponibilité des autres systèmes
- Aucun
Produits et versions touchés
| Produit | Versions touchées | Corrigé en |
|---|---|---|
| Botan 2.7 | 2.7.0 → < 3.13.0 | 3.13.0 |