Description
Out-of-bounds Write (CWE-787) in the PEA archive extraction routine (pea.pas, unpea_procedure) of the first-party pea component in PeaZip 11.2.0 and earlier allows an attacker who convinces a victim to open or extract a crafted .pea archive to execute arbitrary code as the user running PeaZip. While decompressing a PCOMPRESS1 stream, the 32-bit compressed-block-size field of the first block (compsize) is read directly from the archive and used without validation as the length of a blockread into the fixed-size global buffers wbuf1/wbuf2 (1,114,112 bytes) and as the bound of the subsequent copy loop. The existing check "compsize > WBUFSIZE" is applied only to the size of each following block, so the first block escapes it; the same unvalidated value is also used to index wbuf1[compsize], an out-of-bounds read at an attacker-chosen offset. The copy loop additionally copies the requested length instead of the number of bytes actually read, and terminates on equality rather than on an upper bound. Because the project is built without range checking and no archive password, integrity tag or non-default configuration is required, the overflow overwrites adjacent global data; code execution was demonstrated by two independent researchers against the official Linux x86-64 and Windows x64 builds, and the denial-of-service and memory-corruption primitive is cross-platform (Windows, macOS, Linux, BSD).
Published: 2026-10-01
Score: 8.4 High
EPSS: < 1% Very Low
KEV: No
Impact: Arbitrary code execution via crafted .pea archive
Action: Immediate Patch
AI Analysis

Impact

PeaZip’s PEA extraction routine performs an out‑of‑bounds write as it decompresses the first PCOMPRESS1 block. The 32‑bit compressed‑block‑size field is read directly and used to fill a fixed‑size server buffer without validation, allowing an attacker to overflow the buffer and overwrite adjacent data. The flaw also permits an out‑of‑bounds read and a bounds‑check failure, and the copy loop copies an unchecked length rather than the actual number of bytes read. Researchers have demonstrated successful code execution on official Linux x86‑64 and Windows x64 builds, showing that the vulnerability can be exploited on all major operating systems without additional configuration. Affected systems are all installations of PeaZip 11.2.0 and earlier, spanning Windows, macOS, Linux, and BSD. Any user who opens or extracts a malicious .pea archive with these versions can trigger the overflow, which results in arbitrary code execution running under the current user’s privileges. The CVSS score of 8.4 indicates a high‑severity flaw, but the EPSS score is <1%, suggesting a low probability of exploitation in the wild. The vulnerability is not listed in the CISA KEV catalog. The likely attack vector is local, relying on social engineering whereby a user is convinced to open a malicious archive. An attacker who succeeds can execute code with the same privileges as the running user and potentially compromise the entire system. The exploitation does not require any special configuration or elevated privileges.

Affected Systems

All versions of PeaZip 11.2.0 and earlier across Windows, macOS, Linux, and BSD are affected. The flaw exists in the original PeaZip binary and applies to all builds whether compiled for x86‑64, x86, or other architectures. The vulnerability is triggered whenever a malicious .pea file is opened or extracted with the affected PeaZip versions.

Risk and Exploitability

The high CVSS score indicates that this issue could have severe consequences if exploited. However, the very low EPSS suggests that exploit attempts are unlikely to appear in the near future. The exploit does not depend on special credentials and can be performed via a simple double‑click or right‑click “Extract” action on a crafted archive, making it a realistic threat for users who inadvertently accept malicious files. Because the overflow overwrites global data structures, the impact is a full process compromise that can be leveraged for more persistent malicious activity.

Generated by OpenCVE AI on October 17, 2026 at 09:46 UTC.

Remediation

Vendor Solution

Upgrade to PeaZip 11.3.0 or higher, which validates the size of the first compressed block (commit 90ddbae), copies the number of bytes actually read, and stops the block-reading loop when the address exceeds the expected value.


OpenCVE Recommended Actions

  • Upgrade PeaZip to version 11.3.0 or later; the new release validates the first block size and stops the block-reading loop when the read address exceeds the expected value.
  • Prevent the opening or extraction of untrusted .pea files until PeaZip is upgraded, for example by disabling the .pea file handler in the file manager or by moving such archives to a quarantine folder.
  • If you cannot upgrade immediately, use an alternative archive extraction tool that does not use the PeaZip PEA component, or ensure files are scanned for malicious content before extraction.

Generated by OpenCVE AI on October 17, 2026 at 09:46 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Wed, 14 Oct 2026 17:00:00 +0000

Type Values Removed Values Added
Weaknesses CWE-125
CWE-1284
CPEs cpe:2.3:a:peazip:peazip:*:*:*:*:*:*:*:*

Fri, 02 Oct 2026 00:00:00 +0000

Type Values Removed Values Added
First Time appeared Peazip
Peazip peazip
Vendors & Products Peazip
Peazip peazip

Thu, 01 Oct 2026 21:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

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


Thu, 01 Oct 2026 20:30:00 +0000

Type Values Removed Values Added
Description Out-of-bounds Write (CWE-787) in the PEA archive extraction routine (pea.pas, unpea_procedure) of the first-party pea component in PeaZip 11.2.0 and earlier allows an attacker who convinces a victim to open or extract a crafted .pea archive to execute arbitrary code as the user running PeaZip. While decompressing a PCOMPRESS1 stream, the 32-bit compressed-block-size field of the first block (compsize) is read directly from the archive and used without validation as the length of a blockread into the fixed-size global buffers wbuf1/wbuf2 (1,114,112 bytes) and as the bound of the subsequent copy loop. The existing check "compsize > WBUFSIZE" is applied only to the size of each following block, so the first block escapes it; the same unvalidated value is also used to index wbuf1[compsize], an out-of-bounds read at an attacker-chosen offset. The copy loop additionally copies the requested length instead of the number of bytes actually read, and terminates on equality rather than on an upper bound. Because the project is built without range checking and no archive password, integrity tag or non-default configuration is required, the overflow overwrites adjacent global data; code execution was demonstrated by two independent researchers against the official Linux x86-64 and Windows x64 builds, and the denial-of-service and memory-corruption primitive is cross-platform (Windows, macOS, Linux, BSD).
Title Out-of-bounds write in PeaZip PEA extractor allows code execution via a crafted .pea archive
Weaknesses CWE-787
References
Metrics cvssV4_0

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


cve-icon MITRE

Status: PUBLISHED

Assigner: Secur0

Published:

Updated: 2026-10-14T16:50:59.674Z

Reserved: 2026-09-29T11:56:57.709Z

Link: CVE-2026-102514

cve-icon Vulnrichment

Updated: 2026-10-01T20:24:14.360Z

cve-icon NVD

Status : Awaiting Analysis

Published: 2026-10-01T21:17:18.307

Modified: 2026-10-14T17:18:10.523

Link: CVE-2026-102514

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-10-17T10:00:08Z

Weaknesses
  • CWE-125

    Out-of-bounds Read

  • CWE-1284

    Improper Validation of Specified Quantity in Input

  • CWE-787

    Out-of-bounds Write