SCW-Symbole
Held-Hintergrund ohne Trennlinie
Blog

Den Bug beim Durchlaufen von Pfaden im Python-Modul „tarfile“ verstehen

Laura Verheyde
Veröffentlicht Okt 03, 2022
Zuletzt aktualisiert am 06. März 2026

Kürzlich gab ein Team von Sicherheitsforschern bekannt, dass es einen fünfzehn Jahre alten Fehler in der Python-Funktion zum Extrahieren von tar-Dateien entdeckt hat. Die Schwachstelle wurde erstmals 2007 bekannt und unter der Nummer CVE-2007-4559 erfasst. Ein Hinweis wurde der offiziellen Python-Dokumentation hinzugefügt, aber der Fehler selbst wurde nicht behoben.

Diese Schwachstelle könnte Auswirkungen auf Tausende von Softwareprojekten haben, aber viele Menschen sind sich der Situation nicht bewusst und wissen nicht, wie sie damit umgehen sollen. Aus diesem Grund haben wir hier bei Secure Code Warriorbieten wir Ihnen die Möglichkeit, die Ausnutzung dieser Schwachstelle selbst zu simulieren, um die Auswirkungen aus erster Hand zu erleben und praktische Erfahrungen mit den Mechanismen dieses hartnäckigen Fehlers zu sammeln, damit Sie Ihre Anwendung besser schützen können!

Probieren Sie jetzt die Mission- Simulation aus.

Die Schwachstelle: Überschneidung von Pfaden beim Extrahieren der tar-Datei

Ein Pfad- oder Verzeichnisüberlauf tritt auf, wenn ein nicht bereinigter Benutzereintrag zum Erstellen eines Dateipfads verwendet wird, wodurch ein Angreifer auf Dateien zugreifen, diese ersetzen und sogar beliebigen Code ausführen kann.

Die Schwachstelle besteht im Python-Modul „tar ”. Eine Tar-Datei (Bandarchiv) ist eine einzelne Datei, die als Archiv bezeichnet wird. Sie fasst mehrere Dateien mit ihren Metadaten zusammen und ist in der Regel an der Erweiterung .tar.gz oder .tgz zu erkennen. Jedes Element des Archivs kann durch ein Stern-Objekt dargestellt werden, das Metadaten wie Dateiname, Änderungszeitpunkt, Eigentumsverhältnisse usw. enthält.

Das Risiko besteht darin, dass die Archive erneut abgerufen werden können.

Bei der Extraktion benötigt jedes Mitglied einen Pfad, in den geschrieben werden kann. Dieser Speicherort wird durch Anhängen des Basispfads an den Dateinamen erstellt:

Auszug aus Python Tarfile.py


Sobald dieser Pfad erstellt wurde, wird er an die tarfile.extract oder tarfile.extractall Funktionen übermittelt, um die Extraktion durchzuführen:

Auszug aus Python Tarfile.py

Das Problem hierbei ist, dass der Dateiname nicht bereinigt wird. Ein Angreifer könnte die Dateien umbenennen, um Pfadüberbrückungszeichen wie den Schrägstrich (../ ) einzufügen, wodurch die Datei aus dem Verzeichnis entfernt würde, in dem sie sich eigentlich befinden sollte, und beliebige Dateien ersetzt würden. Dies könnte möglicherweise zur Ausführung von Remote-Code führen, was für eine Ausnutzung reif ist.

Die Schwachstelle tritt auch in anderen Szenarien auf, wenn man weiß, wie man sie identifiziert. Neben der Verwaltung von tar-Dateien durch Python besteht die Schwachstelle auch beim Extrahieren von zip-Dateien. Vielleicht kennen Sie sie unter einem anderen Namen, beispielsweise als Zip-Slip-Schwachstelle, die auch in anderen Sprachen als Python aufgetreten ist!

VERWEIS AUF DIE MISSION 

Wie können Sie die Risiken mindern?

Obwohl die Schwachstelle seit Jahren bekannt ist, sind die Verantwortlichen von Python der Ansicht, dass die Extraktionsfunktion so funktioniert , wie sie soll. In diesem Fall könnten einige sagen: „Das ist eine Funktion, kein Fehler.“ Leider können Entwickler es nicht immer vermeiden, tar- oder zip-Dateien aus einer unbekannten Quelle zu extrahieren. Es liegt an ihnen, unzuverlässige Eingaben zu bereinigen, um Schwachstellen im Zusammenhang mit dem Durchlaufen von Pfaden im Rahmen sicherer Entwicklungspraktiken zu vermeiden.

Möchten Sie mehr darüber erfahren, wie Sie mit Python sicheren Code schreiben und Risiken minimieren können?

Probieren Sie unsere kostenlose Python-Challenge aus.

Wenn Sie weitere kostenlose Codierungsrichtlinien erhalten möchten, besuchen Sie Secure Code Coach, um sich über sichere Codierungspraktiken auf dem Laufenden zu halten.

Ressource anzeigen
Ressource anzeigen

Kürzlich gab ein Team von Sicherheitsforschern die Entdeckung eines fünfzehn Jahre alten Fehlers in der Python-Funktion zum Extrahieren von tar-Dateien bekannt. Die Schwachstelle wurde erstmals 2007 entdeckt und unter der Bezeichnung CVE-2007-4559 identifiziert. Ein Hinweis wurde der offiziellen Python-Dokumentation hinzugefügt, aber der Fehler selbst wurde nicht behoben.

Möchten Sie mehr erfahren?

mehr erfahren

Secure Code Warrior Ihr Unternehmen dabei, den Code während des gesamten Softwareentwicklungszyklus zu sichern und eine Kultur zu schaffen, in der Cybersicherheit oberste Priorität hat. Ganz gleich, ob Sie für die Anwendungssicherheit verantwortlich sind, Entwickler, IT-Sicherheitsbeauftragter oder in einer anderen Funktion im Bereich Sicherheit tätig sind – wir können Ihrem Unternehmen dabei helfen, die mit unsicherem Code verbundenen Risiken zu reduzieren.

Demo buchen
Teilen auf:
LinkedIn-MarkenSozialx Logo
Autor
Laura Verheyde
Veröffentlicht Okt 03, 2022

Laura Verheyde est une développeuse de logiciels chez Secure Code Warrior qui se concentre sur la recherche de vulnérabilités et la création de contenu pour les missions et les laboratoires de codage.

Teilen auf:
LinkedIn-MarkenSozialx Logo

Kürzlich gab ein Team von Sicherheitsforschern bekannt, dass es einen fünfzehn Jahre alten Fehler in der Python-Funktion zum Extrahieren von tar-Dateien entdeckt hat. Die Schwachstelle wurde erstmals 2007 bekannt und unter der Nummer CVE-2007-4559 erfasst. Ein Hinweis wurde der offiziellen Python-Dokumentation hinzugefügt, aber der Fehler selbst wurde nicht behoben.

Diese Schwachstelle könnte Auswirkungen auf Tausende von Softwareprojekten haben, aber viele Menschen sind sich der Situation nicht bewusst und wissen nicht, wie sie damit umgehen sollen. Aus diesem Grund haben wir hier bei Secure Code Warriorbieten wir Ihnen die Möglichkeit, die Ausnutzung dieser Schwachstelle selbst zu simulieren, um die Auswirkungen aus erster Hand zu erleben und praktische Erfahrungen mit den Mechanismen dieses hartnäckigen Fehlers zu sammeln, damit Sie Ihre Anwendung besser schützen können!

Probieren Sie jetzt die Mission- Simulation aus.

Die Schwachstelle: Überschneidung von Pfaden beim Extrahieren der tar-Datei

Ein Pfad- oder Verzeichnisüberlauf tritt auf, wenn ein nicht bereinigter Benutzereintrag zum Erstellen eines Dateipfads verwendet wird, wodurch ein Angreifer auf Dateien zugreifen, diese ersetzen und sogar beliebigen Code ausführen kann.

Die Schwachstelle besteht im Python-Modul „tar ”. Eine Tar-Datei (Bandarchiv) ist eine einzelne Datei, die als Archiv bezeichnet wird. Sie fasst mehrere Dateien mit ihren Metadaten zusammen und ist in der Regel an der Erweiterung .tar.gz oder .tgz zu erkennen. Jedes Element des Archivs kann durch ein Stern-Objekt dargestellt werden, das Metadaten wie Dateiname, Änderungszeitpunkt, Eigentumsverhältnisse usw. enthält.

Das Risiko besteht darin, dass die Archive erneut abgerufen werden können.

Bei der Extraktion benötigt jedes Mitglied einen Pfad, in den geschrieben werden kann. Dieser Speicherort wird durch Anhängen des Basispfads an den Dateinamen erstellt:

Auszug aus Python Tarfile.py


Sobald dieser Pfad erstellt wurde, wird er an die tarfile.extract oder tarfile.extractall Funktionen übermittelt, um die Extraktion durchzuführen:

Auszug aus Python Tarfile.py

Das Problem hierbei ist, dass der Dateiname nicht bereinigt wird. Ein Angreifer könnte die Dateien umbenennen, um Pfadüberbrückungszeichen wie den Schrägstrich (../ ) einzufügen, wodurch die Datei aus dem Verzeichnis entfernt würde, in dem sie sich eigentlich befinden sollte, und beliebige Dateien ersetzt würden. Dies könnte möglicherweise zur Ausführung von Remote-Code führen, was für eine Ausnutzung reif ist.

Die Schwachstelle tritt auch in anderen Szenarien auf, wenn man weiß, wie man sie identifiziert. Neben der Verwaltung von tar-Dateien durch Python besteht die Schwachstelle auch beim Extrahieren von zip-Dateien. Vielleicht kennen Sie sie unter einem anderen Namen, beispielsweise als Zip-Slip-Schwachstelle, die auch in anderen Sprachen als Python aufgetreten ist!

VERWEIS AUF DIE MISSION 

Wie können Sie die Risiken mindern?

Obwohl die Schwachstelle seit Jahren bekannt ist, sind die Verantwortlichen von Python der Ansicht, dass die Extraktionsfunktion so funktioniert , wie sie soll. In diesem Fall könnten einige sagen: „Das ist eine Funktion, kein Fehler.“ Leider können Entwickler es nicht immer vermeiden, tar- oder zip-Dateien aus einer unbekannten Quelle zu extrahieren. Es liegt an ihnen, unzuverlässige Eingaben zu bereinigen, um Schwachstellen im Zusammenhang mit dem Durchlaufen von Pfaden im Rahmen sicherer Entwicklungspraktiken zu vermeiden.

Möchten Sie mehr darüber erfahren, wie Sie mit Python sicheren Code schreiben und Risiken minimieren können?

Probieren Sie unsere kostenlose Python-Challenge aus.

Wenn Sie weitere kostenlose Codierungsrichtlinien erhalten möchten, besuchen Sie Secure Code Coach, um sich über sichere Codierungspraktiken auf dem Laufenden zu halten.

Ressource anzeigen
Ressource anzeigen

Füllen Sie das untenstehende Formular aus, um den Bericht herunterzuladen.

Wir möchten Ihre Einwilligung einholen, um Ihnen Informationen zu unseren Produkten und/oder zu Themen im Zusammenhang mit sicherer Verschlüsselung zuzusenden. Wir werden Ihre personenbezogenen Daten stets mit größter Sorgfalt behandeln und niemals zu Marketingzwecken an andere Unternehmen verkaufen.

Einreichen
scw Erfolgssymbol
scw-Fehlersymbol
Um das Formular zu senden, aktivieren Sie bitte die „Analytics“-Cookies. Sie können diese nach Abschluss des Vorgangs wieder deaktivieren.

Kürzlich gab ein Team von Sicherheitsforschern bekannt, dass es einen fünfzehn Jahre alten Fehler in der Python-Funktion zum Extrahieren von tar-Dateien entdeckt hat. Die Schwachstelle wurde erstmals 2007 bekannt und unter der Nummer CVE-2007-4559 erfasst. Ein Hinweis wurde der offiziellen Python-Dokumentation hinzugefügt, aber der Fehler selbst wurde nicht behoben.

Diese Schwachstelle könnte Auswirkungen auf Tausende von Softwareprojekten haben, aber viele Menschen sind sich der Situation nicht bewusst und wissen nicht, wie sie damit umgehen sollen. Aus diesem Grund haben wir hier bei Secure Code Warriorbieten wir Ihnen die Möglichkeit, die Ausnutzung dieser Schwachstelle selbst zu simulieren, um die Auswirkungen aus erster Hand zu erleben und praktische Erfahrungen mit den Mechanismen dieses hartnäckigen Fehlers zu sammeln, damit Sie Ihre Anwendung besser schützen können!

Probieren Sie jetzt die Mission- Simulation aus.

Die Schwachstelle: Überschneidung von Pfaden beim Extrahieren der tar-Datei

Ein Pfad- oder Verzeichnisüberlauf tritt auf, wenn ein nicht bereinigter Benutzereintrag zum Erstellen eines Dateipfads verwendet wird, wodurch ein Angreifer auf Dateien zugreifen, diese ersetzen und sogar beliebigen Code ausführen kann.

Die Schwachstelle besteht im Python-Modul „tar ”. Eine Tar-Datei (Bandarchiv) ist eine einzelne Datei, die als Archiv bezeichnet wird. Sie fasst mehrere Dateien mit ihren Metadaten zusammen und ist in der Regel an der Erweiterung .tar.gz oder .tgz zu erkennen. Jedes Element des Archivs kann durch ein Stern-Objekt dargestellt werden, das Metadaten wie Dateiname, Änderungszeitpunkt, Eigentumsverhältnisse usw. enthält.

Das Risiko besteht darin, dass die Archive erneut abgerufen werden können.

Bei der Extraktion benötigt jedes Mitglied einen Pfad, in den geschrieben werden kann. Dieser Speicherort wird durch Anhängen des Basispfads an den Dateinamen erstellt:

Auszug aus Python Tarfile.py


Sobald dieser Pfad erstellt wurde, wird er an die tarfile.extract oder tarfile.extractall Funktionen übermittelt, um die Extraktion durchzuführen:

Auszug aus Python Tarfile.py

Das Problem hierbei ist, dass der Dateiname nicht bereinigt wird. Ein Angreifer könnte die Dateien umbenennen, um Pfadüberbrückungszeichen wie den Schrägstrich (../ ) einzufügen, wodurch die Datei aus dem Verzeichnis entfernt würde, in dem sie sich eigentlich befinden sollte, und beliebige Dateien ersetzt würden. Dies könnte möglicherweise zur Ausführung von Remote-Code führen, was für eine Ausnutzung reif ist.

Die Schwachstelle tritt auch in anderen Szenarien auf, wenn man weiß, wie man sie identifiziert. Neben der Verwaltung von tar-Dateien durch Python besteht die Schwachstelle auch beim Extrahieren von zip-Dateien. Vielleicht kennen Sie sie unter einem anderen Namen, beispielsweise als Zip-Slip-Schwachstelle, die auch in anderen Sprachen als Python aufgetreten ist!

VERWEIS AUF DIE MISSION 

Wie können Sie die Risiken mindern?

Obwohl die Schwachstelle seit Jahren bekannt ist, sind die Verantwortlichen von Python der Ansicht, dass die Extraktionsfunktion so funktioniert , wie sie soll. In diesem Fall könnten einige sagen: „Das ist eine Funktion, kein Fehler.“ Leider können Entwickler es nicht immer vermeiden, tar- oder zip-Dateien aus einer unbekannten Quelle zu extrahieren. Es liegt an ihnen, unzuverlässige Eingaben zu bereinigen, um Schwachstellen im Zusammenhang mit dem Durchlaufen von Pfaden im Rahmen sicherer Entwicklungspraktiken zu vermeiden.

Möchten Sie mehr darüber erfahren, wie Sie mit Python sicheren Code schreiben und Risiken minimieren können?

Probieren Sie unsere kostenlose Python-Challenge aus.

Wenn Sie weitere kostenlose Codierungsrichtlinien erhalten möchten, besuchen Sie Secure Code Coach, um sich über sichere Codierungspraktiken auf dem Laufenden zu halten.

Webinar anzeigen
Beginnen Sie
mehr erfahren

Klicken Sie auf den untenstehenden Link und laden Sie das PDF dieser Ressource herunter.

Secure Code Warrior Ihr Unternehmen dabei, den Code während des gesamten Softwareentwicklungszyklus zu sichern und eine Kultur zu schaffen, in der Cybersicherheit oberste Priorität hat. Ganz gleich, ob Sie für die Anwendungssicherheit verantwortlich sind, Entwickler, IT-Sicherheitsbeauftragter oder in einer anderen Funktion im Bereich Sicherheit tätig sind – wir können Ihrem Unternehmen dabei helfen, die mit unsicherem Code verbundenen Risiken zu reduzieren.

Bericht anzeigenDemo buchen
PDF herunterladen
Ressource anzeigen
Teilen auf:
LinkedIn-MarkenSozialx Logo
Möchten Sie mehr erfahren?

Teilen auf:
LinkedIn-MarkenSozialx Logo
Autor
Laura Verheyde
Veröffentlicht Okt 03, 2022

Laura Verheyde est une développeuse de logiciels chez Secure Code Warrior qui se concentre sur la recherche de vulnérabilités et la création de contenu pour les missions et les laboratoires de codage.

Teilen auf:
LinkedIn-MarkenSozialx Logo

Kürzlich gab ein Team von Sicherheitsforschern bekannt, dass es einen fünfzehn Jahre alten Fehler in der Python-Funktion zum Extrahieren von tar-Dateien entdeckt hat. Die Schwachstelle wurde erstmals 2007 bekannt und unter der Nummer CVE-2007-4559 erfasst. Ein Hinweis wurde der offiziellen Python-Dokumentation hinzugefügt, aber der Fehler selbst wurde nicht behoben.

Diese Schwachstelle könnte Auswirkungen auf Tausende von Softwareprojekten haben, aber viele Menschen sind sich der Situation nicht bewusst und wissen nicht, wie sie damit umgehen sollen. Aus diesem Grund haben wir hier bei Secure Code Warriorbieten wir Ihnen die Möglichkeit, die Ausnutzung dieser Schwachstelle selbst zu simulieren, um die Auswirkungen aus erster Hand zu erleben und praktische Erfahrungen mit den Mechanismen dieses hartnäckigen Fehlers zu sammeln, damit Sie Ihre Anwendung besser schützen können!

Probieren Sie jetzt die Mission- Simulation aus.

Die Schwachstelle: Überschneidung von Pfaden beim Extrahieren der tar-Datei

Ein Pfad- oder Verzeichnisüberlauf tritt auf, wenn ein nicht bereinigter Benutzereintrag zum Erstellen eines Dateipfads verwendet wird, wodurch ein Angreifer auf Dateien zugreifen, diese ersetzen und sogar beliebigen Code ausführen kann.

Die Schwachstelle besteht im Python-Modul „tar ”. Eine Tar-Datei (Bandarchiv) ist eine einzelne Datei, die als Archiv bezeichnet wird. Sie fasst mehrere Dateien mit ihren Metadaten zusammen und ist in der Regel an der Erweiterung .tar.gz oder .tgz zu erkennen. Jedes Element des Archivs kann durch ein Stern-Objekt dargestellt werden, das Metadaten wie Dateiname, Änderungszeitpunkt, Eigentumsverhältnisse usw. enthält.

Das Risiko besteht darin, dass die Archive erneut abgerufen werden können.

Bei der Extraktion benötigt jedes Mitglied einen Pfad, in den geschrieben werden kann. Dieser Speicherort wird durch Anhängen des Basispfads an den Dateinamen erstellt:

Auszug aus Python Tarfile.py


Sobald dieser Pfad erstellt wurde, wird er an die tarfile.extract oder tarfile.extractall Funktionen übermittelt, um die Extraktion durchzuführen:

Auszug aus Python Tarfile.py

Das Problem hierbei ist, dass der Dateiname nicht bereinigt wird. Ein Angreifer könnte die Dateien umbenennen, um Pfadüberbrückungszeichen wie den Schrägstrich (../ ) einzufügen, wodurch die Datei aus dem Verzeichnis entfernt würde, in dem sie sich eigentlich befinden sollte, und beliebige Dateien ersetzt würden. Dies könnte möglicherweise zur Ausführung von Remote-Code führen, was für eine Ausnutzung reif ist.

Die Schwachstelle tritt auch in anderen Szenarien auf, wenn man weiß, wie man sie identifiziert. Neben der Verwaltung von tar-Dateien durch Python besteht die Schwachstelle auch beim Extrahieren von zip-Dateien. Vielleicht kennen Sie sie unter einem anderen Namen, beispielsweise als Zip-Slip-Schwachstelle, die auch in anderen Sprachen als Python aufgetreten ist!

VERWEIS AUF DIE MISSION 

Wie können Sie die Risiken mindern?

Obwohl die Schwachstelle seit Jahren bekannt ist, sind die Verantwortlichen von Python der Ansicht, dass die Extraktionsfunktion so funktioniert , wie sie soll. In diesem Fall könnten einige sagen: „Das ist eine Funktion, kein Fehler.“ Leider können Entwickler es nicht immer vermeiden, tar- oder zip-Dateien aus einer unbekannten Quelle zu extrahieren. Es liegt an ihnen, unzuverlässige Eingaben zu bereinigen, um Schwachstellen im Zusammenhang mit dem Durchlaufen von Pfaden im Rahmen sicherer Entwicklungspraktiken zu vermeiden.

Möchten Sie mehr darüber erfahren, wie Sie mit Python sicheren Code schreiben und Risiken minimieren können?

Probieren Sie unsere kostenlose Python-Challenge aus.

Wenn Sie weitere kostenlose Codierungsrichtlinien erhalten möchten, besuchen Sie Secure Code Coach, um sich über sichere Codierungspraktiken auf dem Laufenden zu halten.

Inhaltsverzeichnis

PDF herunterladen
Ressource anzeigen
Möchten Sie mehr erfahren?

mehr erfahren

Secure Code Warrior Ihr Unternehmen dabei, den Code während des gesamten Softwareentwicklungszyklus zu sichern und eine Kultur zu schaffen, in der Cybersicherheit oberste Priorität hat. Ganz gleich, ob Sie für die Anwendungssicherheit verantwortlich sind, Entwickler, IT-Sicherheitsbeauftragter oder in einer anderen Funktion im Bereich Sicherheit tätig sind – wir können Ihrem Unternehmen dabei helfen, die mit unsicherem Code verbundenen Risiken zu reduzieren.

Demo buchenHerunterladen
Teilen auf:
LinkedIn-MarkenSozialx Logo
Ressourcenzentrum

Ressourcen, die Ihnen den Einstieg erleichtern

Weitere Beiträge
Ressourcenzentrum

Ressourcen, die Ihnen den Einstieg erleichtern

Weitere Beiträge