A análise de segurança do BusyBox revela 14 vulnerabilidades menores

Pesquisadores da Claroty e da JFrog publicaram os resultados de uma auditoria de segurança do BusyBox, um pacote amplamente utilizado em dispositivos embarcados que oferece um conjunto de utilitários UNIX padrão empacotados em um único arquivo executável. A auditoria identificou 14 vulnerabilidades que já foram corrigidas na versão de agosto do BusyBox 1.34. Quase todos os problemas são inofensivos e questionáveis ​​do ponto de vista de serem usados ​​em ataques reais, pois requerem a execução de utilitários com argumentos recebidos de fora.

Separadamente, é destacada a vulnerabilidade CVE-2021-42374, que permite causar uma negação de serviço ao processar um arquivo compactado especialmente projetado com o utilitário unlzma e, no caso de compilação a partir das opções CONFIG_FEATURE_SEAMLESS_LZMA, também por qualquer outro BusyBox componentes, incluindo tar, unzip, rpm, dpkg, lzma e man .

As vulnerabilidades CVE-2021-42373, CVE-2021-42375, CVE-2021-42376 e CVE-2021-42377 podem causar uma negação de serviço, mas exigem que os utilitários man, ash e hush sejam executados com parâmetros especificados pelo invasor . Vulnerabilidades de CVE-2021-42378 a CVE-2021-42386 afetam o utilitário awk e podem potencialmente levar à execução de código, mas para isso o invasor precisa fazer um determinado padrão executar no awk (é necessário iniciar o awk com os dados recebidos do atacante).

Adicionalmente, nota-se também uma vulnerabilidade (CVE-2021-43523) nas bibliotecas uclibc e uclibc-ng, relacionada ao fato de que ao acessar as funções gethostbyname(), getaddrinfo(), gethostbyaddr() e getnameinfo(), o nome de domínio não é verificado e limpo. o nome retornado pelo servidor DNS. Por exemplo, em resposta a uma determinada solicitação de resolução, um servidor DNS controlado por um invasor pode retornar hosts no formato “ alert(‘xss’) .attacker.com" e eles serão devolvidos inalterados para algum programa que possa exibi-los na interface da web sem limpeza. O problema foi corrigido na versão uclibc-ng 1.0.39 adicionando código para validar nomes de domínio retornados, semelhante ao Glibc.

Fonte: opennet.ru

Adicionar um comentário