CVE-2026-40687
Exim ≤ 4.99.2
Raw vector
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:LCVSS and EPSS are reproduced from their sources (NVD, FIRST EPSS). Risk Priority is our own derived reading, not an NVD score.
Summary
CVE-2026-40687 is a medium-severity Missing Initialization of Resource (CWE-909) vulnerability in Exim Exim. Its CVSS base score is 4.8 (Medium).
Operationally, ranked at the 31th percentile by exploit likelihood (below the median); it is not currently listed in the CISA KEV catalog.
The strongest mitigations our analysis identified map to SA-11 (Developer Testing and Evaluation) and SA-15 (Development Process, Standards, and Tools) — see the control section below for these in your framework.
Deeper analysis AI-assisted summary
Synthesised by an AI model from the NVD description and linked references — a reading aid, not an authoritative source.
CVE-2026-40687 is a memory safety vulnerability in the Exim mail transfer agent (MTA) versions prior to 4.99.2. It occurs when the SPA (Secure Password Authentication) driver is used with an adversarial SPA resource, potentially triggering an out-of-bounds write that crashes the affected connection instance. Alternatively, it can lead to erroneous data processing that leaks contents from uninitialized heap memory. The issue is tracked under CWE-909 (Missing Initialization of Resource) and carries a CVSS v3.1 base score of 4.8 (AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:L), indicating moderate severity with network accessibility but high attack complexity.
Remote, unauthenticated attackers can exploit this vulnerability over the network if the target Exim instance has the SPA authentication driver enabled and processes a specially crafted adversarial SPA resource. Exploitation requires no user interaction or privileges but demands sophisticated manipulation of the authentication flow. Successful attacks can achieve either a denial-of-service condition by crashing the specific connection instance or limited confidentiality impact through disclosure of uninitialized heap memory contents.
Mitigation is available via upgrade to Exim 4.99.2, which includes a fix committed at https://code.exim.org/exim/exim/commit/68b963b9f75ca27b38e1c0f8c87037990199f505. Official Exim security advisories provide further details at https://exim.org/static/doc/security/CVE-2026-40687.txt and https://exim.org/static/doc/security/cve-2026-04.1/CVE2026-40687.assessment, while the initial disclosure appears in the oss-security mailing list at https://www.openwall.com/lists/oss-security/2026/04/30/21.
EU & UK References
- 🇪🇺 ENISA EUVD: EUVD-2026-26445
Vulnerability Data
In Exim before 4.99.2, when the SPA authentication driver is used with an adversarial SPA resource, there can be an out-of-bounds write that crashes the connection instance, or erroneous data processing that divulges data from uninitialized heap memory.
- CWE(s)
Related Threats
CVEs Like This One
Affected Assets
Mitigating Controls
Mitigating Controls (NIST 800-53 r5) AI
Developer testing and evaluation can discover missing initialization through static analysis or test cases.
Documented development standards and processes can mandate initialization of critical resources.
Security engineering principles can require explicit resource initialization during design and coding.
Mitigating Controls (NIST CSF 2.0) AI
Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→CSF cross-walk (authority under review) — links open the control.
Secure SDLC practices directly require proper resource initialization as part of coding standards and verification.
Mitigating Controls (ISO/IEC 27001:2022 Annex A) AI
Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→ISO cross-walk (authority under review) — links open the control.
Secure development life cycle mandates initialization of resources before use.
Application security requirements can specify resource initialization checks.
Secure architecture principles include proper resource lifecycle management.
Secure coding standards explicitly require initialization of variables and resources.
Security testing can detect missing initialization defects before deployment.