Skip to main content

unzip-crx EUVDEUVD-2026-65301

| CVE-2026-78638 LOW
Path Traversal (CWE-22)
2026-08-25 VulDB GHSA-5jh7-c63f-jp85
1.9
CVSS 4.0 · Vendor: VulDB
View

Attack ChainAIDerived

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

  1. Access
    Gain local low-privilege access
  2. Exploit
    Influence destination argument to unzip()
  3. Execution
    Supply path traversal sequences (e.g., ../)
  4. Impact
    Write extracted files to arbitrary filesystem location

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V5 - File Handling Path canonicalization, traversal prevention
MITRE ATT&CK

2 techniques across 2 tactics: Discovery, Collection

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

Exploitation Conditions

Local system access is required - the CVSS 4.0 AV:L metric confirms this is not remotely exploitable. Low-privilege user access is sufficient (PR:L); no administrative or root privileges are needed to trigger the flaw. Exploitation requires the ability to influence the destination argument passed to the unzip() function in dist/index.js, most realistically in applications or scripts that accept user-supplied or external input as the extraction target path. Impact is bounded by the write permissions of the process invoking unzip-crx: a restricted service account cannot overwrite files outside its own accessible paths. There is no confidentiality or availability impact (VC:N, VA:N per the CVSS vector) - the only effect is unauthorized file writes within the local filesystem. Non-default or special configurations are not required; any invocation of unzip() with an unsanitized destination is vulnerable.

Impact

The CVSS 4.0 base score of 4.8 (Medium) is supported by the vector AV:L/AC:L/AT:N/PR:L/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N, reflecting a local-only attack with low complexity, low privilege requirement, and limited impact confined to integrity. The E:P exploit maturity modifier is consistent with the confirmed publicly available proof-of-concept. KEV status is negative, meaning no confirmed widespread or in-the-wild exploitation has been reported to CISA. No EPSS data was provided, limiting probabilistic exploitation forecasting. The local attack vector (AV:L) is the primary risk-limiter: exploitation is not remotely triggerable and requires the attacker to already have local system access or the ability to influence input to the unzip() call. Practical risk is highest in CI/CD pipeline contexts where untrusted CRX archives are processed automatically and the destination argument is externally influenced. The absence of a vendor response and patch elevates residual risk for teams that have not implemented compensating controls, but the bounded impact (VI:L, no confidentiality or availability loss) keeps this from being an urgent priority for most deployments.

Exploit ScenarioDerived

A local attacker with low-privilege access on a system where an application uses unzip-crx to process CRX files supplies a crafted destination argument containing ../ traversal sequences - for example, ../../etc/cron.d/backdoor - causing the unzip() function to extract archive contents to an arbitrary filesystem location outside the intended output directory. A publicly available proof-of-concept is referenced in GitHub issue #19, making reproduction straightforward for any local attacker who can influence the destination path passed to the library.

Monitor Track and reassess. Why: LOW severity (CVSS 0.1-3.9).
No patch listed yet 0.1% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Aug 25, 2026

Path traversal in peerigon unzip-crx and unzip-crx-3 (versions up to 0.2.0) enables a local, low-privileged attacker to write extracted archive files outside the intended destination directory by supplying a crafted path argument to the unzip() function. A publicly available proof-of-concept exploit exists via the GitHub issue tracker, and no vendor patch has been released as the project has not responded to the disclosure. The integrity impact is limited to arbitrary file placement on the local filesystem within the privileges of the invoking process.

RemediationAI

No vendor-released patch has been identified at time of analysis - the maintainers have not responded to the responsible disclosure. The primary compensating control is to validate and canonicalize the destination path before passing it to unzip(): use Node.js path.resolve() to compute the absolute path, then assert that it remains within an expected base directory before invoking the function, rejecting any input that would escape the boundary. Developers should also consider replacing unzip-crx with an actively maintained archive-extraction library that performs internal path sanitization. If replacement is not immediately feasible, restrict the package's invocation to fully trusted, internally controlled inputs only and avoid passing any externally supplied or user-influenced values as the destination argument. Running the invoking process under a least-privilege account or inside a container with a restricted filesystem view limits the blast radius of any exploitation. Monitor the GitHub issue tracker at https://github.com/peerigon/unzip-crx/issues/19 for vendor response and patch availability.

Affected VersionsENISA

unzip-crx-3 0.1
unzip-crx 0.2.0
unzip-crx-3 0.2.0
unzip-crx 0.1

Affected Packages

euvd unzip_crx no fix
euvd unzip_crx_3 no fix

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 2 packages in euvd

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

Technical ContextAI · show details

The affected packages - peerigon/unzip-crx and peerigon/unzip-crx-3 (CPE: cpe:2.3:a:peerigon:unzip-crx and cpe:2.3:a:peerigon:unzip-crx-3) - are Node.js utilities designed to extract Chrome Extension (CRX) archive files. The vulnerability resides in the unzip() function within dist/index.js, in the Archive Extraction component. The root cause is CWE-22 (Improper Limitation of a Pathname to a Restricted Directory): the function does not sanitize the caller-supplied destination argument, allowing path components such as ../ sequences embedded in archive entry paths or the destination parameter to escape the intended output directory. This class of flaw is well-understood in archive-extraction libraries and typically arises when entry filenames are concatenated with a base path without first canonicalizing and bounding the result.

Know when Unzip Crx 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 (VulDB) PRIMARY 1.9 MEDIUM
CVSS:4.0/AV:L/AC:L/AT:N/PR:L/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N/E:P
vuln.today AI 3.3 LOW

Local attack vector with low-privilege requirement confirmed by description; impact is limited to file write outside intended directory with no confidentiality or availability effect.

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

Primary rating from Vendor (VulDB).

CVSS VectorVendor: VulDB

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

Lifecycle Timeline

3
Severity Changed
Aug 25, 2026 - 06:22 NVD
MEDIUM LOW
CVSS changed
Aug 25, 2026 - 06:22 NVD
4.8 (MEDIUM) 1.9 (LOW)
CVE Published
Aug 25, 2026 - 05:30 cve.org
MEDIUM 4.8

DescriptionCVE.org

A flaw has been found in peerigon unzip-crx and unzip-crx-3 up to 0.2.0. This affects the function unzip of the file dist/index.js of the component Archive Extraction. Executing a manipulation of the argument destination can lead to path traversal. The attack can only be executed locally. The exploit has been published and may be used. The project was informed of the problem early through an issue report but has not responded yet.

Threat Intelligence Overview

EPSS Score
0.1%
Top 97% exploitable
Prevalence
Low
niche Node.js utility for Chrome Extension archive extraction
Exploit
POC
Public exploit code exists
Data Quality
6 sources
Confidence: High

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 LOW
CISA KEV No
Public POC Yes
EPSS 0.1%
Patch available No
Active threat No
Deciding rule
LOW severity (CVSS 0.1-3.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
Poc
System Exposure· derived
Small
Automatable· derived
No
Human Impact· derived
Low

Priority Score

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

Attack Technique

Path traversal exploits occur when applications use user-controlled input to construct file system paths without proper validation.

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