Skip to main content

kiwilan php-archive EUVDEUVD-2026-104607

| CVE-2026-112302 LOW
Path Traversal (CWE-22)
2026-10-19 VulDB GHSA-m3xg-f8vh-5p22
2.1
CVSS 4.0 · Vendor: VulDB
View

Attack ChainAIDerived

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

  1. Access
    Craft ZIP with ../ traversal entries
  2. Exploit
    Deliver archive to target application
  3. Execution
    App invokes ArchiveZip::extract
  4. Impact
    Files written outside extraction directory

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

Exploitation requires that a PHP application embed kiwilan/php-archive (<= 2.3.02) and call ArchiveZip::extract on an attacker-controlled or attacker-supplied ZIP archive; the attacker cannot trigger it unaided. The limiting factor encoded as UI:P/UI:R is this required processing action - a user or application must choose to extract the malicious archive, so there is no direct remote-unauthenticated server exploitation against a default service. Impact is further bounded to writing files outside the intended target directory (classic Zip Slip), and realistic damage depends on the extraction path, filesystem permissions, and whether overwritten locations are security-sensitive.

Impact

This is a LOW real-world priority despite being a publicly-disclosed path traversal (Zip Slip) issue. The CVSS 4.0 base score is only 2.1, with the vendor-supplied vector AV:N/AC:L/AT:N/PR:N/UI:P and limited low-rated impacts (VC:L/VI:L/VA:L), meaning no single impact dimension is high. The strongest escalating signal is POC availability - a public exploit gist exists and E:P (Proof-of-Concept) is encoded in the vector - but there is no CISA KEV listing and no EPSS score was provided, so there is no evidence of active or widespread exploitation. The UI:P component is decisive: exploitation is not fully automatable because a victim application/user must actually extract an attacker-supplied archive using the vulnerable ArchiveZip::extract function. The report originates solely from VulDB and the vendor was contacted but did not respond, so there is no vendor advisory or confirmed patch - treat affected-version and fix data as unverified. Net: a real but low-severity library bug with public POC, not a drop-everything issue.

Exploit ScenarioDerived

An attacker crafts a ZIP archive containing entries with '../' path-traversal sequences in their filenames and gets a PHP application that uses kiwilan/php-archive to process it (e.g. an upload or import feature). When the application calls ArchiveZip::extract, files are written outside the intended extraction directory, potentially overwriting or planting files elsewhere on disk. A public proof-of-concept exploit is available on GitHub (gist by 0xSebin).

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

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

Alert me

AnalysisAIv1 – Oct 19, 2026

A path traversal (Zip Slip) flaw in kiwilan/php-archive through version 2.3.02 lets an attacker craft a ZIP archive whose entry names escape the intended extraction directory when ArchiveZip::extract() is called, allowing files to be written to arbitrary locations the PHP process can reach. The library is a dependency, not a network service, so exploitation requires the host application to pass an attacker-influenced archive to extract() and to run with filesystem permissions that make the overwritten paths meaningful. Publicly available exploit code exists (a proof-of-concept gist is referenced alongside the VulDB entry), but there is no evidence of active exploitation in the wild, and the vendor did not respond to the disclosure.

RemediationAI

No vendor-released patch is identified at time of analysis: the maintainer was contacted early but did not respond, so upgrades within the 2.x line do not remove the flaw. The most direct mitigation is to stop calling ArchiveZip::extract() on untrusted input, or to wrap it with a pre-validation pass that iterates ZipArchive entries, rejects any name containing '..' segments, backslashes, or absolute/drive-letter prefixes, and confirms that realpath(destination . '/' . entryName) still begins with realpath(destination) before extraction; the trade-off is that legitimate archives using relative or unusual nesting may be rejected and must be normalized first. Alternatively, extract into a disposable directory owned by a low-privilege account outside the web root, strip executable permissions and disallow symlink entries, then move only allow-listed files into place - this limits Zip Slip write primitives to a sandbox at the cost of an extra copy step and tighter deployment configuration. Applications that cannot accept either control should replace the dependency with a maintained extraction library that performs canonical path checks, and should add upload-time scanning that inspects ZIP central-directory entry names before any processing occurs. Reference material: https://vuldb.com/vuln/422348 and the public proof-of-concept at https://gist.github.com/0xSebin/90d210e703f880d59dbde243fae3aa75.

Affected VersionsENISA

php-archive 2.3.02

Affected Packages

euvd php_archive 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

kiwilan/php-archive is a PHP utility library that wraps ZIP handling for Laravel/PHP projects; the vulnerable code path is ArchiveZip::extract() in src/Readers/ArchiveZip.php, which enumerates archive entries and writes them to disk. CWE-22 (Improper Limitation of a Pathname to a Restricted Directory) manifests here as classic 'Zip Slip': the implementation trusts the entry name supplied by the archive (including '../' sequences, absolute paths, or directory-traversal encodings) and concatenates it with the destination directory without canonicalizing and verifying the resulting absolute path stays inside the target folder. Because ZIP entry names are fully attacker-controlled metadata, an archive that looks benign when listed can still deliver payloads such as PHP files into web-accessible directories. The CVSS v4.0 vector records PR:N but UI:P, and our independent CVSS 3.1 assessment (AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:L) mirrors that: the 'user interaction' element is not a human click but the application's decision to extract an untrusted archive, so there is no unaided remote attack surface against a default deployment. Impact is bounded to low-integrity/confidentiality/availability effects on files the PHP user can write, with severity depending on whether the extraction target sits beneath a web root or holds configuration data.

Know when PHP 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 2.1 MEDIUM
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:L/VI:L/VA:L/SC:N/SI:N/SA:N/E:P
vuln.today AI 6.3 MEDIUM

Malicious archive is delivered over the network (AV:N) but a user/app must extract it (UI:R); no auth needed (PR:N), and traversal writes yield limited low read/write/availability impact.

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

Primary rating from Vendor (VulDB).

CVSS VectorVendor: VulDB

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

Lifecycle Timeline

3
Severity Changed
Oct 19, 2026 - 21:24 NVD
MEDIUM LOW
CVSS changed
Oct 19, 2026 - 21:24 NVD
5.3 (MEDIUM) 2.1 (LOW)
CVE Published
Oct 19, 2026 - 21:00 cve.org
LOW 2.1

DescriptionCVE.org

A weakness has been identified in kiwilan php-archive up to 2.3.02. This affects the function ArchiveZip::extract of the file src/Readers/ArchiveZip.php of the component Extraction. This manipulation causes path traversal. The attack is possible to be carried out remotely. The exploit has been made available to the public and could be used for attacks. The vendor was contacted early about this disclosure but did not respond in any way.

Threat Intelligence Overview

EPSS Score
0.4%
Top 66% exploitable
Prevalence
Low
niche open-source PHP Composer library, limited production footprint
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.4%
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
Scheduled
Exploitation· derived
Poc
System Exposure· derived
Open
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.

More in PHP

View all
CVE-2019-11043 CRITICAL POC
9.8 Oct 28

In PHP versions 7.1.x below 7.1.33, 7.2.x below 7.2.24 and 7.3.x below 7.3.11 in certain configurations of FPM setup it

CVE-2012-1823 CRITICAL POC
9.8 May 11

sapi/cgi/cgi_main.c in PHP before 5.3.12 and 5.4.x before 5.4.2, when configured as a CGI script (aka php-cgi), does not

CVE-2016-1555 CRITICAL POC
9.8 Apr 21

(1) boardData102.php, (2) boardData103.php, (3) boardDataJP.php, (4) boardDataNA.php, and (5) boardDataWW.php in Netgear

CVE-2018-11138 CRITICAL POC
9.8 May 31

The '/common/download_agent_installer.php' script in the Quest KACE System Management Appliance 8.0.318 is accessible by

CVE-2024-11680 CRITICAL POC
9.8 Nov 26

ProjectSend versions prior to r1720 are affected by an improper authentication vulnerability. Rated critical severity (C

CVE-2025-49113 CRITICAL POC
9.9 Jun 02

Roundcube Webmail contains a critical PHP object deserialization vulnerability (CVE-2025-49113, CVSS 9.9) that allows au

CVE-2017-9841 CRITICAL POC
9.8 Jun 27

Util/PHP/eval-stdin.php in PHPUnit before 4.8.28 and 5.x before 5.6.3 allows remote attackers to execute arbitrary PHP c

CVE-2025-0108 HIGH POC
8.8 Feb 12

Palo Alto Networks PAN-OS management web interface contains an authentication bypass allowing unauthenticated attackers

CVE-2021-25298 HIGH POC
8.8 Feb 15

Nagios XI version xi-5.7.5 is affected by OS command injection. Rated high severity (CVSS 8.8), this vulnerability is re

CVE-2021-25296 HIGH POC
8.8 Feb 15

Nagios XI version xi-5.7.5 is affected by OS command injection. Rated high severity (CVSS 8.8), this vulnerability is re

CVE-2013-4983 CRITICAL POC
10.0 Sep 10

The get_referers function in /opt/ws/bin/sblistpack in Sophos Web Appliance before 3.7.9.1 and 3.8 before 3.8.1.1 allows

CVE-2023-6553 CRITICAL POC
9.8 Dec 15

The Backup Migration plugin for WordPress is vulnerable to Remote Code Execution in all versions up to, and including, 1

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