Vulnerabilidade Ghostscript explorável via ImageMagick

Ghostscript, um conjunto de ferramentas para processamento, conversão e geração de documentos nos formatos PostScript e PDF, possui uma vulnerabilidade crítica (CVE-2021-3781) que permite a execução arbitrária de código ao processar um arquivo especialmente formatado. Inicialmente, o problema foi levado ao conhecimento de Emil Lerner, que falou sobre a vulnerabilidade em 25 de agosto na conferência ZeroNights X realizada em São Petersburgo (o relatório descreveu como Emil, como parte dos programas de recompensa por bugs, usou a vulnerabilidade para receba bônus por demonstrar ataques aos serviços AirBNB, Dropbox e Yandex.Real Estate).

Em 5 de setembro, uma exploração funcional apareceu em domínio público que permite atacar sistemas que executam o Ubuntu 20.04, transmitindo um documento especialmente projetado carregado como uma imagem para um script da web em execução no servidor usando o pacote php-imagemagick. Além disso, de acordo com dados preliminares, uma exploração semelhante está em uso desde março. Foi alegado que os sistemas que executam o GhostScript 9.50 poderiam ser atacados, mas descobriu-se que a vulnerabilidade estava presente em todas as versões subsequentes do GhostScript, incluindo a versão 9.55 em desenvolvimento do Git.

A correção foi proposta em 8 de setembro e, após revisão por pares, aceita no repositório GhostScript em 9 de setembro. Em muitas distribuições, o problema permanece sem solução (o status da publicação das atualizações pode ser visualizado nas páginas do Debian, Ubuntu, Fedora, SUSE, RHEL, Arch Linux, FreeBSD, NetBSD). Uma versão do GhostScript com uma correção para a vulnerabilidade está planejada para ser publicada antes do final do mês.

O problema é causado pela possibilidade de contornar o modo de isolamento "-dSAFER" devido à verificação insuficiente dos parâmetros do dispositivo Postscript "%pipe%", que permitia a execução de comandos shell arbitrários. Por exemplo, para iniciar o utilitário id em um documento, basta especificar a linha “(%pipe%/tmp/&id)(w)file” ou “(%pipe%/tmp/;id)(r)file”.

Lembramos que as vulnerabilidades no Ghostscript representam um perigo maior, uma vez que este pacote é usado em muitos aplicativos populares para processamento de formatos PostScript e PDF. Por exemplo, Ghostscript é chamado durante a criação de miniaturas da área de trabalho, indexação de dados em segundo plano e conversão de imagens. Para um ataque bem-sucedido, em muitos casos basta simplesmente baixar o arquivo com o exploit ou visualizar o diretório com ele em um gerenciador de arquivos que suporte a exibição de miniaturas de documentos, por exemplo, no Nautilus.

Vulnerabilidades no Ghostscript também podem ser exploradas através de processadores de imagem baseados nos pacotes ImageMagick e GraphicsMagick, passando-lhes um arquivo JPEG ou PNG contendo código PostScript em vez de uma imagem (tal arquivo será processado no Ghostscript, pois o tipo MIME é reconhecido pelo conteúdo e sem depender de extensão).

Fonte: opennet.ru

Adicionar um comentário