Skip to main content
← Vulnerabilities

pyLoad: Tar extraction creates device nodes and FIFOs (member types not filtered; tarfile extractall without filter=)

pyLoad versions up to 0.5.0b3.dev101 (pyload-ng) are exposed, and the device-node impact applies when pyLoad runs as root, such as in the official Docker deployment. The fix is in 0.5.0b3.dev102.

Written by anthropic/claude-haiku-5.5 from the sources below. Verify against them.

9.4CriticalCNA
Exploited
No known exploitation
Fix
Fixed in 0.5.0b3.dev102
Who is exposed
Specific setups only

Do first: Check whether your setup matches what the bug needs. pyLoad runs as root, which permits device node creation (for example the official Docker deployment), for the device-node impact

Published
Last modified
27/100 · provisional
Specific setups only
None on Exploit-DB, Metasploit or GitHub
On X
View the cve.now post

Summary

pyLoad, a Python download manager, fails to reject special device and FIFO entries when extracting tar archives, so a remote attacker with low-privilege login (an account with ADD and STATUS permissions) can submit a crafted archive that creates device nodes or named pipes on the host. When pyLoad runs as root, as in the official Docker deployment, this can expose raw devices and compromise the host, while non-root installs can still create FIFOs that cause hangs or IPC confusion.

Read the original description

pyLoad is a free and open-source download manager written in Python. Prior to 0.5.0b3.dev102, UnTar._safe_extractall in src/pyload/plugins/extractors/UnTar.py validates archive member paths and link targets but does not call TarInfo.isdev to reject special tar member types before calling tarfile.extractall. On supported Python 3.9 through 3.13 runtimes, tarfile defaults to the fully_trusted extraction filter, so a user with ADD and STATUS permissions can cause extraction of a crafted archive containing character devices, block devices, or FIFOs. Python 3.14 defaults to a safe extraction filter. When pyLoad runs with operating-system privileges that permit device creation, including the official root-based Docker deployment, the archive can expose raw devices and compromise the host. Non-root deployments can still create FIFOs that cause hangs or IPC confusion. This issue is fixed in version 0.5.0b3.dev102.

cve.now Index

27Pcve.now Index 27 of 100 · methodology v3 · provisional
  • Exploitation?/40Unknown. No CISA SSVC exploitation rating yet
  • Exposure8/25Specific setups only, reachable over the network
  • Reach10/20Affects PyPI packages
  • Severity9.4/10CVSS 9.4
  • No patch0/5No signal

What would change the score

  • Would score about 77 if added to CISA KEV
  • Would score about 72 if CISA's SSVC rates exploitation active
  • Would score about 34 if CISA's SSVC rates it automatable

Impact

  • Widely used

    pyload-ng has 1.2k weekly downloads.Source: pypistats.org

    1 packages depend on pyload-ng.Source: deps.dev

What to do

  • Check whether your setup matches what the bug needs.

    pyLoad runs as root, which permits device node creation (for example the official Docker deployment), for the device-node impact
  • Upgrade to a fixed version: 0.5.0b3.dev102.

Timeline

  1. CVE published
  2. First seen by cve.now
  3. Posted on X by cve.now

Affected versions

  • pyload pyload

    fixed in 0.5.0b3.dev102

  • through 0.5.0b3.dev101

    No fix released.

Evidence 2

  1. Advisory
  2. Repository

Corrections

None so far.

Something wrong on this page? Report an error. Every fix is listed here.

Questions about CVE-2026-123815

Is CVE-2026-123815 being exploited?

It is not in CISA's Known Exploited Vulnerabilities catalog, and CISA's SSVC assessment does not mark exploitation as active. That does not mean it has not been attacked: vendors and researchers can report attacks before CISA lists them. No public exploit code is tracked.Source: cve.now feed data

What does this mean?

pyLoad's tar extraction does not filter member types, so a crafted tar archive can create character or block device nodes and FIFOs. With root, device nodes can allow raw disk read and write, which can lead to full host compromise, while FIFOs can cause process hangs or IPC confusion.Source: github.com

Which versions are affected by CVE-2026-123815?

pyload: before 0.5.0b3.dev102. pyload-ng (PyPI): through 0.5.0b3.dev101.Source: cve.now feed data

Am I affected, and how do I check?

The pyload-ng line is affected up to and including 0.5.0b3.dev101, and the device-node impact requires pyLoad to run as root, as in the official Docker deployment. To check, look at the installed pyLoad version (for example with pip show pyload-ng) and at which user the pyLoad process runs.Source: github.com

How do I fix CVE-2026-123815?

Upgrade pyLoad to 0.5.0b3.dev102 or later, the version listed as fixed for the pyload product.Source: github.com