©2022 - Todos os Direitos Reservados

Vulnerabilidade crítica no bootloader Shim afeta principais distribuições Linux

Vulnerabilidade crítica no bootloader Shim afeta principais distribuições Linux

Uma vulnerabilidade crítica no bootloader Shim do Linux permite que invasores executem código e assumam o controle de um sistema antes do carregamento do kernel, contornando os mecanismos de segurança existentes.

O que é o Shim?


Shim é um pequeno bootloader open-source mantido pela Red Hat, projetado para facilitar o processo de Secure Boot em computadores usando UEFI (Unified Extensible Firmware Interface).

A ferramenta é assinada com uma chave da Microsoft aceita por padrão na maioria das placas-mãe UEFI, usada para verificar a próxima etapa do processo de boot, normalmente carregando o bootloader GRUB2.

O Shim foi criado por necessidade para permitir que projetos open-source, como distribuições Linux, se beneficiem das vantagens do Secure Boot, como impedir a execução de código não autorizado ou malicioso durante a inicialização, mantendo o controle sobre o hardware.

Exploração:

A nova falha do Shim, rastreada como CVE-2023-40547, foi descoberta pelo pesquisador de segurança da Microsoft, Bill Demirkapi, e divulgada em 24 de janeiro de 2024.

O bug reside no código-fonte httpboot.c do Shim, usado para inicializar uma imagem de rede via HTTP.

"Ao recuperar arquivos via HTTP ou protocolos relacionados, o Shim tenta alocar um buffer para armazenar os dados recebidos", diz o commit para corrigir o bug no httpboot.c.

"Infelizmente, isso significa obter o tamanho de um cabeçalho HTTP, que pode ser manipulado para especificar um tamanho menor que os dados recebidos."

"Neste caso, o código usa acidentalmente o cabeçalho para a alocação, mas os metadados do protocolo para copiá-lo do buffer rx, resultando em uma escrita fora dos limites."

Mais detalhes sobre a falha tornaram-se disponíveis em 2 de fevereiro de 2024, com a Eclypsium publicando um relatório para chamar a atenção para esta falha de segurança.

A vulnerabilidade está na análise de respostas HTTP pelo Shim, permitindo que um invasor crie solicitações HTTP especialmente elaboradas para causar uma escrita fora dos limites.

Isso poderia permitir que um invasor comprometesse um sistema executando código privilegiado antes do carregamento do sistema operacional, efetivamente contornando os mecanismos de segurança implementados pelo kernel e pelo sistema operacional.

A Eclypsium diz que vários caminhos de exploração potenciais podem aproveitar a CVE-2023-40547, incluindo pontos de ataque locais, adjacentes à rede e remotos. O relatório da empresa destaca os três métodos a seguir:

  • Ataque Man-in-the-Middle (MiTM): Um invasor remoto pode executar um ataque MiTM, interceptando o tráfego HTTP para inicialização HTTP, potencialmente de qualquer posição de rede entre a vítima e o servidor.

  • Ataque local: Um invasor local com privilégios suficientes pode modificar as variáveis EFI ou a partição EFI usando um USB Linux live para alterar a ordem de inicialização e carregar um shim comprometido, executando código privilegiado sem desabilitar o Secure Boot.

  • Ataque PXE: Um invasor na mesma rede pode usar PXE para carregar um bootloader Shim comprometido, explorando a vulnerabilidade.

Impacto e correções:

A Red Hat emitiu um commit de código para corrigir a CVE-2023-40547 em 5 de dezembro de 2023, mas as distribuições Linux que suportam Secure Boot e usam Shim precisam lançar seus próprios patches.

Distribuições Linux que utilizam o Shim, como Red Hat, Debian, Ubuntu e SUSE, lançaram avisos com informações sobre a falha.

Os usuários do Linux são aconselhados a atualizar para a versão mais recente do Shim, v15.8, que contém uma correção para CVE-2023-40547 e cinco outras vulnerabilidades importantes.

A Eclypsium explica que os usuários do Linux também devem atualizar o UEFI Secure Boot DBX (lista de revogação) para incluir os hashes do software Shim vulnerável e assinar a versão corrigida com uma chave Microsoft válida.

Para fazer isso, primeiro atualize para o Shim 15.8 e depois aplique a atualização do DBX usando o comando 'fwupdmgr update' (necessita do fwupd).

Quer amadurecer seu programa de segurança cibernética através do gerenciamento de vulnerabilidades? Conheça a EcoTrust, a #1 plataforma SaaS de Inteligência em Riscos Cibernéticos, que através da identificação e priorização de riscos cibernéticos críticos para o negócio, ajuda empresas a serem mais resilientes a ataques cibernéticos. Agende uma demo aqui

Este artigo foi criado com uso de inteligência artificial generativa e teve a curadoria da Equipe EcoTrust.