Zip Slip Kehrt zu Node.js zurück

Vor nicht allzu langer Zeit, im Jahr 2018, donnerte eine gut vergessene neue Art von Angriff - Zip Slip.

Zip Slip ist eine weit verbreitete Sicherheitsanfälligkeit in Bezug auf die Dekomprimierung kritischer Archive, mit der Angreifer beliebige Dateien in das System schreiben können, was normalerweise zur Remote-Ausführung von Befehlen führt. Es wurde vom Snyk Security-Team im Vorgriff auf eine Veröffentlichung am 5. Juni 2018 entdeckt und veröffentlicht und betraf Tausende von Projekten, darunter HP, Amazon, Apache, Pivotal und viele andere.

Weitere Informationen zu den technischen Details von Zip Slip finden Sie auf der  Website .

Seitdem wurden die meisten Frameworks und Sprachen, in denen diese Sicherheitsanfälligkeiten entdeckt wurden, behoben, und die Sicherheitsanfälligkeit wurde lange nicht mehr gehört.

In jüngerer Zeit ist jedoch ein neuer Fall nicht weniger interessant erschienen als die vorherigen.
Zip Slip in der beliebten Bibliothek für Node.js ist "dekomprimieren".

Der Autor überraschte weniger mit der Sicherheitsanfälligkeit als vielmehr mit der Technik, diese Sicherheitsanfälligkeit unter Verwendung der Race-Bedingung auszunutzen.

Race Condition (Hinweis, Race Condition), auch Wettbewerb ist ein Fehler beim Entwerfen eines Multithread-Systems oder einer Anwendung, bei der der Betrieb des Systems oder der Anwendung von der Reihenfolge abhängt, in der Teile des Codes ausgeführt werden.

Hervorragende Beispiele für die Ausnutzung einer solchen Sicherheitsanfälligkeit finden Sie unter dem  Link .

Eine detaillierte Beschreibung der Sicherheitsanfälligkeit finden Sie in  Problemen mit dem Projekt-Repository.

Was die Funktionen des Betriebs betrifft - so schreibt der Autor:

,   « » .zip-, yauzl , «..».

,     , .

   . ,      ,   .

,     , .  /    , .  .     - :

mkdir generic_dir
ln -s ../ generic_dir/symlink_to_parent_dir
ln -s / symlink_to_root
touch generic_dir/symlink_to_parent_dir/generic_dir/symlink_to_parent_dir/[...]/symlink_to_root/tmp/slipped_zip.txt

!

Versuchen Sie sich jetzt vorzustellen, wie es funktioniert! ;)

Die Kennung war für diese Sicherheitsanfälligkeit reserviert: CVE-2020-12265.

Gepostet von Egor Bogomolov, Leiter Informationssicherheit, HackerU Russland

All Articles