Skip to main content

Ghidra CVE-2026-113604

| EUVDEUVD-2026-105082 MEDIUM
Memory Allocation with Excessive Size Value (CWE-789)
2026-10-20 VulnCheck GHSA-j4jr-xgjh-hpvc
6.8
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Craft 128-byte malicious ELF file
  2. Delivery
    Deliver as sample to analyst or pipeline
  3. Exploit
    ElfHeader reads unvalidated header counts
  4. Execution
    Oversized array allocation exhausts JVM heap
  5. Impact
    OutOfMemoryError crashes import/analysis

Vulnerability Assessment

Weakness
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Memory allocation limits
Exploitation Conditions

Exploitation requires a victim to load an attacker-supplied ELF file into Ghidra - either through the GUI import/load-spec discovery step or via a headless analysis pipeline that automatically ingests untrusted binaries. The malicious file need only be 128 bytes and the flaw triggers against default configurations during normal ELF parsing (no special feature toggle is required). The limiting factors are: the local attack vector (the file must reach the analyst's system) and the required user/pipeline interaction of actually importing the file; there is no authentication prerequisite on the target, but the attacker cannot trigger it remotely without that load action. Impact is confined to availability (process/job crash via OutOfMemoryError) with no code execution, data disclosure, or integrity effect.

Impact

This is a moderate-severity denial-of-service issue, not a critical priority. The CVSS 4.0 base score of 6.8 is driven almost entirely by a high availability impact (VA:H) with no confidentiality or integrity consequences (VC:N/VI:N), and the vector is local with required passive user interaction (AV:L/UI:P) - meaning an analyst must actually load a crafted file. There is no CISA KEV listing and no public exploit was provided in the intelligence, so exploitation status is 'no public exploit identified at time of analysis.' No EPSS score was supplied, so widespread-exploitation probability cannot be quantified from the data. The signals are internally consistent: the root cause (CWE-789, allocation sized by unvalidated ELF extended header counts) matches a VA:H/no-C/no-I DoS, and the local attack vector matches a tool that imports files an analyst chooses to open. The practical worst case is a crash of a single Ghidra process or a headless analysis job (OutOfMemoryError), not host compromise or lateral movement. Real-world risk is bounded: the main concern is disruption of automated malware-triage/headless pipelines that ingest untrusted samples, where an attacker-controlled sample could reliably crash analysis.

Exploit ScenarioDerived

An attacker distributes a malicious 128-byte ELF file (e.g., as a malware sample sent to or collected by a reverse-engineering team). When an analyst imports it into Ghidra - or an automated headless pipeline ingests it for load-spec discovery - the ELF loader allocates arrays sized by the file's unvalidated extended program/section header counts, exhausting the JVM heap and raising an OutOfMemoryError. No public exploit was identified at time of analysis, but the vendor-patched commit makes the vulnerable code path and trigger conditions clear.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 20, 2026

Denial of service in NSA Ghidra 10.2 through 12.1.4 allows an attacker who supplies a crafted 128-byte ELF file to force excessive memory allocation in the ELF loader, ending in an OutOfMemoryError during import/load-spec discovery or headless analysis. The issue is local and requires the victim or pipeline to load the untrusted file (user interaction), with impact limited to availability-no code execution, data disclosure, or integrity effect was assessed. No public exploit code was identified at time of analysis, and an upstream fix commit is available from the vendor.

RemediationAI

Apply the upstream vendor fix commit 6c50a66e8a939e2bcbaf0a6432ec5d53a41ceeb3; patch availability is confirmed by the vendor reference, but a specific released patched version was not independently confirmed from the supplied data. Until the fix is deployed, avoid importing ELF files from untrusted sources into Ghidra or headless analysis pipelines. If untrusted ELF import is unavoidable, pre-screen files for ELF header anomalies-especially e_phnum/e_shnum values using PN_XNUM or SHN_XINDEX, inconsistent e_phentsize/e_shentsize, or out-of-range e_phoff/e_shoff-and reject them before load; this may block some legitimate unusual ELF binaries and requires custom tooling. Run Ghidra and headless jobs in an isolated, memory-capped container/process with automatic restart so an OutOfMemoryError is contained to a disposable job, accepting that the analysis job can still be disrupted. See the VulnCheck advisory https://www.vulncheck.com/advisories/ghidra-10.2-through-12.1.4-denial-of-service-via-elf-loader-extended-header-counts and vendor commit for details.

Affected VersionsENISA

Ghidra 10.2 ≤12.1.4

Affected Packages

euvd ghidra no fix

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

The flaw is in Ghidra's ELF loader ElfHeader class (CWE-789: memory allocation with excessive size value). ELF headers use 16-bit e_phnum/e_shnum fields with escape values PN_XNUM and SHN_XINDEX that redirect the loader to extended counts; before the fix, those extended section and program header counts were used to size arrays without validating them against file bounds, header entry sizes, or practical hard limits. A tiny crafted ELF can therefore advertise an enormous header count and trigger an OutOfMemoryError as soon as Ghidra parses the file for load-spec discovery. The commit adds file-offset hard limits, validates e_phoff/e_shoff and e_phentsize/e_shentsize, constrains header counts to file bounds and Integer.MAX_VALUE-based limits, and truncates/disables header parsing when values are inconsistent. CPE data identifies NationalSecurityAgency Ghidra as the affected product.

Know when Ghidra gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (VulnCheck) PRIMARY 6.8 MEDIUM
CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:P/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
vuln.today AI 5.5 MEDIUM

Local because the analyst must import an attacker-supplied file (UI:R), no privileges needed (PR:N), reliable crash with no C/I impact so A:H only, S:U as only the Ghidra process is affected.

3.1 AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H
4.0 AV:L/AC:L/AT:N/PR:N/UI:P/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Local
Attack Complexity
Low
Attack Requirements
None
Privileges Required
None
User Interaction
Passive
Vulnerable system: Confidentiality
None
Vulnerable system: Integrity
None
Vulnerable system: Availability
High
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

Ghidra 10.2 through 12.1.4 contains a denial of service vulnerability in the ELF loader's ElfHeader class that allocates arrays sized by unvalidated extended section and program header counts. Attackers can supply a crafted 128-byte ELF file that triggers an OutOfMemoryError during load-spec discovery at import or in headless analysis pipelines.

Threat Intelligence Overview

EPSS Score
0.2%
Top 95% exploitable
Prevalence
Low
specialized NSA reverse-engineering tool, security/RE niche audience
Data Quality
5 sources
Confidence: Medium

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Defer
Exploitation
None
System Exposure· derived
Small
Automatable
No
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

34
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +34
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.

More in Ghidra

View all
CVE-2023-22671 CRITICAL POC
9.8 Jan 06

Ghidra/RuntimeScripts/Linux/support/launch.sh in NSA Ghidra through 10.2.2 passes user-provided input into eval, leading

CVE-2019-16941 CRITICAL POC
9.8 Sep 28

NSA Ghidra through 9.0.4, when experimental mode is enabled, allows arbitrary code execution if the Read XML Files featu

CVE-2019-13625 CRITICAL POC
9.1 Jul 17

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

CVE-2019-17665 HIGH POC
7.8 Oct 16

NSA Ghidra before 9.0.2 is vulnerable to DLL hijacking because it loads jansi.dll from the current working directory. Ra

CVE-2019-13623 HIGH POC
7.8 Jul 17

In NSA Ghidra before 9.1, path traversal can occur in RestoreTask.java (from the package ghidra.app.plugin.core.archive)

CVE-2026-4946 HIGH
8.8 Mar 29

Command injection in NSA Ghidra (versions before 12.0.3) executes arbitrary commands when analysts click on maliciously

CVE-2026-52758 HIGH
8.7 Jun 10

SQL injection in Ghidra's BSim binary-similarity component (versions before 12.1) allows authenticated remote attackers

CVE-2026-52754 HIGH
8.7 Jun 10

Authentication bypass in NSA Ghidra versions prior to 12.1 allows any holder of a valid CA-signed certificate to imperso

CVE-2026-49498 HIGH
8.7 Jun 10

SQL injection in Ghidra's PostgreSQL collaboration backend (versions 11.0 through pre-12.1) allows authenticated users t

CVE-2026-52751 HIGH
8.6 Jun 10

Remote code execution in NSA Ghidra before version 12.1 allows attackers to execute arbitrary commands when a user opens

CVE-2026-52750 HIGH
8.4 Jun 10

Command injection in Ghidra versions before 12.1 on Windows allows attackers to execute arbitrary OS commands under the

CVE-2026-52755 HIGH
8.4 Jun 10

Arbitrary file write in NSA's Ghidra reverse-engineering framework before version 12.0.4 allows attackers to escape the

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy