Severity by source
CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:A/VC:N/VI:N/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
Primary rating from Vendor (VulnCheck) · only source for this CVE.
CVSS VectorVendor: VulnCheck
CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:A/VC:N/VI:N/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
Lifecycle Timeline
3DescriptionCVE.org
Ghidra before 12.0.3 contains an out-of-memory vulnerability in the rust_demangle function that allocates unbounded output buffers without size limits. Attackers can craft malicious Rust symbol names in binaries to trigger exponential memory allocation, causing process crashes during binary analysis.
AnalysisAI
Uncontrolled memory allocation in Ghidra's rust_demangle function (versions before 12.0.3) allows a denial-of-service condition when a user analyzes a specially crafted binary containing malicious Rust symbol names. The affected function allocates output buffers without enforcing size limits, enabling exponential memory growth that crashes the Ghidra process. No public exploit code or active exploitation (CISA KEV) has been identified at time of analysis; however, the practical attack surface is real for teams that routinely analyze untrusted Rust binaries.
Technical ContextAI
Ghidra is NSA's open-source reverse engineering framework, and this vulnerability resides in its Rust symbol demangler (rust_demangle). CWE-789 (Uncontrolled Memory Allocation) describes the root cause: the function does not enforce an upper bound on the output buffer it allocates when expanding mangled Rust symbol names. Rust symbol mangling can encode deeply nested generic types or long identifier chains; a maliciously constructed symbol can cause the demangler to recursively or exponentially expand allocations, exhausting available process memory. The affected CPE is cpe:2.3:a:nationalsecurityagency:ghidra:*:*:*:*:*:*:*:* covering all Ghidra versions prior to 12.0.3. This is a pure availability issue - no code execution or data disclosure path is present.
RemediationAI
The primary remediation is to upgrade Ghidra to version 12.0.3 or later, which resolves the unbounded allocation in rust_demangle. The vendor fix is documented in GitHub Security Advisory GHSA-m94m-fqr3-x442. If immediate upgrade is not possible, organizations should restrict analysts from opening binaries sourced from untrusted or adversarial origins using Ghidra until patched; this directly eliminates the required user interaction prerequisite. A secondary compensating control is to run Ghidra analysis tasks within a resource-constrained container or virtual machine with a configured memory ceiling (e.g., using cgroup memory limits on Linux), which would cause the process to be killed before consuming all host memory and prevent host-level availability impact. This does not fix the crash but limits blast radius. Neither workaround is a substitute for patching.
Ghidra/RuntimeScripts/Linux/support/launch.sh in NSA Ghidra through 10.2.2 passes user-provided input into eval, leading
NSA Ghidra through 9.0.4, when experimental mode is enabled, allows arbitrary code execution if the Read XML Files featu
NSA Ghidra before 9.0.1 allows XXE when a project is opened or restored, or a tool is imported, as demonstrated by a pro
NSA Ghidra before 9.0.2 is vulnerable to DLL hijacking because it loads jansi.dll from the current working directory. Ra
In NSA Ghidra before 9.1, path traversal can occur in RestoreTask.java (from the package ghidra.app.plugin.core.archive)
Command injection in NSA Ghidra (versions before 12.0.3) executes arbitrary commands when analysts click on maliciously
SQL injection in Ghidra's BSim binary-similarity component (versions before 12.1) allows authenticated remote attackers
Authentication bypass in NSA Ghidra versions prior to 12.1 allows any holder of a valid CA-signed certificate to imperso
SQL injection in Ghidra's PostgreSQL collaboration backend (versions 11.0 through pre-12.1) allows authenticated users t
Remote code execution in NSA Ghidra before version 12.1 allows attackers to execute arbitrary commands when a user opens
Command injection in Ghidra versions before 12.1 on Windows allows attackers to execute arbitrary OS commands under the
Arbitrary file write in NSA's Ghidra reverse-engineering framework before version 12.0.4 allows attackers to escape the
Same technique Denial Of Service
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-36012