Bug 2544606 (CVE-2026-103870) - CVE-2026-103870 pulp-rpm: Distribution tree publish creates directories from .treeinfo ids
Summary: CVE-2026-103870 pulp-rpm: Distribution tree publish creates directories from ...
Keywords:
Status: NEW
Alias: CVE-2026-103870
Product: Security Response
Classification: Other
Component: vulnerability
Version: unspecified
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Product Security
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2026-10-01 12:30 UTC by OSIDB Bzimport
Modified: 2026-10-07 05:35 UTC (History)
20 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed:
Embargoed:


Attachments (Terms of Use)

Description OSIDB Bzimport 2026-10-01 12:30:50 UTC
Publish copies the addon id and variant id from .treeinfo into addon_id and variant_id with no path check (pulp_rpm/app/kickstart/treeinfo.py). RpmPublication.populate() then calls os.mkdir(name) with that string (pulp_rpm/app/tasks/publishing.py) and writes the synced metadata and packages under that name. os.mkdir does not create missing parents, and it fails when the path already exists, so an existing file is not replaced. A ".." component or an absolute id whose parent exists leaves the worker temporary directory. The same code runs for any repository version that contains a distribution tree. No extra setting selects it. Introduced with kickstart publishing in 8a8048e2, tag 3.0.0b5, and every stable release from 3.2.0.


Note You need to log in before you can comment on or make changes to this bug.