
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 konzentriert sich auf die Erforschung von Sicherheitslücken und die 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 konzentriert sich auf die Erforschung von Sicherheitslücken und die 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
Trust Agent:AI - Secure and scale AI-Drive development
AI is writing code. Who’s governing it? With up to 50% of AI-generated code containing security weaknesses, managing AI risk is critical. Discover how SCW's Trust Agent: AI provides the real-time visibility, proactive governance, and targeted upskilling needed to scale AI-driven development securely.
Die Leistungsfähigkeit von OpenText Application Security + Secure Code Warrior
OpenText Application Security and Secure Code Warrior combine vulnerability detection with AI Software Governance and developer capability. Together, they help organizations reduce risk, strengthen secure coding practices, and confidently adopt AI-driven development.
Secure Code Warrior corporate overview
Secure Code Warrior is an AI Software Governance platform designed to enable organizations to safely adopt AI-driven development by bridging the gap between development velocity and enterprise security. The platform addresses the "Visibility Gap," where security teams often lack insights into shadow AI coding tools and the origins of production code.
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.
Ressourcen für den Einstieg
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.




