Security fix for CVE-2025-47273

Resolves: RHEL-101116
This commit is contained in:
Tomáš Hrnčiar 2025-07-02 08:09:13 +02:00
parent a3593cab3f
commit db621771ae
2 changed files with 40 additions and 1 deletions

29
CVE-2025-47273.patch Normal file
View File

@ -0,0 +1,29 @@
From 19d6fa7fcb22aef8192dcbc0adb920c12cb6a648 Mon Sep 17 00:00:00 2001
From: "Jason R. Coombs" <jaraco@jaraco.com>
Date: Sat, 19 Apr 2025 13:03:47 -0400
Subject: [PATCH] Add a check to ensure the name resolves relative to the
tmpdir.
Closes #4946
---
setuptools/package_index.py | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/setuptools/package_index.py b/setuptools/package_index.py
index f52592a..ebafe9f 100644
--- a/setuptools/package_index.py
+++ b/setuptools/package_index.py
@@ -828,6 +828,10 @@ class PackageIndex(Environment):
filename = os.path.join(tmpdir, name)
+ # ensure path resolves within the tmpdir
+ if not filename.startswith(str(tmpdir)):
+ raise ValueError(f"Invalid filename {filename}")
+
# Download the file
#
if scheme == 'svn' or scheme.startswith('svn+'):
--
2.49.0

View File

@ -21,7 +21,7 @@
Name: python%{python3_pkgversion}-setuptools
# When updating, update the bundled libraries versions bellow!
Version: 65.5.1
Release: 4%{?dist}
Release: 5%{?dist}
Summary: Easily build and distribute Python packages
# setuptools is MIT
# appdirs is MIT
@ -51,6 +51,12 @@ Patch0: Remove-optional-or-unpackaged-test-deps.patch
# Patch simplified because upstream doesn't support SVN anymore.
Patch1: CVE-2024-6345.patch
# Security fix for CVE-2025-47273
# Path traversal in PackageIndex.download leads to Arbitrary File Write
# Upstream solution: https://github.com/pypa/setuptools/pull/4951/
Patch2: CVE-2025-47273.patch
BuildArch: noarch
BuildRequires: python%{python3_pkgversion}-devel
@ -241,6 +247,10 @@ PYTHONPATH=$(pwd) %pytest \
%changelog
* Wed Jul 02 2025 Tomáš Hrnčiar <thrnciar@redhat.com> - 65.5.1-5
- Security fix for CVE-2025-47273
Resolves: RHEL-101116
* Fri Mar 07 2025 Tomáš Hrnčiar <thrnciar@redhat.com> - 65.5.1-4
- Make sure the INSTALLER is not pip and remove RECORD
Resolves: RHEL-82611