hacktricks/network-services-pentesting/pentesting-web/imagemagick-security.md

66 lines
5.6 KiB
Markdown
Raw Normal View History

2024-02-11 01:46:25 +00:00
# Bezpieczeństwo ImageMagick
2023-01-16 14:53:23 +00:00
<details>
2024-02-11 01:46:25 +00:00
<summary><strong>Naucz się hakować AWS od zera do bohatera z</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
2023-01-16 14:53:23 +00:00
2024-02-11 01:46:25 +00:00
Inne sposoby wsparcia HackTricks:
2024-02-03 12:22:53 +00:00
2024-02-11 01:46:25 +00:00
* Jeśli chcesz zobaczyć swoją **firmę reklamowaną w HackTricks** lub **pobrać HackTricks w formacie PDF**, sprawdź [**PLAN SUBSKRYPCJI**](https://github.com/sponsors/carlospolop)!
* Zdobądź [**oficjalne gadżety PEASS & HackTricks**](https://peass.creator-spring.com)
* Odkryj [**Rodzinę PEASS**](https://opensea.io/collection/the-peass-family), naszą kolekcję ekskluzywnych [**NFT**](https://opensea.io/collection/the-peass-family)
* **Dołącz do** 💬 [**grupy Discord**](https://discord.gg/hRep4RUj7f) lub [**grupy telegramowej**](https://t.me/peass) lub **śledź** nas na **Twitterze** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Podziel się swoimi sztuczkami hakerskimi, przesyłając PR-y do** [**HackTricks**](https://github.com/carlospolop/hacktricks) i [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
2023-01-16 14:53:23 +00:00
</details>
2024-02-11 01:46:25 +00:00
Sprawdź dalsze szczegóły na stronie [**https://blog.doyensec.com/2023/01/10/imagemagick-security-policy-evaluator.html**](https://blog.doyensec.com/2023/01/10/imagemagick-security-policy-evaluator.html)
2023-01-16 14:53:23 +00:00
2024-02-11 01:46:25 +00:00
ImageMagick, wszechstronna biblioteka do przetwarzania obrazów, stanowi wyzwanie w konfiguracji swojej polityki bezpieczeństwa ze względu na swoje rozległe opcje i brak szczegółowej dokumentacji online. Użytkownicy często tworzą polityki oparte na fragmentarycznych źródłach internetowych, co prowadzi do potencjalnych błędów konfiguracyjnych. Biblioteka obsługuje szeroki zakres ponad 100 formatów obrazów, co przyczynia się do jej złożoności i profilu podatności, jak pokazują historyczne incydenty związane z bezpieczeństwem.
2023-01-16 14:53:23 +00:00
2024-02-11 01:46:25 +00:00
## W kierunku bezpieczniejszych polityk
Aby poradzić sobie z tymi wyzwaniami, [zostało opracowane narzędzie](https://imagemagick-secevaluator.doyensec.com/), które pomaga w projektowaniu i audycie polityk bezpieczeństwa ImageMagick. Narzędzie to opiera się na obszernej analizie i ma na celu zapewnienie, że polityki są nie tylko solidne, ale także wolne od luk, które mogłyby zostać wykorzystane.
2023-01-16 14:53:23 +00:00
2024-02-11 01:46:25 +00:00
## Podejście na podstawie listy dozwolonych vs listy zabronionych
Historycznie polityki ImageMagick polegały na podejściu opartym na liście zabronionych, gdzie określonym kodom było odmawiane dostępu. Jednak zmiany w ImageMagick 6.9.7-7 zmieniły ten paradygmat, umożliwiając podejście oparte na liście dozwolonych. To podejście najpierw odmawia dostępu wszystkim kodom, a następnie selektywnie udziela dostępu zaufanym, poprawiając postawę bezpieczeństwa.
2023-01-16 14:53:23 +00:00
```xml
2024-02-11 01:46:25 +00:00
...
<policy domain="coder" rights="none" pattern="*" />
<policy domain="coder" rights="read | write" pattern="{GIF,JPEG,PNG,WEBP}" />
...
2023-01-16 14:53:23 +00:00
```
2024-02-11 01:46:25 +00:00
## Wrażliwość na wielkość liter w politykach
Należy zauważyć, że wzorce polityk w ImageMagick są wrażliwe na wielkość liter. Dlatego ważne jest, aby upewnić się, że kodery i moduły są poprawnie zapisane wielkimi literami w politykach, aby zapobiec niezamierzonym uprawnieniom.
2023-01-16 14:53:23 +00:00
2024-02-11 01:46:25 +00:00
## Limity zasobów
ImageMagick jest podatny na ataki typu odmowa usługi, jeśli nie jest odpowiednio skonfigurowany. Ustalenie jasnych limitów zasobów w politykach jest niezbędne, aby zapobiec takim podatnościom.
2023-01-16 14:53:23 +00:00
2024-02-11 01:46:25 +00:00
## Fragmentacja polityk
Polityki mogą być rozproszone w różnych instalacjach ImageMagick, co może prowadzić do potencjalnych konfliktów lub nadpisywania. Zaleca się zlokalizowanie i zweryfikowanie aktywnych plików polityk za pomocą poleceń, takich jak:
2024-02-04 10:58:49 +00:00
```shell
2023-01-16 14:53:23 +00:00
$ find / -iname policy.xml
```
2024-02-11 01:46:25 +00:00
## Szablon polityki o ograniczonym dostępie
Zaproponowano szablon polityki o ograniczonym dostępie, skupiający się na rygorystycznych ograniczeniach zasobów i kontroli dostępu. Ten szablon służy jako podstawa do opracowania spersonalizowanych polityk, które są zgodne z konkretnymi wymaganiami aplikacji.
2023-01-16 14:53:23 +00:00
2024-02-11 01:46:25 +00:00
Skuteczność polityki bezpieczeństwa można potwierdzić za pomocą polecenia `identify -list policy` w ImageMagick. Dodatkowo, wcześniej wspomniane narzędzie [evaluator](https://imagemagick-secevaluator.doyensec.com/) można użyć do dopracowania polityki na podstawie indywidualnych potrzeb.
2023-01-16 14:53:23 +00:00
2024-02-11 01:46:25 +00:00
## Odnośniki
2024-02-04 10:58:49 +00:00
* [https://blog.doyensec.com/2023/01/10/imagemagick-security-policy-evaluator.html**](https://blog.doyensec.com/2023/01/10/imagemagick-security-policy-evaluator.html)
2023-01-16 14:53:23 +00:00
<details>
2024-02-11 01:46:25 +00:00
<summary><strong>Naucz się hakować AWS od zera do bohatera z</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
2023-01-16 14:53:23 +00:00
2024-02-11 01:46:25 +00:00
Inne sposoby wsparcia HackTricks:
2024-02-03 12:22:53 +00:00
2024-02-11 01:46:25 +00:00
* Jeśli chcesz zobaczyć **reklamę swojej firmy w HackTricks** lub **pobrać HackTricks w formacie PDF**, sprawdź [**PLAN SUBSKRYPCJI**](https://github.com/sponsors/carlospolop)!
* Zdobądź [**oficjalne gadżety PEASS & HackTricks**](https://peass.creator-spring.com)
* Odkryj [**Rodzinę PEASS**](https://opensea.io/collection/the-peass-family), naszą kolekcję ekskluzywnych [**NFT**](https://opensea.io/collection/the-peass-family)
* **Dołącz do** 💬 [**grupy Discord**](https://discord.gg/hRep4RUj7f) lub [**grupy telegramowej**](https://t.me/peass) lub **śledź** nas na **Twitterze** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Podziel się swoimi trikami hakerskimi, przesyłając PR-y do** [**HackTricks**](https://github.com/carlospolop/hacktricks) i [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
2023-01-16 14:53:23 +00:00
</details>