47 lines
3.4 KiB
Markdown

# Sicurezza di ImageMagick
{{#include ../../banners/hacktricks-training.md}}
Controlla ulteriori dettagli 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, una versatile libreria per l'elaborazione delle immagini, presenta una sfida nella configurazione della sua politica di sicurezza a causa delle sue ampie opzioni e della mancanza di documentazione dettagliata online. Gli utenti spesso creano politiche basate su fonti frammentate di internet, portando a potenziali misconfigurazioni. La libreria supporta una vasta gamma di oltre 100 formati di immagine, ognuno dei quali contribuisce alla sua complessità e al profilo di vulnerabilità, come dimostrato da incidenti di sicurezza storici.
## Verso Politiche più Sicure
Per affrontare queste sfide, è stato [sviluppato uno strumento](https://imagemagick-secevaluator.doyensec.com/) per aiutare nella progettazione e nell'audit delle politiche di sicurezza di ImageMagick. Questo strumento è radicato in una ricerca approfondita e mira a garantire che le politiche siano non solo robuste, ma anche prive di scappatoie che potrebbero essere sfruttate.
## Approccio Allowlist vs Denylist
Storicamente, le politiche di ImageMagick si basavano su un approccio denylist, in cui a specifici coders veniva negato l'accesso. Tuttavia, i cambiamenti in ImageMagick 6.9.7-7 hanno spostato questo paradigma, abilitando un approccio allowlist. Questo approccio nega prima l'accesso a tutti i coders e poi concede selettivamente l'accesso a quelli fidati, migliorando la postura di sicurezza.
```xml
...
<policy domain="coder" rights="none" pattern="*" />
<policy domain="coder" rights="read | write" pattern="{GIF,JPEG,PNG,WEBP}" />
...
```
## Case Sensitivity in Policies
È fondamentale notare che i modelli di policy in ImageMagick sono sensibili al maiuscolo. Pertanto, garantire che i codici e i moduli siano correttamente scritti in maiuscolo nelle policy è vitale per prevenire permessi non intenzionali.
## Resource Limits
ImageMagick è soggetto ad attacchi di denial of service se non configurato correttamente. Impostare limiti di risorse espliciti nella policy è essenziale per prevenire tali vulnerabilità.
## Policy Fragmentation
Le policy possono essere frammentate tra diverse installazioni di ImageMagick, portando a potenziali conflitti o sovrascritture. Si consiglia di localizzare e verificare i file di policy attivi utilizzando comandi come:
```shell
$ find / -iname policy.xml
```
## Una Politica Iniziale e Ristrettiva
È stato proposto un modello di politica restrittiva, incentrato su limitazioni rigorose delle risorse e controlli di accesso. Questo modello serve come base per sviluppare politiche personalizzate che si allineano con i requisiti specifici dell'applicazione.
L'efficacia di una politica di sicurezza può essere confermata utilizzando il comando `identify -list policy` in ImageMagick. Inoltre, lo [strumento di valutazione](https://imagemagick-secevaluator.doyensec.com/) menzionato in precedenza può essere utilizzato per affinare la politica in base alle esigenze individuali.
## Riferimenti
- [https://blog.doyensec.com/2023/01/10/imagemagick-security-policy-evaluator.html**](https://blog.doyensec.com/2023/01/10/imagemagick-security-policy-evaluator.html)
{{#include ../../banners/hacktricks-training.md}}