{"id":"CVE-2026-118769","aliases":["AZL-112409","DEBIAN-CVE-2026-118769","EUVD-2026-113278","GHSA-c68p-822g-jfvr","UBUNTU-CVE-2026-118769"],"status":"published","title":"Botan: Integer overflow when reporting block size in FFI can cause memory corruption","description":"Botan is a C++ cryptography library. From 2.1.0 until 3.13.0, the Botan C API function botan_block_cipher_block_size converted a size_t block size to int without a bounds check. In an application that accepts external algorithm parameter strings and uses the FFI raw ECB mode, an attacker can select the variable-block-size Lion cipher so that the reported size is truncated, the caller allocates insufficient memory, and later block processing causes memory corruption. The C++ API and normally used C API modes such as CBC and CTR are unaffected. This issue is fixed in version 3.13.0.","severity":{"version":"4.0","score":9.2,"vector":"CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N","level":"critical","assessor":"cna","from":"cve"},"epss":{"day":"2026-11-12","score":0.00365,"percentile":0.30761,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-125","CWE-681","CWE-787"],"published":"2026-10-29T17:22:07Z","modified":"2026-11-05T05:36:30Z","fixes":[{"ecosystem":"Debian:14","package":"botan3","fixed_in":["3.13.0+dfsg-2"],"sources":["osv"]}],"affected":[{"source":"osv","ecosystem":"Azure Linux:3","package":"botan2","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"last_affected":"2.14.0-2"}]}]},{"source":"osv","ecosystem":"Debian:12","package":"botan","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["2.19.3+dfsg-1","2.19.3+dfsg-1+deb12u1","2.19.4+dfsg-1","2.19.5+dfsg-1","2.19.5+dfsg-2","2.19.5+dfsg-3","2.19.5+dfsg-4"]},{"source":"osv","ecosystem":"Debian:13","package":"botan","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["2.19.5+dfsg-4"]},{"source":"osv","ecosystem":"Debian:13","package":"botan3","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["3.10.0+dfsg-1","3.10.0+dfsg-2","3.11.0+dfsg-1","3.11.1+dfsg-1","3.11.1+dfsg-2","3.12.0+dfsg-1","3.12.0+dfsg-2","3.12.0+dfsg-2~deb13u1","3.13.0+dfsg-1","3.13.0+dfsg-2","3.7.1+dfsg-2","3.8.1+dfsg-1","3.9.0+dfsg-1","3.9.0+dfsg-2","3.9.0+dfsg-2.1"]},{"source":"osv","ecosystem":"Debian:14","package":"botan3","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.13.0+dfsg-2"}]}],"versions":["3.10.0+dfsg-1","3.10.0+dfsg-2","3.11.0+dfsg-1","3.11.1+dfsg-1","3.11.1+dfsg-2","3.12.0+dfsg-1","3.12.0+dfsg-2","3.12.0+dfsg-2~deb13u1","3.13.0+dfsg-1","3.7.1+dfsg-2","3.8.1+dfsg-1","3.9.0+dfsg-1","3.9.0+dfsg-2","3.9.0+dfsg-2.1"]},{"source":"osv","ecosystem":"Ubuntu:18.04:LTS","package":"botan","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["2.4.0-3","2.4.0-4","2.4.0-5ubuntu1"]},{"source":"osv","ecosystem":"Ubuntu:20.04:LTS","package":"botan","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["2.9.0-2","2.9.0-2build1","2.12.1-2","2.12.1-2build1"]},{"source":"osv","ecosystem":"Ubuntu:Pro:22.04:LTS","package":"botan","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["2.17.3+dfsg-3","2.19.1+dfsg-2ubuntu1","2.19.1+dfsg-2ubuntu1+esm1"]},{"source":"osv","ecosystem":"Ubuntu:Pro:24.04:LTS","package":"botan","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["2.19.3+dfsg-1ubuntu1","2.19.3+dfsg-1ubuntu2","2.19.3+dfsg-1ubuntu2+esm1"]}],"products":[{"vendor":"randombit","product":"botan"}],"references":[{"url":"https://github.com/randombit/botan/security/advisories/GHSA-c68p-822g-jfvr","tags":["x_refsource_CONFIRM","advisory","report"]},{"url":"https://github.com/randombit/botan/pull/5805","tags":["x_refsource_MISC","fix","report"]},{"url":"https://github.com/randombit/botan/commit/c6089ab7fab616517d56c447c93e13a5c57a0af3","tags":["x_refsource_MISC","fix","report"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-118769","tags":["web","advisory"]},{"url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/118xxx/CVE-2026-118769.json","tags":["advisory"]},{"url":"https://security-tracker.debian.org/tracker/CVE-2026-118769","tags":["advisory"]},{"url":"https://ubuntu.com/security/CVE-2026-118769","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-118769","tags":["report"]}],"sources":{"cve":[{"id":"CVE-2026-118769","title":"Botan: Integer overflow when reporting block size in FFI can cause memory corruption","description":"Botan is a C++ cryptography library. From 2.1.0 until 3.13.0, the Botan C API function botan_block_cipher_block_size converted a size_t block size to int without a bounds check. In an application that accepts external algorithm parameter strings and uses the FFI raw ECB mode, an attacker can select the variable-block-size Lion cipher so that the reported size is truncated, the caller allocates insufficient memory, and later block processing causes memory corruption. The C++ API and normally used C API modes such as CBC and CTR are unaffected. This issue is fixed in version 3.13.0.","status":"published","published":"2026-10-29T17:22:07.316Z","modified":"2026-10-29T20:21:04.235Z","cvss":[{"version":"4.0","score":9.2,"vector":"CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N","level":"critical","assessor":"cna"}],"cwes":["CWE-125","CWE-681","CWE-787"],"updated_at":"2026-11-02T14:20:03.827373Z"}],"euvd":[{"id":"EUVD-2026-113278","description":"Botan is a C++ cryptography library. From 2.1.0 until 3.13.0, the Botan C API function botan_block_cipher_block_size converted a size_t block size to int without a bounds check. In an application that accepts external algorithm parameter strings and uses the FFI raw ECB mode, an attacker can select the variable-block-size Lion cipher so that the reported size is truncated, the caller allocates insufficient memory, and later block processing causes memory corruption. The C++ API and normally used C API modes such as CBC and CTR are unaffected. This issue is fixed in version 3.13.0.","status":"published","published":"2026-10-29T17:22:07Z","modified":"2026-10-29T20:21:04Z","cvss":[{"version":"4.0","score":9.2,"vector":"CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N","level":"critical"}],"updated_at":"2026-11-02T16:59:14.591479Z"}],"nvd":[{"id":"CVE-2026-118769","description":"Botan is a C++ cryptography library. From 2.1.0 until 3.13.0, the Botan C API function botan_block_cipher_block_size converted a size_t block size to int without a bounds check. In an application that accepts external algorithm parameter strings and uses the FFI raw ECB mode, an attacker can select the variable-block-size Lion cipher so that the reported size is truncated, the caller allocates insufficient memory, and later block processing causes memory corruption. The C++ API and normally used C API modes such as CBC and CTR are unaffected. This issue is fixed in version 3.13.0.","status":"published","published":"2026-10-29T18:17:29.18Z","modified":"2026-10-30T19:37:07.073Z","cvss":[{"version":"4.0","score":9.2,"vector":"CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X","level":"critical","assessor":"secondary"}],"cwes":["CWE-125","CWE-681","CWE-787"],"updated_at":"2026-11-02T14:13:04.940026Z"}],"osv":[{"id":"CVE-2026-118769","title":"Botan: Integer overflow when reporting block size in FFI can cause memory corruption","description":"Botan is a C++ cryptography library. From 2.1.0 until 3.13.0, the Botan C API function botan_block_cipher_block_size converted a size_t block size to int without a bounds check. In an application that accepts external algorithm parameter strings and uses the FFI raw ECB mode, an attacker can select the variable-block-size Lion cipher so that the reported size is truncated, the caller allocates insufficient memory, and later block processing causes memory corruption. The C++ API and normally used C API modes such as CBC and CTR are unaffected. This issue is fixed in version 3.13.0.","status":"published","published":"2026-10-29T17:22:07.316Z","modified":"2026-11-01T07:03:38.678958797Z","cvss":[{"version":"4.0","score":9.2,"vector":"CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N","level":"critical"}],"cwes":["CWE-125","CWE-681","CWE-787"],"updated_at":"2026-11-02T15:44:57.008854Z"},{"id":"DEBIAN-CVE-2026-118769","description":"Botan is a C++ cryptography library. From 2.1.0 until 3.13.0, the Botan C API function botan_block_cipher_block_size converted a size_t block size to int without a bounds check. In an application that accepts external algorithm parameter strings and uses the FFI raw ECB mode, an attacker can select the variable-block-size Lion cipher so that the reported size is truncated, the caller allocates insufficient memory, and later block processing causes memory corruption. The C++ API and normally used C API modes such as CBC and CTR are unaffected. This issue is fixed in version 3.13.0.","status":"published","published":"2026-10-29T18:17:29.18Z","modified":"2026-10-31T21:00:07.289018775Z","cvss":[{"version":"4.0","score":9.2,"vector":"CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X","level":"critical"}],"updated_at":"2026-11-02T15:45:51.374409Z"},{"id":"UBUNTU-CVE-2026-118769","description":"Botan is a C++ cryptography library. From 2.1.0 until 3.13.0, the Botan C API function botan_block_cipher_block_size converted a size_t block size to int without a bounds check. In an application that accepts external algorithm parameter strings and uses the FFI raw ECB mode, an attacker can select the variable-block-size Lion cipher so that the reported size is truncated, the caller allocates insufficient memory, and later block processing causes memory corruption. The C++ API and normally used C API modes such as CBC and CTR are unaffected. This issue is fixed in version 3.13.0.","status":"published","published":"2026-10-29T18:17:00Z","modified":"2026-11-05T04:42:51Z","cvss":[{"version":"4.0","score":9.2,"vector":"CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N","level":"critical"}],"updated_at":"2026-11-05T13:33:25.727744Z"},{"id":"AZL-112409","title":"CVE-2026-118769 affecting package botan2 2.14.0-2","description":"Botan is a C++ cryptography library. From 2.1.0 until 3.13.0, the Botan C API function botan_block_cipher_block_size converted a size_t block size to int without a bounds check. In an application that accepts external algorithm parameter strings and uses the FFI raw ECB mode, an attacker can select the variable-block-size Lion cipher so that the reported size is truncated, the caller allocates insufficient memory, and later block processing causes memory corruption. The C++ API and normally used C API modes such as CBC and CTR are unaffected. This issue is fixed in version 3.13.0.","status":"published","published":"2026-10-29T18:17:29Z","modified":"2026-11-05T05:36:30Z","updated_at":"2026-11-05T16:41:19.001909Z"}]}}
