ImageMagick Security

Unterstützen Sie HackTricks

Überprüfen Sie weitere Details in https://blog.doyensec.com/2023/01/10/imagemagick-security-policy-evaluator.html

ImageMagick, eine vielseitige Bildverarbeitungsbibliothek, stellt eine Herausforderung bei der Konfiguration ihrer Sicherheitsrichtlinien dar, aufgrund ihrer umfangreichen Optionen und des Mangels an detaillierter Online-Dokumentation. Benutzer erstellen oft Richtlinien basierend auf fragmentierten Internetquellen, was zu potenziellen Fehlkonfigurationen führen kann. Die Bibliothek unterstützt eine Vielzahl von über 100 Bildformaten, die jeweils zu ihrer Komplexität und ihrem Schwachstellenprofil beitragen, wie historische Sicherheitsvorfälle zeigen.

Auf dem Weg zu sichereren Richtlinien

Um diese Herausforderungen anzugehen, wurde ein Tool entwickelt, um bei der Gestaltung und Prüfung der Sicherheitsrichtlinien von ImageMagick zu helfen. Dieses Tool basiert auf umfangreicher Forschung und zielt darauf ab, sicherzustellen, dass die Richtlinien nicht nur robust, sondern auch frei von Schlupflöchern sind, die ausgenutzt werden könnten.

Allowlist- vs. Denylist-Ansatz

Historisch gesehen basierten die ImageMagick-Richtlinien auf einem Denylist-Ansatz, bei dem bestimmten Codierern der Zugang verweigert wurde. Änderungen in ImageMagick 6.9.7-7 verschoben jedoch dieses Paradigma und ermöglichten einen Allowlist-Ansatz. Dieser Ansatz verweigert zunächst allen Codierern den Zugang und gewährt dann selektiv vertrauenswürdigen Codierern Zugang, was die Sicherheitslage verbessert.

...
<policy domain="coder" rights="none" pattern="*" />
<policy domain="coder" rights="read | write" pattern="{GIF,JPEG,PNG,WEBP}" />
...

Groß- und Kleinschreibung in Richtlinien

Es ist wichtig zu beachten, dass Richtlinienmuster in ImageMagick groß- und kleinschreibungsempfindlich sind. Daher ist es entscheidend, dass Programmierer und Module in den Richtlinien korrekt großgeschrieben werden, um unbeabsichtigte Berechtigungen zu verhindern.

Ressourcenlimits

ImageMagick ist anfällig für Denial-of-Service-Angriffe, wenn es nicht richtig konfiguriert ist. Das Festlegen expliziter Ressourcenlimits in der Richtlinie ist entscheidend, um solche Schwachstellen zu verhindern.

Richtlinienfragmentierung

Richtlinien können über verschiedene ImageMagick-Installationen fragmentiert sein, was zu potenziellen Konflikten oder Überschreibungen führen kann. Es wird empfohlen, die aktiven Richtliniendateien mit Befehlen wie: zu lokalisieren und zu überprüfen:

$ find / -iname policy.xml

Eine Einsteiger-, Restriktive Richtlinie

Eine restriktive Richtlinienevorlage wurde vorgeschlagen, die sich auf strenge Ressourcenbeschränkungen und Zugangskontrollen konzentriert. Diese Vorlage dient als Grundlage für die Entwicklung maßgeschneiderter Richtlinien, die mit den spezifischen Anforderungen der Anwendung übereinstimmen.

Die Wirksamkeit einer Sicherheitsrichtlinie kann mit dem Befehl identify -list policy in ImageMagick bestätigt werden. Darüber hinaus kann das zuvor erwähnte evaluator tool verwendet werden, um die Richtlinie basierend auf individuellen Bedürfnissen zu verfeinern.

Referenzen

Support HackTricks

Last updated