Pesquisa técnica sobre uma bypass do UEFI Secure Boot causada por um carregador PE personalizado inseguro, incluindo análise de causa raiz, fluxo de trabalho de exploração e uma prova de conceito educacional.
Este repositório contém material de pesquisa relacionado à CVE-2024-7344, uma vulnerabilidade de bypass do Secure Boot que afeta sistemas UEFI. Ele centraliza a análise técnica da vulnerabilidade, documentação do fluxo de ataque e aplicações recriadas projetadas para reproduzir o comportamento vulnerável em ambientes controlados. O repositório também inclui documentação e recursos de pesquisa destinados a ajudar pesquisadores de segurança a entender, estudar e experimentar as técnicas associadas a esta vulnerabilidade.
A CVE-2024-7344 foi originalmente descoberta e divulgada de forma responsável pela Equipe de Pesquisa da ESET, com suporte coordenado de divulgação do CERT/CC. Referências oficiais e da comunidade:
Este repositório inclui uma prova de conceito educacional simplificada que reproduz a mesma classe de vulnerabilidade da CVE-2024-7344. Além disso, parte da implementação original do mundo real foi analisada e documentada por meio de um esforço dedicado de pesquisa de segurança UEFI.
Pesquisadores interessados em entender a origem histórica desta vulnerabilidade, o formato ALRM original, o loader RxPE personalizado e a evolução dos produtos afetados após a revogação da Microsoft devem consultar o repositório complementar "UEFI-Security-Research-Howyar-SysReturn-NetCopy".
A aplicação UEFI vulnerável x32 original afetada pela CVE-2024-7344 está incluída neste repositório.
Sabe-se que o binário x64 está disponível dentro de um arquivo hospedado no VirusTotal. O acesso a esta amostra requer uma conta VirusTotal Enterprise e, no momento da redação deste texto, não tivemos acesso para baixá-la. Para referência, a amostra pode ser encontrada no seguinte URL para pesquisadores que tenham o acesso apropriado:
A CVE-2024-7344 é uma vulnerabilidade de bypass do UEFI Secure Boot causada por uma aplicação UEFI de terceiros assinada pela Microsoft que carrega e executa incorretamente binários UEFI não assinados durante o processo de inicialização. A vulnerabilidade permite que atacantes executem código não confiável antes que o sistema operacional seja carregado, quebrando efetivamente a cadeia de confiança do UEFI Secure Boot mesmo quando o Secure Boot está habilitado.
Ao contrário de outras vulnerabilidades de bypass do Secure Boot baseadas em corrupção de memória ou manipulação de NVRAM, a CVE-2024-7344 é o resultado de uma falha de lógica e design. A aplicação UEFI afetada implementa seu próprio loader PE personalizado em vez de depender dos serviços UEFI padrão (LoadImage e StartImage), contornando assim toda a verificação criptográfica normalmente imposta pelo Secure Boot.
Como a aplicação vulnerável é assinada com o certificado UEFI de terceiros da Microsoft e é confiável por padrão na maioria dos sistemas, a exploração ocorre em um estágio de execução altamente privilegiado e inicial da plataforma.
O Secure Boot é um recurso de segurança central do UEFI projetado para impor a cadeia de confiança da plataforma, do firmware ao sistema operacional. Seu objetivo principal é impedir que componentes de inicialização não autorizados ou maliciosos, como bootkits, sejam executados durante o processo de inicialização.
Em um nível alto, o Secure Boot funciona validando criptograficamente executáveis UEFI antes que eles tenham permissão para serem executados. Essa validação é realizada usando dois bancos de dados mantidos pelo firmware:
Uma aplicação UEFI tem permissão para ser executada se:
Por padrão, a maioria dos sistemas é fornecida com os seguintes certificados confiáveis no db:
A aplicação vulnerável afetada pela CVE-2024-7344 é assinada com o certificado Microsoft Corporation UEFI CA 2011. Como esse certificado é amplamente confiável entre fornecedores e plataformas, qualquer vulnerabilidade dentro de tal aplicação assinada tem impacto global e pode ser explorada na maioria dos sistemas UEFI.
A vulnerabilidade foi descoberta pela Equipe de Pesquisa da ESET durante a análise de componentes UEFI fornecidos com vários produtos de software de recuperação em tempo real. O reconhecimento inicial revelou a presença de uma aplicação UEFI assinada pela Microsoft chamada reloader.efi, implantada junto com um arquivo de dados chamado cloak.dat na Partição de Sistema EFI (ESP).
A inspeção da aplicação mostrou que ela foi projetada para carregar e executar um payload UEFI adicional do disco durante a inicialização do sistema. Embora tal comportamento não seja inerentemente inseguro, uma engenharia reversa adicional revelou que a aplicação não usa os serviços padrão de carregamento de imagem UEFI e não impõe verificação do Secure Boot no payload carregado. Uma investigação adicional confirmou que o mesmo bootloader vulnerável era usado em vários produtos de diferentes fornecedores.
A causa raiz da CVE-2024-7344 reside no uso de um loader PE personalizado implementado dentro de uma aplicação UEFI assinada. Especificamente:
Ao contornar LoadImage e StartImage, a aplicação evita completamente a verificação do Secure Boot. Como resultado, qualquer binário UEFI não assinado pode ser executado independentemente do estado do Secure Boot. Isso representa uma violação fundamental das premissas do Secure Boot e é classificado como uma falha de segurança em nível de design, em vez de um bug de implementação.
A exploração da CVE-2024-7344 não requer corrupção de memória, condições de corrida ou primitivas de exploração complexas. Em vez disso, ela depende do abuso da funcionalidade pretendida da aplicação vulnerável.
Um fluxo de trabalho de exploração típico envolve:
Durante a inicialização:
Isso permite a implantação confiável de bootkits UEFI como BlackLotus ou HybridPetya em sistemas com Secure Boot habilitado.
O bootloader vulnerável foi distribuído como parte de vários produtos legítimos de software de recuperação e backup, incluindo:
A Microsoft mitigou a CVE-2024-7344 revogando os binários UEFI afetados por meio de atualizações do dbx do Secure Boot lançadas em 14 de janeiro de 2025, portanto, sistemas que aplicaram as revogações UEFI mais recentes estão protegidos contra a exploração desta vulnerabilidade.
Trabalhando em algo semelhante? Pesquisando UEFI, segurança de Kernel, exploração ou outro tópico de segurança interessante? Se você precisar de ajuda para desenvolver um exploit, explorar uma técnica ou apenas quiser trocar ideias, não hesite em entrar em contato. Estou sempre aberto a discutir pesquisas, ajudar onde puder e colaborar em projetos interessantes. Sinta-se à vontade para me contatar no LinkedIn.