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

4.5 KiB

Segurança do ImageMagick

Aprenda hacking na AWS do zero ao herói com htARTE (HackTricks AWS Red Team Expert)!

Outras formas de apoiar o HackTricks:

Verifique mais detalhes em https://blog.doyensec.com/2023/01/10/imagemagick-security-policy-evaluator.html

O ImageMagick, uma biblioteca versátil de processamento de imagens, apresenta um desafio na configuração de sua política de segurança devido às suas extensas opções e à falta de documentação online detalhada. Os usuários frequentemente criam políticas com base em fontes de internet fragmentadas, levando a possíveis configurações incorretas. A biblioteca suporta uma vasta gama de mais de 100 formatos de imagem, cada um contribuindo para sua complexidade e perfil de vulnerabilidade, como demonstrado por incidentes de segurança históricos.

Rumo a Políticas Mais Seguras

Para enfrentar esses desafios, uma ferramenta foi desenvolvida para auxiliar no design e auditoria das políticas de segurança do ImageMagick. Esta ferramenta é baseada em extensa pesquisa e tem como objetivo garantir que as políticas sejam não apenas robustas, mas também livres de brechas que poderiam ser exploradas.

Abordagem de Lista de Permissões vs Lista de Bloqueios

Historicamente, as políticas do ImageMagick dependiam de uma abordagem de lista de bloqueios, onde codificadores específicos tinham o acesso negado. No entanto, mudanças no ImageMagick 6.9.7-7 alteraram esse paradigma, permitindo uma abordagem de lista de permissões. Esta abordagem primeiro nega o acesso a todos os codificadores e, em seguida, concede seletivamente acesso aos confiáveis, aprimorando a postura de segurança.

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

Sensibilidade a Maiúsculas nas Políticas

É crucial notar que os padrões de políticas no ImageMagick são sensíveis a maiúsculas. Portanto, garantir que os codificadores e módulos estejam corretamente em maiúsculas nas políticas é vital para evitar permissões não intencionais.

Limites de Recursos

O ImageMagick é propenso a ataques de negação de serviço se não estiver configurado corretamente. Definir limites de recursos explícitos na política é essencial para prevenir tais vulnerabilidades.

Fragmentação de Políticas

As políticas podem estar fragmentadas em diferentes instalações do ImageMagick, levando a conflitos ou substituições potenciais. É recomendado localizar e verificar os arquivos de políticas ativas usando comandos como:

$ find / -iname policy.xml

Uma Política Inicial Restritiva

Foi proposto um modelo de política restritiva, focando em limitações rigorosas de recursos e controles de acesso. Este modelo serve como base para o desenvolvimento de políticas personalizadas que estejam alinhadas com requisitos específicos de aplicativos.

A eficácia de uma política de segurança pode ser confirmada usando o comando identify -list policy no ImageMagick. Além disso, a ferramenta de avaliação mencionada anteriormente pode ser usada para refinar a política com base em necessidades individuais.

Referências