
Verstehe den Pfaddurchquerungsfehler im Tarfile-Modul von Python
Kürzlich gab ein Team von Sicherheitsforschern bekannt, dass sie einen fünfzehn Jahre alten Fehler in der Python-Funktion zur Extraktion von tar-Dateien gefunden haben. Die Schwachstelle wurde erstmals im Jahr 2007 bekannt gegeben und als CVE-2007-4559 verfolgt. Der offiziellen Python-Dokumentation wurde ein Hinweis hinzugefügt, aber der Fehler selbst wurde nicht behoben.
Diese Sicherheitslücke könnte sich auf Tausende von Softwareprojekten auswirken, doch viele Menschen sind mit der Situation nicht vertraut und wissen nicht, wie sie damit umgehen sollen. Aus diesem Grund bieten wir hier bei Secure Code Warriordie Möglichkeit, die Ausnutzung dieser Schwachstelle selbst zu simulieren, um die Auswirkungen aus erster Hand zu erfahren und praktische Erfahrungen mit den Mechanismen dieses hartnäckigen Fehlers zu sammeln, damit Sie Ihre Anwendung besser schützen können!
Probieren Sie die simulierte Mission jetzt aus.
Die Schwachstelle: Pfadüberwindung beim Extrahieren von tar-Dateien
Pfad- oder Verzeichnisüberquerungen treten auf, wenn unüberprüfte Benutzereingaben verwendet werden, um einen Dateipfad zu konstruieren, was es einem Angreifer ermöglicht, Zugriff auf Dateien zu erhalten und diese zu überschreiben und sogar beliebigen Code auszuführen.
Die Sicherheitslücke besteht im tarfile-Modul von Python. Eine tar-Datei (Bandarchiv) ist eine einzelne Datei, ein sogenanntes Archiv. Sie packt mehrere Dateien mit ihren Metadaten zusammen und ist normalerweise an der Erweiterung .tar.gz oder .tgz zu erkennen. Jedes Mitglied des Archivs kann durch ein TarInfo-Objekt dargestellt werden, das Metadaten wie Dateiname, Änderungszeit, Eigentümer und mehr enthält.
Das Risiko besteht darin, dass die Archive wieder extrahiert werden können.
Beim Extrahieren benötigt jedes Mitglied einen Pfad, in den es geschrieben wird. Dieser Pfad wird erstellt, indem der Basispfad mit dem Dateinamen verbunden wird:

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

Das Problem ist hier die fehlende Bereinigung des Dateinamens. Ein Angreifer könnte Dateien so umbenennen, dass sie Pfad-Traversal-Zeichen enthalten, wie z.B. Punkt-Punkt-Schrägstrich (../), was dazu führen würde, dass die Datei das Verzeichnis verlässt, in dem sie eigentlich sein sollte, und beliebige Dateien überschreibt. Dies könnte schließlich zu einer entfernten Codeausführung führen, die für eine Ausnutzung reif ist.
Die Schwachstelle tritt auch in anderen Szenarien auf, wenn man weiß, wie sie zu erkennen ist. Neben dem Umgang von Python mit tar-Dateien besteht die Schwachstelle auch bei der Extraktion von zip-Dateien. Vielleicht kennen Sie sie auch unter einem anderen Namen, wie z. B. die Zip-Slip-Schwachstelle, die sich auch in anderen Sprachen als Python manifestiert hat!
Wie können Sie das Risiko mindern?
Obwohl die Schwachstelle seit Jahren bekannt ist, sind die Python-Betreuer der Ansicht, dass die Extraktionsfunktion genau das tut , was sie tun soll. In diesem Fall mögen manche sagen: "Es ist ein Feature, kein Bug". Leider können Entwickler nicht immer vermeiden, tar- oder zip-Dateien aus einer unbekannten Quelle zu extrahieren. Es liegt an ihnen, die nicht vertrauenswürdigen Eingaben zu bereinigen, um Schwachstellen durch Pfadüberquerung als Teil der sicheren Entwicklungspraktiken zu verhindern.
Möchten Sie mehr darüber erfahren, wie Sie mit Python sicheren Code schreiben und Risiken minimieren können?
Probieren Sie unsere Python-Herausforderung kostenlos aus.
Wenn Sie an weiteren kostenlosen Codierungsrichtlinien interessiert sind, besuchen Sie Secure Code Coach, damit Sie immer auf dem neuesten Stand der sicheren Codierungspraktiken sind.


Vor Kurzem gab ein Team von Sicherheitsforschern bekannt, dass es einen fünfzehn Jahre alten Fehler in Pythons Tardatei-Extraktionsfunktion entdeckt hat. Die Sicherheitslücke wurde erstmals 2007 aufgedeckt und als CVE-2007-4559 registriert. Der offiziellen Python-Dokumentation wurde ein Hinweis hinzugefügt, aber der Fehler selbst blieb ungepatcht.

Secure Code Warrior für Ihr Unternehmen da, um Ihnen zu helfen, Code während des gesamten Softwareentwicklungszyklus zu sichern und eine Kultur zu schaffen, in der Cybersicherheit an erster Stelle steht. Ganz gleich, ob Sie AppSec-Manager, Entwickler, CISO oder jemand anderes sind, der sich mit Sicherheit befasst, wir können Ihrem Unternehmen helfen, die mit unsicherem Code verbundenen Risiken zu reduzieren.
Eine Demo buchenLaura Verheyde ist Softwareentwicklerin bei Secure Code Warrior und beschäftigt sich mit der Erforschung von Schwachstellen und der Erstellung von Inhalten für Missions und Coding Labs.


Kürzlich gab ein Team von Sicherheitsforschern bekannt, dass sie einen fünfzehn Jahre alten Fehler in der Python-Funktion zur Extraktion von tar-Dateien gefunden haben. Die Schwachstelle wurde erstmals im Jahr 2007 bekannt gegeben und als CVE-2007-4559 verfolgt. Der offiziellen Python-Dokumentation wurde ein Hinweis hinzugefügt, aber der Fehler selbst wurde nicht behoben.
Diese Sicherheitslücke könnte sich auf Tausende von Softwareprojekten auswirken, doch viele Menschen sind mit der Situation nicht vertraut und wissen nicht, wie sie damit umgehen sollen. Aus diesem Grund bieten wir hier bei Secure Code Warriordie Möglichkeit, die Ausnutzung dieser Schwachstelle selbst zu simulieren, um die Auswirkungen aus erster Hand zu erfahren und praktische Erfahrungen mit den Mechanismen dieses hartnäckigen Fehlers zu sammeln, damit Sie Ihre Anwendung besser schützen können!
Probieren Sie die simulierte Mission jetzt aus.
Die Schwachstelle: Pfadüberwindung beim Extrahieren von tar-Dateien
Pfad- oder Verzeichnisüberquerungen treten auf, wenn unüberprüfte Benutzereingaben verwendet werden, um einen Dateipfad zu konstruieren, was es einem Angreifer ermöglicht, Zugriff auf Dateien zu erhalten und diese zu überschreiben und sogar beliebigen Code auszuführen.
Die Sicherheitslücke besteht im tarfile-Modul von Python. Eine tar-Datei (Bandarchiv) ist eine einzelne Datei, ein sogenanntes Archiv. Sie packt mehrere Dateien mit ihren Metadaten zusammen und ist normalerweise an der Erweiterung .tar.gz oder .tgz zu erkennen. Jedes Mitglied des Archivs kann durch ein TarInfo-Objekt dargestellt werden, das Metadaten wie Dateiname, Änderungszeit, Eigentümer und mehr enthält.
Das Risiko besteht darin, dass die Archive wieder extrahiert werden können.
Beim Extrahieren benötigt jedes Mitglied einen Pfad, in den es geschrieben wird. Dieser Pfad wird erstellt, indem der Basispfad mit dem Dateinamen verbunden wird:

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

Das Problem ist hier die fehlende Bereinigung des Dateinamens. Ein Angreifer könnte Dateien so umbenennen, dass sie Pfad-Traversal-Zeichen enthalten, wie z.B. Punkt-Punkt-Schrägstrich (../), was dazu führen würde, dass die Datei das Verzeichnis verlässt, in dem sie eigentlich sein sollte, und beliebige Dateien überschreibt. Dies könnte schließlich zu einer entfernten Codeausführung führen, die für eine Ausnutzung reif ist.
Die Schwachstelle tritt auch in anderen Szenarien auf, wenn man weiß, wie sie zu erkennen ist. Neben dem Umgang von Python mit tar-Dateien besteht die Schwachstelle auch bei der Extraktion von zip-Dateien. Vielleicht kennen Sie sie auch unter einem anderen Namen, wie z. B. die Zip-Slip-Schwachstelle, die sich auch in anderen Sprachen als Python manifestiert hat!
Wie können Sie das Risiko mindern?
Obwohl die Schwachstelle seit Jahren bekannt ist, sind die Python-Betreuer der Ansicht, dass die Extraktionsfunktion genau das tut , was sie tun soll. In diesem Fall mögen manche sagen: "Es ist ein Feature, kein Bug". Leider können Entwickler nicht immer vermeiden, tar- oder zip-Dateien aus einer unbekannten Quelle zu extrahieren. Es liegt an ihnen, die nicht vertrauenswürdigen Eingaben zu bereinigen, um Schwachstellen durch Pfadüberquerung als Teil der sicheren Entwicklungspraktiken zu verhindern.
Möchten Sie mehr darüber erfahren, wie Sie mit Python sicheren Code schreiben und Risiken minimieren können?
Probieren Sie unsere Python-Herausforderung kostenlos aus.
Wenn Sie an weiteren kostenlosen Codierungsrichtlinien interessiert sind, besuchen Sie Secure Code Coach, damit Sie immer auf dem neuesten Stand der sicheren Codierungspraktiken sind.

Kürzlich gab ein Team von Sicherheitsforschern bekannt, dass sie einen fünfzehn Jahre alten Fehler in der Python-Funktion zur Extraktion von tar-Dateien gefunden haben. Die Schwachstelle wurde erstmals im Jahr 2007 bekannt gegeben und als CVE-2007-4559 verfolgt. Der offiziellen Python-Dokumentation wurde ein Hinweis hinzugefügt, aber der Fehler selbst wurde nicht behoben.
Diese Sicherheitslücke könnte sich auf Tausende von Softwareprojekten auswirken, doch viele Menschen sind mit der Situation nicht vertraut und wissen nicht, wie sie damit umgehen sollen. Aus diesem Grund bieten wir hier bei Secure Code Warriordie Möglichkeit, die Ausnutzung dieser Schwachstelle selbst zu simulieren, um die Auswirkungen aus erster Hand zu erfahren und praktische Erfahrungen mit den Mechanismen dieses hartnäckigen Fehlers zu sammeln, damit Sie Ihre Anwendung besser schützen können!
Probieren Sie die simulierte Mission jetzt aus.
Die Schwachstelle: Pfadüberwindung beim Extrahieren von tar-Dateien
Pfad- oder Verzeichnisüberquerungen treten auf, wenn unüberprüfte Benutzereingaben verwendet werden, um einen Dateipfad zu konstruieren, was es einem Angreifer ermöglicht, Zugriff auf Dateien zu erhalten und diese zu überschreiben und sogar beliebigen Code auszuführen.
Die Sicherheitslücke besteht im tarfile-Modul von Python. Eine tar-Datei (Bandarchiv) ist eine einzelne Datei, ein sogenanntes Archiv. Sie packt mehrere Dateien mit ihren Metadaten zusammen und ist normalerweise an der Erweiterung .tar.gz oder .tgz zu erkennen. Jedes Mitglied des Archivs kann durch ein TarInfo-Objekt dargestellt werden, das Metadaten wie Dateiname, Änderungszeit, Eigentümer und mehr enthält.
Das Risiko besteht darin, dass die Archive wieder extrahiert werden können.
Beim Extrahieren benötigt jedes Mitglied einen Pfad, in den es geschrieben wird. Dieser Pfad wird erstellt, indem der Basispfad mit dem Dateinamen verbunden wird:

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

Das Problem ist hier die fehlende Bereinigung des Dateinamens. Ein Angreifer könnte Dateien so umbenennen, dass sie Pfad-Traversal-Zeichen enthalten, wie z.B. Punkt-Punkt-Schrägstrich (../), was dazu führen würde, dass die Datei das Verzeichnis verlässt, in dem sie eigentlich sein sollte, und beliebige Dateien überschreibt. Dies könnte schließlich zu einer entfernten Codeausführung führen, die für eine Ausnutzung reif ist.
Die Schwachstelle tritt auch in anderen Szenarien auf, wenn man weiß, wie sie zu erkennen ist. Neben dem Umgang von Python mit tar-Dateien besteht die Schwachstelle auch bei der Extraktion von zip-Dateien. Vielleicht kennen Sie sie auch unter einem anderen Namen, wie z. B. die Zip-Slip-Schwachstelle, die sich auch in anderen Sprachen als Python manifestiert hat!
Wie können Sie das Risiko mindern?
Obwohl die Schwachstelle seit Jahren bekannt ist, sind die Python-Betreuer der Ansicht, dass die Extraktionsfunktion genau das tut , was sie tun soll. In diesem Fall mögen manche sagen: "Es ist ein Feature, kein Bug". Leider können Entwickler nicht immer vermeiden, tar- oder zip-Dateien aus einer unbekannten Quelle zu extrahieren. Es liegt an ihnen, die nicht vertrauenswürdigen Eingaben zu bereinigen, um Schwachstellen durch Pfadüberquerung als Teil der sicheren Entwicklungspraktiken zu verhindern.
Möchten Sie mehr darüber erfahren, wie Sie mit Python sicheren Code schreiben und Risiken minimieren können?
Probieren Sie unsere Python-Herausforderung kostenlos aus.
Wenn Sie an weiteren kostenlosen Codierungsrichtlinien interessiert sind, besuchen Sie Secure Code Coach, damit Sie immer auf dem neuesten Stand der sicheren Codierungspraktiken sind.

Klicken Sie auf den untenstehenden Link und laden Sie das PDF dieser Ressource herunter.
Secure Code Warrior für Ihr Unternehmen da, um Ihnen zu helfen, Code während des gesamten Softwareentwicklungszyklus zu sichern und eine Kultur zu schaffen, in der Cybersicherheit an erster Stelle steht. Ganz gleich, ob Sie AppSec-Manager, Entwickler, CISO oder jemand anderes sind, der sich mit Sicherheit befasst, wir können Ihrem Unternehmen helfen, die mit unsicherem Code verbundenen Risiken zu reduzieren.
Bericht ansehenEine Demo buchenLaura Verheyde ist Softwareentwicklerin bei Secure Code Warrior und beschäftigt sich mit der Erforschung von Schwachstellen und der Erstellung von Inhalten für Missions und Coding Labs.
Kürzlich gab ein Team von Sicherheitsforschern bekannt, dass sie einen fünfzehn Jahre alten Fehler in der Python-Funktion zur Extraktion von tar-Dateien gefunden haben. Die Schwachstelle wurde erstmals im Jahr 2007 bekannt gegeben und als CVE-2007-4559 verfolgt. Der offiziellen Python-Dokumentation wurde ein Hinweis hinzugefügt, aber der Fehler selbst wurde nicht behoben.
Diese Sicherheitslücke könnte sich auf Tausende von Softwareprojekten auswirken, doch viele Menschen sind mit der Situation nicht vertraut und wissen nicht, wie sie damit umgehen sollen. Aus diesem Grund bieten wir hier bei Secure Code Warriordie Möglichkeit, die Ausnutzung dieser Schwachstelle selbst zu simulieren, um die Auswirkungen aus erster Hand zu erfahren und praktische Erfahrungen mit den Mechanismen dieses hartnäckigen Fehlers zu sammeln, damit Sie Ihre Anwendung besser schützen können!
Probieren Sie die simulierte Mission jetzt aus.
Die Schwachstelle: Pfadüberwindung beim Extrahieren von tar-Dateien
Pfad- oder Verzeichnisüberquerungen treten auf, wenn unüberprüfte Benutzereingaben verwendet werden, um einen Dateipfad zu konstruieren, was es einem Angreifer ermöglicht, Zugriff auf Dateien zu erhalten und diese zu überschreiben und sogar beliebigen Code auszuführen.
Die Sicherheitslücke besteht im tarfile-Modul von Python. Eine tar-Datei (Bandarchiv) ist eine einzelne Datei, ein sogenanntes Archiv. Sie packt mehrere Dateien mit ihren Metadaten zusammen und ist normalerweise an der Erweiterung .tar.gz oder .tgz zu erkennen. Jedes Mitglied des Archivs kann durch ein TarInfo-Objekt dargestellt werden, das Metadaten wie Dateiname, Änderungszeit, Eigentümer und mehr enthält.
Das Risiko besteht darin, dass die Archive wieder extrahiert werden können.
Beim Extrahieren benötigt jedes Mitglied einen Pfad, in den es geschrieben wird. Dieser Pfad wird erstellt, indem der Basispfad mit dem Dateinamen verbunden wird:

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

Das Problem ist hier die fehlende Bereinigung des Dateinamens. Ein Angreifer könnte Dateien so umbenennen, dass sie Pfad-Traversal-Zeichen enthalten, wie z.B. Punkt-Punkt-Schrägstrich (../), was dazu führen würde, dass die Datei das Verzeichnis verlässt, in dem sie eigentlich sein sollte, und beliebige Dateien überschreibt. Dies könnte schließlich zu einer entfernten Codeausführung führen, die für eine Ausnutzung reif ist.
Die Schwachstelle tritt auch in anderen Szenarien auf, wenn man weiß, wie sie zu erkennen ist. Neben dem Umgang von Python mit tar-Dateien besteht die Schwachstelle auch bei der Extraktion von zip-Dateien. Vielleicht kennen Sie sie auch unter einem anderen Namen, wie z. B. die Zip-Slip-Schwachstelle, die sich auch in anderen Sprachen als Python manifestiert hat!
Wie können Sie das Risiko mindern?
Obwohl die Schwachstelle seit Jahren bekannt ist, sind die Python-Betreuer der Ansicht, dass die Extraktionsfunktion genau das tut , was sie tun soll. In diesem Fall mögen manche sagen: "Es ist ein Feature, kein Bug". Leider können Entwickler nicht immer vermeiden, tar- oder zip-Dateien aus einer unbekannten Quelle zu extrahieren. Es liegt an ihnen, die nicht vertrauenswürdigen Eingaben zu bereinigen, um Schwachstellen durch Pfadüberquerung als Teil der sicheren Entwicklungspraktiken zu verhindern.
Möchten Sie mehr darüber erfahren, wie Sie mit Python sicheren Code schreiben und Risiken minimieren können?
Probieren Sie unsere Python-Herausforderung kostenlos aus.
Wenn Sie an weiteren kostenlosen Codierungsrichtlinien interessiert sind, besuchen Sie Secure Code Coach, damit Sie immer auf dem neuesten Stand der sicheren Codierungspraktiken sind.
Inhaltsverzeichnis

Secure Code Warrior für Ihr Unternehmen da, um Ihnen zu helfen, Code während des gesamten Softwareentwicklungszyklus zu sichern und eine Kultur zu schaffen, in der Cybersicherheit an erster Stelle steht. Ganz gleich, ob Sie AppSec-Manager, Entwickler, CISO oder jemand anderes sind, der sich mit Sicherheit befasst, wir können Ihrem Unternehmen helfen, die mit unsicherem Code verbundenen Risiken zu reduzieren.
Eine Demo buchenHerunterladenRessourcen für den Einstieg
Themen und Inhalte der Securecode-Schulung
Unsere branchenführenden Inhalte werden ständig weiterentwickelt, um der sich ständig ändernden Softwareentwicklungslandschaft unter Berücksichtigung Ihrer Rolle gerecht zu werden. Themen, die alles von KI bis XQuery Injection abdecken und für eine Vielzahl von Rollen angeboten werden, von Architekten und Ingenieuren bis hin zu Produktmanagern und QA. Verschaffen Sie sich einen kleinen Einblick in das Angebot unseres Inhaltskatalogs nach Themen und Rollen.
Die Kamer van Koophandel setzt Maßstäbe für entwicklergesteuerte Sicherheit in großem Maßstab
Die Kamer van Koophandel berichtet, wie sie sicheres Codieren durch rollenbasierte Zertifizierungen, Trust Score-Benchmarking und eine Kultur der gemeinsamen Verantwortung für Sicherheit in die tägliche Entwicklungsarbeit integriert hat.
Bedrohungsmodellierung mit KI: So wird jeder Entwickler zum Bedrohungsmodellierer
Sie werden besser gerüstet sein, um Entwicklern dabei zu helfen, Ideen und Techniken zur Bedrohungsmodellierung mit den KI-Tools zu kombinieren, die sie bereits verwenden, um die Sicherheit zu erhöhen, die Zusammenarbeit zu verbessern und von Anfang an widerstandsfähigere Software zu entwickeln.
Ressourcen für den Einstieg
Cybermon ist zurück: Beat the Boss KI-Missionen jetzt auf Abruf verfügbar
Cybermon 2025 Beat the Boss ist jetzt das ganze Jahr über in SCW verfügbar. Setzt fortschrittliche KI/LLM-Sicherheitsanforderungen ein, um die sichere KI-Entwicklung in einem großen Maßstab zu stärken.
Cyber-Resilienz-Gesetz erklärt: Was das für die Entwicklung von Secure by Design-Software bedeutet
Erfahren Sie, was der EU Cyber Resilience Act (CRA) verlangt, für wen er gilt und wie sich Entwicklungsteams mit sicheren Methoden, der Vorbeugung von Sicherheitslücken und dem Aufbau von Fähigkeiten für Entwickler darauf vorbereiten können.
Enabler 1: Definierte und messbare Erfolgskriterien
Enabler 1 eröffnet unsere zehnteilige Reihe „Enabler of Success“ und zeigt, wie sichere Codierung mit Geschäftsergebnissen wie Risikominderung und Geschwindigkeit verbunden werden kann, um eine langfristige Programmreife zu erreichen.




%20(1).avif)
.avif)
