Skip to main content

unshield CVE-2026-110716

| EUVDEUVD-2026-101139 MEDIUM
Out-of-bounds Read (CWE-125)
2026-10-14 VulnCheck GHSA-vcw2-wv74-jx7g
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 malicious InstallShield cabinet
  2. Delivery
    Deliver file to victim or automated consumer
  3. Exploit
    Victim processes file with unshield/libunshield
  4. Execution
    Trigger OOB read in unshield_get_file_table()
  5. Impact
    Crash tool or consuming application (DoS)

Vulnerability Assessment

Weakness
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Bounds checking, read limits
MITRE ATT&CK

1 technique across 1 tactic: Collection

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation requires an attacker-supplied, crafted InstallShield cabinet file containing an out-of-range file_table_offset or an abnormally large file count, which must then be parsed by the unshield command-line tool or an application linking libunshield - i.e., the victim or an automated pipeline must actively process the malicious file (UI:P / local vector). Limiting factors: no remote network vector (AV:L), the attack cannot be triggered without the target processing the file, and the realistic impact is confined to a crash/denial of service (VA:H; VC:N/VI:N) rather than code execution or data theft. Affects unshield versions up to and including 1.6.2.

Impact

This is a medium-severity (CVSS 4.0 base 6.8) memory-safety defect whose real-world risk is modest. The provided CVSS 4.0 vector (AV:L/AC:L/AT:N/PR:N/UI:P/VC:N/VI:N/VA:H) describes a local, low-complexity flaw that requires passive user interaction and yields only an availability impact (a crash) - there is no confidentiality or integrity impact per the vector. Publicly available exploit code exists (referenced VulnCheck advisory and a hackmd write-up), which raises the chance of opportunistic reproduction, but there is NO CISA KEV listing and no EPSS score was supplied, so there is no evidence of active or widespread exploitation. SSVC-style reasoning points to low priority: exploitation is file/consumer-triggered rather than automatable at scale, and technical impact is limited to denial of service of the unshield tool or a library consumer. One signal conflict to verify: the 'Information Disclosure' tag and the CWE-125 out-of-bounds READ nature suggest potential memory disclosure, yet the authoritative CVSS 4.0 vector sets VC:N (no confidentiality impact) and VA:H - i.e., the demonstrated impact is a crash, not data leakage; treat any info-disclosure claim as unconfirmed and verify with the VulnCheck advisory.

Exploit ScenarioDerived

An attacker crafts a malicious InstallShield cabinet file with an out-of-range file_table_offset or an inflated file count and gets a victim to process it with the unshield tool or an application that embeds libunshield. When unshield_get_file_table() parses the attacker-controlled header, it reads past the heap allocation and crashes the process. Publicly available proof-of-concept exploit code demonstrates the heap out-of-bounds read.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
No patch listed yet 0.2% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Oct 14, 2026

An out-of-bounds heap read in unshield through 1.6.2 lets a crafted InstallShield cabinet file with an out-of-range file_table_offset or an abnormally large file count crash the unshield command-line tool or any application linking libunshield. Exploitation is local and requires the victim or an automated pipeline to actively open the malicious .cab file (CVSS 4.0 base 6.8; assessed 3.1 as AV:L/AC:L/PR:N/UI:R with availability-only impact). Publicly available exploit code exists, but the realistic outcome is denial of service - no code execution or data disclosure has been demonstrated - and there is no evidence of confirmed active exploitation (CISA KEV).

RemediationAI

No vendor-released patch was identified at time of analysis: the vulnerable code path is publicly visible in unshield through 1.6.2, but no fixed release version is confirmed in the available data, so teams should track the upstream repository (https://github.com/twogood/unshield) and apply a patched build as soon as it is tagged. Until then, treat all InstallShield cabinet files as untrusted input: do not run unshield or libunshield-based extraction in automated pipelines on files from untrusted sources without first validating the cabinet header (file_table_offset within the declared/actual buffer length and file counts matching the real table), since malformed values are the direct trigger. Where validation is not possible, isolate extraction in a sandboxed or resource-limited process (separate user, seccomp/AppArmor confinement, ulimit/cgroup CPU and memory limits) so a crash cannot take down the host service, and avoid linking libunshield into long-running privileged processes that consume third-party .cab files; the trade-off is reduced or unavailable extraction capability for untrusted cabinets. The public VulnCheck advisory (https://www.vulncheck.com/advisories/unshield-through-1.6.2-heap-out-of-bounds-read-via-unshield-get-file-table) and the published write-up at https://hackmd.io/@haind-pwn/unshield-header-filetable-oob-read should be consulted for the exact triggering conditions and any updated fix guidance.

Affected VersionsENISA

unshield 0 ≤1.6.2

Affected Packages

euvd unshield 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 defect is a CWE-125 out-of-bounds read rooted in libunshield's unshield_get_file_table() routine (lib/libunshield.c, referenced around line 195 in the upstream repository). InstallShield cabinet (.cab) headers carry a file_table_offset and a file count that the library uses to locate the internal file table; the vulnerable code trusts these header-supplied values without validating them against the size of the heap buffer actually allocated for the cabinet data. Supplying a file_table_offset that points past the allocation, or a file count large enough to walk past the end of the buffer, causes the parser to read adjacent heap memory. Because the bad values originate in attacker-controlled file bytes, the bug is reachable whenever unshield or a libunshield consumer parses an untrusted cabinet. The AV:L / UI:P(UI:R) vector reflects that the malicious file must be supplied and processed locally rather than being triggerable over the network, and the C:N/I:N/A:H profile reflects that the practical consequence of the OOB read is a crash rather than corruption, code execution, or memory disclosure.

Know when Unshield 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

Attack needs a local crafted file processed by the user (AV:L, UI:R); no privileges required (PR:N); demonstrated impact is a crash only, so C:N/I:N/A:H.

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

unshield through 1.6.2 contains a heap out-of-bounds read vulnerability in unshield_get_file_table() that allows attackers to read past heap allocations via unchecked cabinet header offsets. Attackers can supply a crafted InstallShield cabinet with out-of-range file_table_offset or large file counts to crash the unshield tool or library consumers.

Threat Intelligence Overview

EPSS Score
0.2%
Top 94% exploitable
Prevalence
Low
niche open-source InstallShield extraction tool, limited to specialized Linux/dev use
Exploit
POC
Public exploit code exists
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 Yes
EPSS 0.2%
Patch available No
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
Scheduled
Exploitation· derived
Poc
System Exposure· derived
Small
Automatable· derived
No
Human Impact· derived
Medium

Priority Score

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

Attack Technique

A buffer overflow occurs when a program writes more data to a memory buffer than it was allocated to hold, causing the excess data to spill into adjacent memory regions.

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

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