CVE-2026-82331: 
Linux Debian vulnerability analysis and mitigation

Overview

CVE-2026-82331 is an improper link resolution (symlink following) vulnerability in the tar source plugin of Apache BuildStream. When running on Python < 3.12, malicious source tarballs can write arbitrary files on the host system with the privileges of the user running BuildStream, via symlinks embedded in the tarball during source fetching. All Apache BuildStream versions up to and including 2.8.0 are affected; version 2.8.1 resolves the issue. The vulnerability was disclosed on September 22, 2026, with a CVSS category estimate of High (Apache Advisory, GitHub Advisory).

Technical details

The vulnerability is classified as CWE-59 (Improper Link Resolution Before File Access / 'Link Following'). The tar source plugin in Apache BuildStream does not adequately validate or restrict symlinks contained within source tarballs before extracting them. On Python < 3.12, the Python tarfile module lacks the filter functionality introduced in Python 3.12 that blocks symlink escape attacks; BuildStream >= 2.3.0 running on Python >= 3.12 already leverages this filter and is therefore not susceptible. An attacker who can supply a malicious tarball as a BuildStream source element can craft symlinks within the archive that, when extracted, resolve to paths outside the intended extraction directory, enabling arbitrary file writes on the host (Apache Advisory, GitHub Advisory).

Impact

Successful exploitation allows an attacker to write arbitrary files on the host system with the privileges of the user running BuildStream, which could lead to overwriting sensitive configuration files, injecting malicious scripts, or achieving persistent code execution. The practical impact is constrained by the requirement that the attacker control or compromise a source tarball referenced by a BuildStream project element; however, if a supply chain compromise or MITM attack is feasible, the consequences could extend to full host compromise within the privilege context of the BuildStream user. Integrity and availability of the host system are the primary concerns, with potential confidentiality impact if written files enable further privilege escalation (Apache Advisory, GitHub Advisory).

Exploitability

No public proof-of-concept exploit code or evidence of in-the-wild exploitation has been reported as of the disclosure date. The EPSS score is 0.0, and the vulnerability is not listed in the CISA Known Exploited Vulnerabilities catalog. Exploitation requires the attacker to supply or tamper with a source tarball used by a BuildStream project, which is partially mitigated by SHA256 hash pinning when sources are tracked, reducing the risk of MITM-based exploitation for already-tracked projects (Apache Advisory, GitHub Advisory).

Exploitation steps

  1. Prepare a malicious tarball: Craft a tar archive containing a symlink that points outside the intended extraction directory (e.g., a symlink named config pointing to /etc/cron.d/backdoor), along with a file to be written at the symlink's target path.
  2. Host or inject the malicious tarball: Either host the tarball at a URL that a BuildStream project element references as a tar source, or perform a MITM attack against an untracked (non-SHA256-pinned) source URL to substitute the legitimate tarball with the malicious one.
  3. Trigger source fetching: Cause a BuildStream user running Python < 3.12 and BuildStream <= 2.8.0 to fetch the source, for example by initiating a bst fetch or bst build command against the affected element.
  4. Symlink escape during extraction: During tarball extraction, the tar source plugin follows the embedded symlink without restriction, causing the subsequent file write to land at the attacker-controlled path on the host filesystem.
  5. Achieve objective: The written file (e.g., a cron job, SSH authorized key, or script) executes with the privileges of the BuildStream user, enabling persistence or further lateral movement (Apache Advisory, GitHub Advisory).

Indicators of compromise

  • File System: Unexpected files created outside BuildStream's working/cache directories (e.g., in /etc/, /home/, or other sensitive paths) with timestamps coinciding with a bst fetch or bst build operation; symlinks within extracted source directories pointing to paths outside the extraction root.
  • Logs: BuildStream operation logs showing tarball extraction activity immediately preceding unexpected file modifications on the host; audit logs (e.g., auditd) recording file creation events in sensitive directories by the BuildStream process.
  • Process: The BuildStream Python process (bst) spawning unexpected child processes or writing to paths outside its designated workspace directories during source fetch operations.

Mitigation and workarounds

Users should upgrade Apache BuildStream to version 2.8.1, which fixes this vulnerability. As interim mitigations: upgrade the host Python runtime to Python >= 3.12 (BuildStream >= 2.3.0 on Python >= 3.12 already uses the tarfile filter that blocks symlink escapes); ensure all BuildStream projects use only trusted, verified source tarballs; and use tracked sources with SHA256 hash pinning to prevent MITM substitution of tarballs. Running BuildStream under a least-privilege user account limits the impact of any successful exploitation (Apache Advisory, GitHub Advisory).

Additional resources

Linux Distribution fix status

Fix availability across major Linux distributions and their releases.

Debian

Fixed

bookworm

buildstream

Affected

sid

buildstream: 2.8.1-1

Fixed

trixie

buildstream

Affected

Ubuntu

Unknown

devel

buildstream

Unknown

focal (esm-apps)

buildstream

Unknown

jammy

buildstream

Unknown

jammy (esm-apps)

buildstream

Unknown

noble

buildstream

Unknown

noble (esm-apps)

buildstream

Unknown

Source: This report was generated using AI

Related Linux Debian vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

CVE-2026-91018HIGH8.7
  • Linux Debian logoLinux Debian
  • lwip
NoNoSep 22, 2026
CVE-2026-91777HIGH7.5
  • Linux Debian logoLinux Debian
  • jackson-databind
NoNoSep 23, 2026
CVE-2026-91776HIGH7.5
  • Linux Debian logoLinux Debian
  • jackson-databind
NoNoSep 23, 2026
CVE-2026-89425HIGH7.5
  • Linux Debian logoLinux Debian
  • pki-ca
NoNoSep 23, 2026
CVE-2026-82331NONEN/A
  • Linux Debian logoLinux Debian
  • buildstream
NoNoSep 23, 2026

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management