5.4 KiB
ImageMagick Security
{% hint style="success" %}
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Support HackTricks
- Check the subscription plans!
- Join the 💬 Discord group or the telegram group or follow us on Twitter 🐦 @hacktricks_live.
- Share hacking tricks by submitting PRs to the HackTricks and HackTricks Cloud github repos.
Check further details in https://blog.doyensec.com/2023/01/10/imagemagick-security-policy-evaluator.html
ImageMagick, wszechstronna biblioteka do przetwarzania obrazów, stawia wyzwanie w konfigurowaniu swojej polityki bezpieczeństwa z powodu rozbudowanych opcji i braku szczegółowej dokumentacji online. Użytkownicy często tworzą polityki na podstawie fragmentarycznych źródeł internetowych, co prowadzi do potencjalnych błędów konfiguracyjnych. Biblioteka obsługuje ogromną liczbę ponad 100 formatów obrazów, co przyczynia się do jej złożoności i profilu podatności, co zostało udowodnione przez historyczne incydenty bezpieczeństwa.
Towards Safer Policies
Aby sprostać tym wyzwaniom, opracowano narzędzie, które ma pomóc w projektowaniu i audytowaniu polityk bezpieczeństwa ImageMagick. To narzędzie opiera się na szerokich badaniach i ma na celu zapewnienie, że polityki są nie tylko solidne, ale także wolne od luk, które mogłyby być wykorzystane.
Allowlist vs Denylist Approach
Historycznie, polityki ImageMagick opierały się na podejściu denylist, w którym dostęp do konkretnych kodów był zabroniony. Jednak zmiany w ImageMagick 6.9.7-7 zmieniły ten paradygmat, umożliwiając podejście allowlist. To podejście najpierw odmawia dostępu wszystkim kodom, a następnie selektywnie przyznaje dostęp zaufanym, co zwiększa bezpieczeństwo.
...
<policy domain="coder" rights="none" pattern="*" />
<policy domain="coder" rights="read | write" pattern="{GIF,JPEG,PNG,WEBP}" />
...
Case Sensitivity in Policies
Ważne jest, aby zauważyć, że wzorce polityki w ImageMagick są wrażliwe na wielkość liter. Dlatego zapewnienie, że programiści i moduły są poprawnie zapisane wielką literą w politykach, jest kluczowe, aby zapobiec niezamierzonym uprawnieniom.
Resource Limits
ImageMagick jest podatny na ataki typu denial of service, jeśli nie jest odpowiednio skonfigurowany. Ustawienie wyraźnych limitów zasobów w polityce jest niezbędne, aby zapobiec takim lukom.
Policy Fragmentation
Polityki mogą być fragmentowane w różnych instalacjach ImageMagick, co prowadzi do potencjalnych konfliktów lub nadpisywania. Zaleca się zlokalizowanie i weryfikację aktywnych plików polityki za pomocą poleceń takich jak:
$ find / -iname policy.xml
Polityka Startowa, Ograniczająca
Zaproponowano szablon polityki ograniczającej, koncentrujący się na surowych ograniczeniach zasobów i kontrolach dostępu. Szablon ten służy jako punkt wyjścia do opracowywania dostosowanych polityk, które odpowiadają specyficznym wymaganiom aplikacji.
Skuteczność polityki bezpieczeństwa można potwierdzić za pomocą polecenia identify -list policy
w ImageMagick. Dodatkowo, wspomniane wcześniej narzędzie oceniające może być użyte do udoskonalenia polityki w oparciu o indywidualne potrzeby.
Odniesienia
{% hint style="success" %}
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Support HackTricks
- Check the subscription plans!
- Join the 💬 Discord group or the telegram group or follow us on Twitter 🐦 @hacktricks_live.
- Share hacking tricks by submitting PRs to the HackTricks and HackTricks Cloud github repos.