# CVE-2026-29778: pyLoad path traversal in edit_package

Source: https://junglewise.ai/threats/cve-2026-29778-pyload-path-traversal-in-edit-package  
Publisher: Junglewise Threat Intelligence, https://junglewise.ai/threats  
Published: 2026-03-05. Updated: 2026-06-08  
License: CC BY 4.0 with a link back

CVE-2026-29778 · Severity: high · CVSS 7.1 · Published 2026-03-05

pyLoad, an open-source download manager, is vulnerable to a security flaw that allows authenticated users to write files to unauthorized locations on the server. By bypassing folder name restrictions, an attacker could potentially overwrite sensitive system files or disrupt operations. This could lead to a loss of system integrity or service availability.

Technologies: [pyLoad Next Generation](https://junglewise.ai/threats/technologies/pyload-next-generation), [pyload-ng (PyPI)](https://junglewise.ai/threats/technologies/pyload-ng). Vendors: [pyLoad](https://junglewise.ai/threats/vendors/pyload), [PyPI](https://junglewise.ai/threats/vendors/pypi).

## Quick answers

**Is CVE-2026-29778 exploited in the wild?** No. Junglewise Threat Intelligence has no report of CVE-2026-29778 being exploited in the wild.

**How severe is CVE-2026-29778?** High severity, with a CVSS score of 7.1, published 5 March 2026.

**Which products and versions are affected?** pyLoad Next Generation >= 0.5.0b3.dev13, <= 0.5.0b3.dev96; pyload-ng (PyPI) >= 0.5.0b3.dev13, <= 0.5.0b3.dev96, ECOSYSTEM:introduced=0.5.0b3.dev13,fixed=0.5.0b3.dev97.

**Is there a fix for CVE-2026-29778?** Yes. pyload-ng (PyPI): upgrade to 0.5.0b3.dev97 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.

**How is CVE-2026-29778 attacked?** It is attacked over the network, in a network appliance.

**Am I affected by CVE-2026-29778?** Check whether you run pyLoad Next Generation or pyload-ng (PyPI) at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

## How to fix

- pyload-ng (PyPI): upgrade to 0.5.0b3.dev97 or later

  ```sh
  pip install "pyload-ng>=0.5.0b3.dev97"
  ```


## Technical details

A path traversal vulnerability exists in the edit_package() function of pyLoad. The root cause is an insufficient sanitization mechanism that uses a single-pass string replacement to remove '../' sequences from the 'pack_folder' parameter. An authenticated attacker with MODIFY permissions can bypass this by using nested sequences like '..././', which resolve to traversal patterns after the single-pass filter. This allows the attacker to escape the intended storage directory and write files to arbitrary locations on the filesystem. The issue is fixed in version 0.5.0b3.dev97.

## Affected products

- pyLoad pyload-ng >= 0.5.0b3.dev13, <= 0.5.0b3.dev96

## Identifiers

- CVE-2026-29778
- GHSA-6px9-j4qr-xfjw
- PYSEC-2026-121

## Timeline

- 2026-03-04: disclosed
- 2026-03-05: advisory: GHSA-6px9-j4qr-xfjw published

## References

- [https://api.github.com/users/BaranTeyin1](https://api.github.com/users/BaranTeyin1)
- [https://github.com/BaranTeyin1](https://github.com/BaranTeyin1)
- [https://api.github.com/users/BaranTeyin1/gists%7B/gist_id%7D](https://api.github.com/users/BaranTeyin1/gists%7B/gist_id%7D)
- [https://api.github.com/users/BaranTeyin1/repos](https://api.github.com/users/BaranTeyin1/repos)
- [https://avatars.githubusercontent.com/u/193125235?v=4](https://avatars.githubusercontent.com/u/193125235?v=4)
- [https://api.github.com/users/BaranTeyin1/events%7B/privacy%7D](https://api.github.com/users/BaranTeyin1/events%7B/privacy%7D)

## Related threats

- [pyLoad unauthenticated template access and information disclosure](https://junglewise.ai/threats/cve-2026-75597-pyload-unauthenticated-access-to-web-path-filename-bypasses)
- [pyLoad API denial of service in multipart file upload handling](https://junglewise.ai/threats/cve-2026-48484-pyload-lack-of-input-size-validation-leads-to-denial-of-service)
- [pyload-ng authentication bypass in getUserData/get_userdata](https://junglewise.ai/threats/pyload-ng-getuserdata-get-userdata-exposed-at-perms-any-allow-any-cd197c9d)
- [pyLoad rate-limit bypass and audit-log spoofing via X-Forwarded-For header](https://junglewise.ai/threats/pyload-rate-limit-bypass-and-audit-log-spoofing-via-trusted-client-0df0fd12)
- [pyLoad session invalidation bypass in privilege revocation and password change](https://junglewise.ai/threats/pyload-privilege-revocation-and-password-change-through-the-rest-api-do-8e7301ba)
