CVE-2024-1899
DoS in Showdownjs Showdown ≤ 2.1.0
Raw vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/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-2024-1899 is a medium-severity Uncontrolled Recursion (CWE-674) vulnerability in Showdownjs Showdown. Its CVSS base score is 5.3 (Medium).
Operationally, ranked in the top 44% of CVEs by exploit likelihood; it is not currently listed in the CISA KEV catalog; a public proof-of-concept is referenced.
The strongest mitigations our analysis identified map to SI-10 (Information Input Validation) and SC-5 (Denial-of-service Protection) — see the control section below for these in your framework.
EU & UK References
- 🇪🇺 ENISA EUVD: EUVD-2024-17621
Vulnerability Data
An issue in the anchors subparser of Showdownjs versions <= 2.1.0 could allow a remote attacker to cause denial of service conditions.
- CWE(s)
Related Threats
CVEs Like This One
Affected Assets
Mitigating Controls
Mitigating Controls (NIST 800-53 r5) AI
Input validation can reject or constrain data that would otherwise drive unbounded recursive calls.
DoS protection mechanisms limit the resource-exhaustion impact of uncontrolled recursion without eliminating the flaw.
System monitoring can observe anomalous resource consumption that signals runaway recursion after it begins.
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 requires controls that prevent uncontrolled recursion through design and code review.
A.8.26 only requires that security requirements (including resilience against attacks such as buffer overflows) be identified and specified during development or acquisition; it does not itself enforce, implement, or prevent uncontrolled recursion from being exploitable in the resulting application.
A.8.27 mandates establishing and applying secure engineering principles (defense-in-depth, least privilege, security by design, input distrust, hardening, design reviews) but does not itself stop uncontrolled recursion from being introduced or from consuming excessive resources when present; the weakness can still be exploited.
Secure coding standards directly prohibit or constrain recursive constructs that could exhaust stack or memory.
Security testing in development can detect excessive recursion via static analysis or fuzzing.
Capacity management includes monitoring and limits that mitigate resource exhaustion from runaway recursion.
Hardening callouts derived
DISA STIG baselines are authored against specific weaknesses. Where this CVE cites a broad weakness class, the mapping is not asserted at that abstraction (owner ruling, 2026-09-25: grade only at Base and below), so no rule is shown here rather than a rule shown against the wrong grain.
- No fine-grained STIG row for CWE-674, a class-level weakness, and none of its children carries one either.