Bug 2218243 - python-setuptools: Python tarfile extraction needs change to avoid a warning (CVE-2007-4559 mitigation)
Summary: python-setuptools: Python tarfile extraction needs change to avoid a warning ...
Keywords:
Status: CLOSED NOTABUG
Alias: None
Product: Red Hat Enterprise Linux 8
Classification: Red Hat
Component: python-setuptools
Version: 8.9
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: rc
: ---
Assignee: Python Maintainers
QA Contact: RHEL CS Apps Subsystem QE
URL:
Whiteboard:
Depends On: CVE-2007-4559
Blocks: 2217902 2218234 2217897
TreeView+ depends on / blocked
 
Reported: 2023-06-28 14:15 UTC by Charalampos Stratakis
Modified: 2023-07-11 14:37 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of: 2207715
Environment:
Last Closed: 2023-07-11 14:37:11 UTC
Type: Bug
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Issue Tracker RHELPLAN-161102 0 None None None 2023-06-28 14:16:56 UTC

Description Charalampos Stratakis 2023-06-28 14:15:53 UTC
+++ This bug was initially created as a clone of Bug #2207715 +++

Hello,
In RHEL 9.3 and 8.9, we're planning to fix the long-standing CVE-2007-4559: Python's `tarfile` module makes it too easy to extract tarballs in an unsafe way.
Unfortunately, for the CVE to be considered fixed, this needs a behavior change. (If you don't think this is the case, let's bring it up with the security team.)
Upstream, Python will emit deprecation warnings for 2 releases, but in RHEL we change the behavior now, emit warnings, and provide ways for customers to restore earlier behavior.
To avoid the warning, software shipped by Red Hat will need a change.

For more details see upstream PEP 706: https://peps.python.org/pep-0706
and the Red Hat knowledge base draft: https://access.redhat.com/articles/7004769

---

The file to change is /usr/lib/python3.*/site-packages/setuptools/archive_util.py. We probably want the 'tar' filter here, for a quick fix.

Comment 1 Petr Viktorin 2023-07-11 14:37:11 UTC
On closer inspection, the extraction code in setuptools
- avoids the CVE by avoiding symlinks and parent directory traversal
- avoids the warning by using undocumented internals
- is only used in deprecated paths (easy_install, install_egg_info) and tests

I'll close this as not affected.


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