CVE-2022-23221
Debian Linux 10.0 … 9.0
Raw vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HSummary
CVE-2022-23221 is a critical-severity Argument Injection (CWE-88) vulnerability in Debian Debian Linux. Its CVSS base score is 9.8 (Critical).
Operationally, ranked in the top 0.8% 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 CM-7 (Least Functionality) — 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.
The vulnerability affects the H2 Console in versions prior to 2.1.210 and stems from insufficient validation of JDBC connection URLs. Attackers can supply a jdbc:h2:mem URL containing the parameters IGNORE_UNKNOWN_SETTINGS=TRUE;FORBID_CREATION=FALSE;INIT=RUNSCRIPT to trigger arbitrary code execution during console initialization. This issue is tracked as CWE-88 and carries a CVSS 3.1 score of 9.8.
Unauthenticated remote attackers with network access to the H2 Console can exploit the flaw by submitting the malicious JDBC URL, resulting in full compromise of the confidentiality, integrity, and availability of the host system. No user interaction or credentials are required.
The H2 project addressed the issue in release 2.1.210, with corresponding updates published through its GitHub security advisories and release notes. Debian subsequently issued patched packages for affected LTS distributions.
The associated EPSS score has remained flat at its peak value of 0.2657 since disclosure, indicating no material increase in observed exploitation interest.
OWASP Top 10 for Web (2025)
EU & UK References
- 🇪🇺 ENISA EUVD: EUVD-2022-0440
Vulnerability Data
H2 Console before 2.1.210 allows remote attackers to execute arbitrary code via a jdbc:h2:mem JDBC URL containing the IGNORE_UNKNOWN_SETTINGS=TRUE;FORBID_CREATION=FALSE;INIT=RUNSCRIPT substring, a different vulnerability than CVE-2021-42392.
- CWE(s)
Related Threats
Likely ATT&CK TechniquesAI
Techniques this vulnerability likely enables, inferred from its description, weakness type, and attributed-actor tradecraft. Confidence is per-technique.
CVEs Like This One
Affected Assets
Mitigating Controls
Control response
Mitigating Controls (NIST 800-53 r5) AI
Directly requires validation of untrusted JDBC URL input to reject dangerous parameters such as INIT=RUNSCRIPT before code execution occurs.
Restricts network exposure of the H2 Console to only authorized internal hosts, blocking unauthenticated remote attackers from reaching the vulnerable endpoint.
Enforces least functionality by disabling or restricting the H2 Console and unsafe JDBC URL features unless explicitly required.
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 input validation and command construction to prevent argument injection.
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.
Security testing can detect argument injection but does not prevent it at the source.
Secure development lifecycle mandates input validation and command construction practices that directly prevent argument injection.
Application security requirements include explicit rules for safe command-line argument handling and escaping.
Secure architecture principles discourage unsafe command invocation patterns and favor safer APIs.
Secure coding standards explicitly require proper neutralization of command arguments, directly eliminating CWE-88.
Change management can catch unsafe command patterns during reviews but is not a direct mitigation.