
Erkennt Bilder, die wahrscheinlich CVE-2022-44268 ausnutzen
cve-2022-44268-detector ist ein Go-Programm, das PNGs verarbeitet und meldet, ob sie bösartige Bilder zu sein scheinen, die durch einen Exploit für CVE-2022-44268 erzeugt wurden, eine ImageMagick-Sicherheitslücke, die Angreifern das Lesen beliebiger Dateiinhalte mithilfe speziell präparierter Bilder ermöglicht.
Um cve-2022-44268-detector zu installieren, verwenden Sie go install:
$ go install github.com/jnschaeffer/cve-2022-44268-detector@latest
Bitte seien Sie vorsichtig, wenn Sie mit nicht vertrauenswürdigen Daten arbeiten. Ein Angreifer kann einen PNG-Chunk erstellen, der Nicht-zlib-Daten enthält (z. B. ein Shell-Skript oder Code, der einen Fehler in Ihrem Erkennungsworkflow ausnutzt). Wenn versehentlich vom Angreifer bereitgestellter Code an ein Terminal oder eine Shell ausgegeben wird, kann dies zur Ausführung von schädlichem Code führen. Es wird dringend empfohlen, den Detektor in einer virtuellen Maschine oder einer isolierten Rechenumgebung auszuführen, um solche Sicherheitsfehler zu entschärfen.
cve-2022-44268-detector ist eine Kommandozeilenanwendung. Sie können es wie folgt ausführen:
$ cve-2022-44268-detector -filename image.png
***POTENTIAL INDICATOR OF COMPROMISE*** - keyword: 'Raw profile type' | compressed: true | id: 0 | offset: 0x72 | len: 666
Benutzer können optional den Inhalt jedes exfiltrierten Chunks auf stdout ausgeben, indem sie das Argument -print angeben. Bitte beachten Sie, dass der Wert jedes Chunks wahrscheinlich binäre, zlib-komprimierte Daten sind (d. h. nicht für Menschen lesbar). Benutzern wird dringend empfohlen, diese Daten in eine Datei umzuleiten.
Hinweis: Seien Sie bei der Verwendung von -print sehr vorsichtig. Nicht vertrauenswürdige PNGs können Daten enthalten, die bei Ausgabe an ein Terminal oder eine Shell als ausführbarer Code interpretiert werden könnten. Bitte ergreifen Sie bei der Verwendung dieser Funktion geeignete Vorsichtsmaßnahmen.
Das Argument -print akzeptiert die folgenden Werte:
raw - Schreibt den Wert des Chunks unverändert auf stdoutdecompress - Dekomprimiert den Wert des Chunks, bevor er auf stdout geschrieben wirddecompress-hexdecode - Dekomprimiert und hex-dekodiert den Wert des Chunks,
bevor er auf stdout geschrieben wird. ImageMagick scheint die Daten zunächst
hex-kodiert und anschließend mit zlib-Kompression komprimiert zu haben.$ cve-2022-44268-detector -filename image.png -print raw > /tmp/out
***POTENTIAL INDICATOR OF COMPROMISE*** - keyword: 'Raw profile type' | compressed: true | id: 0 | offset: 0x72 | len: 666
$ hexdump -C /tmp/out