Bug no kernel do Linux abre portas para ataques cibernéticos mais amplos

Bug no kernel do Linux abre portas para ataques cibernéticos mais amplos. A falha de divulgação de informações permite o desvio de KASLR e a descoberta de vulnerabilidades adicionais não corrigidas em dispositivos ARM.

Uma vulnerabilidade de segurança de divulgação de informações foi descoberta no kernel do Linux, que pode ser explorada para expor informações na pilha de memória do kernel de dispositivos vulneráveis.

Especificamente, o bug ( CVE-2020-28588 ) existe na funcionalidade / proc / pid / syscall de dispositivos ARM de 32 bits executando Linux, de acordo com Cisco Talos, que descobriu a vulnerabilidade. A vulnerabilidade surge de uma conversão imprópria de valores numéricos ao ler o arquivo.

Segundo o Threat Post, com alguns comandos, os invasores podem gerar 24 bytes de memória de pilha não inicializada, que pode ser usada para ignorar a randomização do layout do espaço de endereço do kernel (KASLR). KASLR é uma técnica anti-exploit que coloca vários objetos aleatoriamente para evitar padrões previsíveis que podem ser adivinhados pelos adversários. Os ataques também seriam “impossíveis de detectar em uma rede remotamente”, explicou a empresa. E, “se utilizado corretamente, um invasor pode aproveitar esse vazamento de informações para explorar com sucesso vulnerabilidades Linux adicionais não corrigidas”.

Detalhes 

O kernel do Linux é o núcleo livre e de código aberto dos sistemas operacionais do tipo Unix. Esta vulnerabilidade existe especificamente na funcionalidade / proc / pid / syscall de dispositivos ARM de 32 bits executando Linux. 

TALOS-2020-1211 (CVE-2020-28588) é uma vulnerabilidade de divulgação de informações que pode permitir que um invasor visualize a memória da pilha do Kernel. A Cisco descobriu esse problema pela primeira vez em um dispositivo Azure Sphere (versão 20.10), um dispositivo ARM de 32 bits que executa um kernel Linux corrigido, mas o problemas está presente desde a v5.1-rc4 do kernel.

Proc é um pseudo-sistema de arquivos especial em sistemas operacionais do tipo Unix que é usado para acessar dados de processo dinamicamente mantidos no kernel. Ele apresenta informações sobre processos e outras informações do sistema em uma estrutura hierárquica semelhante a um arquivo. Por exemplo, ele contém subdiretórios / proc / [pid], cada um dos quais contém arquivos e subdiretórios que expõem informações sobre processos específicos, legíveis usando o ID de processo correspondente. 

No caso do arquivo “syscall”, que é um arquivo legítimo do sistema operacional Linux que contém logs de chamadas de sistema usadas pelo kernel, um invasor pode explorar a vulnerabilidade lendo / proc / <pid> / syscall.

Um invasor pode explorar esta vulnerabilidade lendo / proc / <pid> / syscall, um arquivo legítimo do sistema operacional Linux – tornando impossível detectá-lo remotamente em uma rede. Se utilizado corretamente, um invasor pode aproveitar esse vazamento de informações para explorar com êxito vulnerabilidades adicionais do Linux não corrigidas. 

Podemos ver a saída em qualquer sistema Linux cujo kernel foi configurado com CONFIG_HAVE_ARCH_TRACEHOOK”, de acordo com o relatório de bug da Cisco , divulgado publicamente na terça-feira, 27 de abril.

Este arquivo expõe o número de chamada do sistema e os registros de argumento da chamada do sistema que está sendo executada pelo processo, seguidos dos valores do ponteiro da pilha e dos registros do contador do programa”, explicou a empresa. “Os valores de todos os seis registros de argumento são expostos, embora a maioria das chamadas do sistema use menos registros.”

Os comandos shell que acionam a vulnerabilidade são:

  • # echo 0> / proc / sys / kernel / randomize_va_space (# necessário apenas para uma saída mais limpa)
  • $ while true; fazer cat / proc / self / syscall; feito | uniq (# espera por mudanças)
  • $ while true; libere &> / dev / null; pronto (# aciona mudanças)

Os usuários são incentivados a atualizar esses produtos afetados o mais rápido possível: versões do kernel do Linux 5.10-rc4, 5.4.66 e 5.9.8”, de acordo com o comunicado. “O Talos testou e confirmou que essas versões do kernel do Linux podem ser exploradas por esta vulnerabilidade.”

Os bugs do kernel do Linux são raros, mas acontecem. Por exemplo, em outubro passado, o Google e a Intel alertaram sobre a falha de alta gravidade “BleedingTooth” no BlueZ , a pilha de protocolos Bluetooth do Linux que fornece suporte para camadas e protocolos Bluetooth básicos para dispositivos de Internet das coisas (IoT) baseados em Linux. Ele pode ser explorado em um ataque de “clique zero” e, potencialmente, permitir privilégios escalonados nos dispositivos afetados. Em março deste ano o pesquisador de segurança Alexander Popov encontrou vulnerabilidades no kernel dos sistemas operacionais Linux que podem permitir que um invasor aumente os privilégios locais na rede da vítima. esta falha  também pode permitir que um invasor potencialmente roube dados, execute comandos administrativos ou instale malware em sistemas operacionais ou aplicativos de servidor.

Fonte: Threat Post

Veja também:

Sobre mindsecblog 2401 Artigos
Blog patrocinado por MindSec Segurança e Tecnologia da Informação Ltda.

2 Trackbacks / Pingbacks

  1. Reconhecimento Facial é polêmica e contrária à Privacidade
  2. Intel, AMD disputam descobertas sobre vulnerabilidades de chips

Deixe sua opinião!