Bug 2218241
Summary: | CVE-2007-4559 python-pip: Python tarfile extraction needs change to avoid a warning (mitigation) [rhel-8.9.0] | ||
---|---|---|---|
Product: | Red Hat Enterprise Linux 8 | Reporter: | Charalampos Stratakis <cstratak> |
Component: | python-pip | Assignee: | Petr Viktorin (pviktori) <pviktori> |
Status: | CLOSED ERRATA | QA Contact: | Lukáš Zachar <lzachar> |
Severity: | medium | Docs Contact: | |
Priority: | medium | ||
Version: | 8.9 | CC: | mcascell, pviktori, python-maint, rhel-cs-apps-subsystem-qe, torsava |
Target Milestone: | rc | Keywords: | Security, SecurityTracking, Triaged |
Target Release: | --- | ||
Hardware: | Unspecified | ||
OS: | Unspecified | ||
Whiteboard: | |||
Fixed In Version: | python-pip-9.0.3-23.el8 | Doc Type: | No Doc Update |
Doc Text: | Story Points: | --- | |
Clone Of: | 2207997 | Environment: | |
Last Closed: | 2023-11-14 15:51:40 UTC | Type: | Bug |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: | |||
Bug Depends On: | |||
Bug Blocks: | 263261 |
Comment 1
Charalampos Stratakis
2023-08-09 22:22:40 UTC
In order to test it: Run this script to create a malformed tarball: """ import tarfile def mkinfo(name, **kwargs): tarinfo = tarfile.TarInfo(name=name) for name, value in kwargs.items(): setattr(tarinfo, name, value) return tarinfo with tarfile.open('evil.tar.gz', 'w:gz') as tf: tf.addfile(mkinfo('./pyproject.toml')) tf.addfile(mkinfo('./tmp', type=tarfile.SYMTYPE, linkname='../../../../../../../../tmp')) tf.addfile(mkinfo('./tmp/poc')) """ Do a python3 -m pip install evil.tar.gz It will fail with: FileNotFoundError: [Errno 2] No such file or directory: '/tmp/pip-8lk56uxg-build/setup.py' Whereas on the fixed pip it should reject the operation with: "tarfile.OutsideDestinationError: 'tmp/poc' would be extracted to '/tmp/poc', which is outside the destination" Verified on the PR. Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory (Moderate: python-pip security update), and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHSA-2023:7176 |