Vulnerabilidade na biblioteca PharStreamWrapper afetando Drupal, Joomla e Typo3

na biblioteca PharStreamWrapper, que fornece manipuladores para proteção contra de ataques através da substituição de arquivos no formato “Phar”, identificado vulnerabilidade (CVE-2019-11831), que permite ignorar a proteção contra desserialização de código substituindo caracteres “..” no caminho. Por exemplo, um invasor pode usar uma URL como “phar:///path/bad.phar/../good.phar” para um ataque, e a biblioteca destacará o nome base “/path/good.phar” quando verificação, embora durante o processamento adicional de tal caminho o arquivo "/path/bad.phar" seja usado.

A biblioteca foi desenvolvida pelos criadores do CMS TYPO3, mas também é utilizada em projetos Drupal e Joomla, o que os torna também suscetíveis a vulnerabilidades. Problema corrigido nas versões PharStreamWrapper 2.1.1 e 3.1.1. O projeto Drupal corrigiu o problema nas atualizações 7.67, 8.6.16 e 8.7.1. No Joomla o problema aparece desde a versão 3.9.3 e foi corrigido na versão 3.9.6. Para corrigir o problema no TYPO3, você precisa atualizar a biblioteca PharStreamWapper.

Do lado prático, uma vulnerabilidade no PharStreamWapper permite que um usuário do Drupal Core com permissões de 'Administrar tema' carregue um arquivo phar malicioso e faça com que o código PHP contido nele seja executado sob o disfarce de um arquivo phar legítimo. Lembre-se de que a essência do ataque de “desserialização Phar” é que ao verificar os arquivos de ajuda carregados da função PHP file_exists(), esta função desserializa automaticamente os metadados dos arquivos Phar (arquivo PHP) ao processar caminhos começando com “phar://” . É possível transferir um arquivo phar como uma imagem, pois a função file_exists() determina o tipo MIME por conteúdo e não por extensão.

Fonte: opennet.ru

Adicionar um comentário