CVE-2026-80427

bestzip before 2.2.6 and 3.0.x before 3.0.2 Argument Injection via Missing Option Delimiter

Published Aug 26, 2026 CVSS 4.0 · 8.6 High EPSS < 1% KEV · Not listed
Description
bestzip builds the argument list for the system zip utility without separating options from operands. The destination archive path and the caller-supplied source paths are passed to the child process with no -- delimiter between them, so any source entry beginning with a hyphen is interpreted by zip as an option rather than a file name. zip accepts -T to test the finished archive and -TT to name the command used to perform that test, so a source list containing those two entries and a command string causes zip to run that command through a shell once the archive has been written. An application that passes a file name or path it received from an untrusted source into the bestzip API therefore executes a command of the supplier's choosing. Versions 2.2.6 and 3.0.2 add the delimiter.

Analysis

AI-generated

Technical impact

The vulnerability in bestzip arises from an argument injection flaw produced by the library’s failure to insert a delimiter between the destination archive and the list of source files. When a supplied source path begins with a hyphen, the zip utility interprets that entry as an option rather than a file name. Attackers can provide entries such as -T or -TT and include a command string, causing zip to execute that command through a shell after the archive is finished. This flaw allows arbitrary command execution with the privileges of the process that invoked bestzip and represents a functionally critical weakness (CWE-88).

Affected Systems

Affected installations use bestzip versions prior to 2.2.6 and prior to 3.0.2. The library is distributed via npm and widely employed in Node.js projects. Any application that passes user-supplied file names to the bestzip API is vulnerable. The problem was mitigated in bestzip 2.2.6 and 3.0.2 by inserting the missing argument delimiter.

Risk and Exploitability

The CVSS score of 8.6 signals a high severity vulnerability. Although an EPSS score is unavailable and the issue is not listed in the CISA KEV catalog, the capability to execute arbitrary code remains dramatically dangerous. The flaw can be exploited locally or remotely whenever an attacker can influence the file paths passed to bestzip, meaning that any application receiving untrusted filenames is at risk until patched.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade bestzip to version 2.2.6 or newer, or 3.0.2 or newer, where the argument delimiter is added.
  • Validate or sanitize all filenames or paths supplied to bestzip, ensuring they do not start with a hyphen or contain other dangerous option characters.
  • Run bestzip or the overall application in a sandboxed or least‑privilege environment to limit the impact of a potential exploit.

Generated by OpenCVE AI on August 26, 2026 at 17:59 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories available
History
Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'poc', 'Technical Impact': 'total'}, 'version': '2.0.3'}

Type Values Removed Values Added
Description bestzip builds the argument list for the system zip utility without separating options from operands. The destination archive path and the caller-supplied source paths are passed to the child process with no -- delimiter between them, so any source entry beginning with a hyphen is interpreted by zip as an option rather than a file name. zip accepts -T to test the finished archive and -TT to name the command used to perform that test, so a source list containing those two entries and a command string causes zip to run that command through a shell once the archive has been written. An application that passes a file name or path it received from an untrusted source into the bestzip API therefore executes a command of the supplier's choosing. Versions 2.2.6 and 3.0.2 add the delimiter.
Title bestzip before 2.2.6 and 3.0.x before 3.0.2 Argument Injection via Missing Option Delimiter
First Time appeared Bestzip Project
Bestzip Project bestzip
Weaknesses CWE-88
CPEs cpe:2.3:a:bestzip_project:bestzip:*:*:*:*:*:*:*:*
Vendors & Products Bestzip Project
Bestzip Project bestzip
References
Metrics cvssV3_1

{'score': 8.4, 'vector': 'CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H'}

cvssV4_0

{'score': 8.6, 'vector': 'CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N'}

Weaknesses
  • CWE-88

    Improper Neutralization of Argument Delimiters in a Command ('Argument Injection')

Sources

Status
PUBLISHED
Assigner
VulnCheck
Published
Updated
Aug 29, 2026, 11:48 AM
Reserved
Aug 26, 2026, 10:43 AM
Status
Deferred
Published
Aug 26, 2026, 4:16 PM
Modified
Sep 24, 2026, 8:43 PM