CVE-2022-48565: Ein Einblick in die Plist-Deserialisierungsschwachstelle in Python 2.7 und Python 3

You are currently viewing CVE-2022-48565: Ein Einblick in die Plist-Deserialisierungsschwachstelle in Python 2.7 und Python 3

Während wir immer mehr auf neuere Technologien umsteigen, ist es wichtig, die Schwachstellen im Blick zu behalten, die in alten Systemen fortbestehen. Kürzlich habe ich einen Proof of Concept (PoC) entwickelt, um die Auswirkungen der CVE-2022-48565, einer kritischen Schwachstelle in der plistlib-Bibliothek von Python 2.7 und Python 3 (bis Version 3.9.1), zu demonstrieren.

Was ist CVE-2022-48565?

CVE-2022-48565 beschreibt eine Sicherheitslücke in Python 2.7 und Python 3 (bis Version 3.9.1), die durch die unsichere Verarbeitung von Property List (Plist)-Dateien entsteht. Plist-Dateien werden häufig in macOS-Anwendungen verwendet, um strukturierte Daten zu speichern. Die Schwachstelle entsteht, weil die plistlib-Bibliothek von Python bösartige Plist-Dateien unsicher deserialisieren kann. Dies ermöglicht es einem Angreifer, durch speziell manipulierte Plist-Dateien Remote Code Execution (RCE) auszuführen, d. h. beliebigen Code auf dem Zielsystem zu starten.

Dies ist besonders gefährlich, da viele ältere Systeme weiterhin auf Python 2.7 oder unsicheren Versionen von Python 3 basieren.

In meinem PoC habe ich vier Skripte erstellt, die unterschiedliche Ausnutzungsmethoden demonstrieren. Jedes dieser Skripte veranschaulicht, wie leicht die Schwachstelle ausgenutzt werden kann, wenn keine geeigneten Sicherheitsmaßnahmen getroffen werden.

Warum ist das wichtig?

Obwohl Python 2.7 offiziell nicht mehr unterstützt wird, wird es immer noch in vielen alten Systemen verwendet. Ebenso laufen viele Python 3-Installationen noch auf Versionen vor 3.9.1, die ebenfalls anfällig für diese Schwachstelle sind. Solche Systeme sind ein attraktives Ziel für Angreifer, die Schwachstellen in ungesicherten, veralteten Systemen ausnutzen wollen.

Durch das Bewusstmachen von Schwachstellen wie CVE-2022-48565 möchte ich dazu beitragen, Organisationen zu motivieren, den Umstieg auf unterstützte Versionen von Python zu beschleunigen oder notwendige Sicherheitsmaßnahmen zu ergreifen.

Abschließende Gedanken

Auch wenn ich diese Schwachstelle nicht entdeckt habe, zeigt mein PoC, wie gefährlich sie sein kann, wenn sie unbeachtet bleibt. Es verdeutlicht auch, wie wichtig es ist, alte Systeme zu sichern und auf aktuelle Versionen von Python (mindestens 3.9.1 oder höher) zu migrieren.

Wenn du noch Python 2.7 oder eine ältere Python 3-Version verwendest, ist jetzt der richtige Zeitpunkt, deine Systeme auf mögliche Gefährdungen durch Schwachstellen wie CVE-2022-48565 zu überprüfen.

Für weitere Informationen oder um den PoC selbst zu testen, findest du den Code auf meinem GitHub: https://github.com/Einstein2150/CVE-2022-48656-POC

Tags:

#cybersecurity #python #vulnerability #CVE2022 #legacytech #remotecodeexecution #macOS #infosec #opensource

PS:

hier gehts zum IT-Security-Bereich meiner Seite