Skip to main content

Ghidra CVE-2026-115396

| EUVDEUVD-2026-108332 MEDIUM
Improper Handling of Highly Compressed Data (Data Amplification) (CWE-409)
2026-10-22 disclosure@vulncheck.com GHSA-fr5c-6rcj-3fw2
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 zip-bomb theme archive
  2. Exploit
    Trick user into importing theme
  3. Execution
    Icon entries decompress without size limit
  4. Impact
    Exhaust host filesystem, denial of service

Vulnerability Assessment

Weakness
CWE
ASVS 5.0
V2 - Validation and Business Logic Compression ratio limits
Exploitation Conditions

Exploitation requires a victim to use Ghidra's theme import feature (readZipTheme/ThemeReader.processIconFile) to import an attacker-supplied theme ZIP containing a highly compressed icon entry in the image/ subdirectory, which is extracted to ~/.config/ghidra/Ghidra*/images without a decompressed-size or compression-ratio limit. Limiting factors: the attack is local (AV:L) and needs user interaction (UI:P) - the user must be socially engineered into importing the crafted archive; there is no remote or network-triggered path. Impact is confined to availability (filesystem/disk and I/O exhaustion causing later writes and other applications to fail); there is no code execution, privilege gain, or data disclosure. Affected versions are Ghidra >= 10.3; the only complete fix stated by the vendor is updating to 12.2, which adds SecureZipExtractor enforcing a 100:1 max compression ratio, 100 MB per-file and 1 GB total extraction limits.

Impact

This is a medium-severity availability-only flaw (CVSS 4.0 base 6.8), not a high-priority emergency. The input's own signals are internally consistent: the CVSS 4.0 vector (AV:L/AC:L/PR:N/UI:P, VA:H with VC:N/VI:N) describes a local, low-complexity, decompression-bomb denial of service that requires the victim to perform an action (importing a theme) and produces no confidentiality or integrity impact. The vuln.today decision label is 'this_month' rather than 'act_now' or 'emergency', which matches the limited, local, interaction-dependent nature of the bug. No EPSS score, no CISA KEV listing, and no PoC/exploit reference were supplied, so there is no evidence of active exploitation or of weaponized exploit code. The only material conflict is metadata: the single Tag 'Information Disclosure' directly contradicts the CVSS vector (VC:N, VA:H) and the NSA GHSA advisory, both of which characterize this as uncontrolled resource consumption / denial of service - the tag should be read as mislabeled, not as evidence of data exposure. Net: a legitimate but bounded issue best remediated on the normal patch cycle rather than treated as an exploited, widespread threat.

Exploit ScenarioDerived

An attacker crafts a small theme ZIP in which an icon entry under the image/ subdirectory decompresses to an enormous size, then persuades a Ghidra user (e.g. via a shared 'custom theme') to import it. Because the vector is local and requires user interaction (AV:L/UI:P), there is no remote or unattended path; the victim must actively import the file. No public exploit code is identified at time of analysis, though the NSA GHSA advisory documents the mechanism and shows a fully consumed disk (/dev/sda2 at 100%).

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

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

Alert me

AnalysisAIv1 – Oct 22, 2026

Disk-space exhaustion in Ghidra 10.3 through 12.1 lets a crafted theme ZIP fill the host filesystem through the theme importer's icon extraction path. When a user is persuaded to import the archive, icon entries in the image/ subdirectory are written to ~/.config/ghidra/Ghidra*/images without any cap on decompressed size or compression ratio, so a small archive can expand until the partition is full, after which theme imports and other disk-writing applications fail. The flaw is availability-only - no code execution, privilege gain, or data disclosure - and there is no public exploit identified at time of analysis; exploitation requires local interaction with the import feature and user interaction, giving it a medium-severity, this-month remediation priority rather than emergency status.

RemediationAI

Vendor-released patch: Ghidra 12.2, which adds ghidra.util.SecureZipExtractor enforcing the 100:1 compression-ratio ceiling and the 100 MB per-file and 1 GB total extraction limits; upgrade from any 10.3 through 12.1 installation using the release at https://github.com/NationalSecurityAgency/ghidra/releases/tag/Ghidra_12.2_build, and see advisory GHSA-6mj8-x8x9-7gxq (https://github.com/NationalSecurityAgency/ghidra/security/advisories/GHSA-6mj8-x8x9-7gxq) plus fix commit 2c2bc5be182d655c9df418ac35b9782f39b6a784. The vendor states that updating to 12.2 is the only complete fix, so on unpatched installations the practical compensating control is to avoid importing theme archives from untrusted or unsolicited sources, since the trigger is a user-initiated import of a crafted ZIP via the theme import feature; this reduces exposure but does not remove the flaw, and sufficient free disk space or quota on the user's home partition limits the blast radius of an accidental import without preventing the decompression-driven CPU and I/O consumption itself.

Affected VersionsENISA

Ghidra 10.3 <12.2

Affected Packages

euvd ghidra fix: 12.2

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

Ghidra's theme import routine (readZipTheme, with ThemeReader.processIconFile handling icon entries) decompresses attacker-controlled ZIP entries using Apache Commons Compress ZipArchiveEntry streams and writes them verbatim to the user's configuration images directory. The root cause is CWE-409, Improper Handling of Highly Compressed Data: no bound is applied to the uncompressed byte count per entry, to the cumulative extracted size, or to the compression ratio, so a highly compressible icon payload can expand essentially unbounded until the filesystem is exhausted. The upstream fix introduces a new ghidra.util.SecureZipExtractor class that wraps extraction with per-entry and aggregate accounting via InputStreamStatistics and enforces three hard limits - a maximum compression ratio of 100:1 (evaluated only after 1024 compressed bytes have been read, to avoid false positives on small entries), a 100 MB maximum single-file size, and a 1 GB maximum total extraction size - while also retaining Zip Slip protection through FileUtilities.getSecureFile. Successful exploitation consumes disk, CPU, and I/O during decompression, and because the exhausted partition is the user's home filesystem, unrelated applications that require disk writes can also fail.

Know when the next one hits your stack

  • 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 victim must import a crafted theme file (UI:R), no authentication to deliver the archive (PR:N), and impact is availability-only (A:H), so C:N/I:N.

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

Lifecycle Timeline

1
Patch available
Oct 22, 2026 - 20:18 EUVD

DescriptionCVE.org

Ghidra 10.3 before 12.2 contains an improper handling of highly compressed data vulnerability in ThemeReader.processIconFile() that fails to limit decompressed size or compression ratio. Attackers can persuade a user to import a crafted theme ZIP whose icon entries expand to fill the host filesystem, causing later writes to fail.

Threat Intelligence Overview

EPSS Score
0.1%
Top 98% exploitable
Prevalence
Low
niche NSA reverse-engineering tool, security-researcher desktop 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.1%
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· derived
None
System Exposure· derived
Small
Automatable· derived
No
Human Impact· derived
Medium

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.

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