Platform
python
Component
tarfile
Opgelost in
3.10.18
3.11.13
3.12.11
3.13.4
3.14.0b3
CVE-2025-4330 is een kwetsbaarheid in de Python tarfile module die het mogelijk maakt om de extractiefilter te omzeilen. Hierdoor kunnen aanvallers symlinks gebruiken om bestanden buiten de beoogde extractiedirectory te plaatsen en metadata van bestanden te wijzigen. Deze kwetsbaarheid treft Python versies 3.10.0 tot en met 3.14.0b3. Een upgrade naar Python 3.14.0b3 of het zorgvuldig gebruik van de filter parameter is vereist om dit probleem te verhelpen.
Deze kwetsbaarheid kan leiden tot ernstige beveiligingsproblemen. Een aanvaller kan, door een kwaadwillig tar-archief te creëren en te extraheren, bestanden op het systeem plaatsen waar ze niet horen, waardoor gevoelige data in gevaar komt. Bovendien kan de modificatie van bestandsmetadata leiden tot onverwacht gedrag van applicaties en systemen. De impact is vergelijkbaar met scenario's waarbij een aanvaller controle krijgt over de bestandsstructuur van een systeem via een onbetrouwbare bron. Dit kan leiden tot dataverlies, compromittering van de integriteit van het systeem en mogelijk zelfs overname van het systeem.
Deze kwetsbaarheid is openbaar bekend gemaakt en er zijn geen bekende actieve campagnes gerapporteerd. Er zijn momenteel geen publieke proof-of-concept exploits beschikbaar, maar de kwetsbaarheid is significant genoeg om aandacht te vragen. De kwetsbaarheid is gepubliceerd op 2025-06-03. De ernst wordt momenteel geëvalueerd.
Systems that automatically process untrusted tar archives, such as build servers, data ingestion pipelines, or web applications that allow users to upload archives, are particularly at risk. Environments using older Python versions (3.10.0 - 3.14.0b3) are also vulnerable. Shared hosting environments where multiple users can upload files are also at increased risk.
• python / server:
find / -name '*.tar.gz' -o -name '*.tar.bz2' -o -name '*.tar'• python / server:
journalctl -u python3 | grep "TarFile.extractall" | grep "filter="• python / server:
ps aux | grep "TarFile.extractall" | grep "filter="disclosure
Exploit Status
EPSS
0.36% (58% percentiel)
CISA SSVC
CVSS-vector
De primaire mitigatie is het upgraden naar Python 3.14.0b3, waar de standaardwaarde van de filter parameter is gewijzigd om deze kwetsbaarheid te verhelpen. Indien een upgrade niet direct mogelijk is, vermijd dan het gebruik van de filter parameter met de waarden 'data' of 'tar' bij het extraheren van onbetrouwbare tar-archieven. Overweeg het gebruik van een whitelist-aanpak voor de extractiefilter, waarbij alleen bekende en veilige paden worden toegestaan. Controleer de tar-archieven op verdachte symlinks voordat ze worden geëxtraheerd. Na de upgrade, verifieer de correcte werking van de tarfile module door een testextractie uit te voeren met een bekende, veilige tar-archief.
Actualice la biblioteca CPython a la versión 3.10.18 o superior, 3.11.13 o superior, 3.12.11 o superior, 3.13.4 o superior, o 3.14.0b3 o superior. Evite usar el parámetro `filter=` con valores 'data' o 'tar' al extraer archivos tar no confiables con `TarFile.extractall()` o `TarFile.extract()`.
Kwetsbaarheidsanalyses en kritieke waarschuwingen direct in uw inbox.
CVE-2025-4330 is a directory traversal vulnerability in Python's tarfile module affecting versions 3.10.0–3.14.0b3. It allows attackers to write files outside the intended extraction directory when processing untrusted tar archives.
You are affected if you are using Python versions 3.10.0 through 3.14.0b3 and processing untrusted tar archives using TarFile.extractall() or TarFile.extract() with the filter parameter set to 'data' or 'tar'.
Upgrade to Python 3.14.0b3 or later. Alternatively, disable the filter parameter or implement strict input validation when extracting untrusted archives.
As of the current date, there are no known public exploits or active campaigns targeting CVE-2025-4330.
Refer to the official Python documentation and security advisories for detailed information: https://docs.python.org/3/library/tarfile.html#tarfile-extraction-filter
Upload je dependency-bestand en kom direct te weten of deze en andere CVEs jou raken.
Upload je requirements.txt-bestand en we vertellen je direct of je getroffen bent.