# ImageMagick Security {% hint style="success" %} Learn & practice AWS Hacking:[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)\ Learn & practice GCP Hacking: [**HackTricks Training GCP Red Team Expert (GRTE)**](https://training.hacktricks.xyz/courses/grte)
Support HackTricks * Check the [**subscription plans**](https://github.com/sponsors/carlospolop)! * **Join the** 馃挰 [**Discord group**](https://discord.gg/hRep4RUj7f) or the [**telegram group**](https://t.me/peass) or **follow** us on **Twitter** 馃惁 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.** * **Share hacking tricks by submitting PRs to the** [**HackTricks**](https://github.com/carlospolop/hacktricks) and [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
{% endhint %} Check further details in [**https://blog.doyensec.com/2023/01/10/imagemagick-security-policy-evaluator.html**](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](https://imagemagick-secevaluator.doyensec.com/), 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. ```xml ... ... ``` ## 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: ```shell $ 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](https://imagemagick-secevaluator.doyensec.com/) mo偶e by膰 u偶yte do udoskonalenia polityki w oparciu o indywidualne potrzeby. ## Odniesienia * [https://blog.doyensec.com/2023/01/10/imagemagick-security-policy-evaluator.html**](https://blog.doyensec.com/2023/01/10/imagemagick-security-policy-evaluator.html) {% hint style="success" %} Learn & practice AWS Hacking:[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)\ Learn & practice GCP Hacking: [**HackTricks Training GCP Red Team Expert (GRTE)**](https://training.hacktricks.xyz/courses/grte)
Support HackTricks * Check the [**subscription plans**](https://github.com/sponsors/carlospolop)! * **Join the** 馃挰 [**Discord group**](https://discord.gg/hRep4RUj7f) or the [**telegram group**](https://t.me/peass) or **follow** us on **Twitter** 馃惁 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.** * **Share hacking tricks by submitting PRs to the** [**HackTricks**](https://github.com/carlospolop/hacktricks) and [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
{% endhint %}