Entregando drivers vulneráveis de kernel assinados continua popular entre os atacantes

Views: 256
0 0
Read Time:3 Minute, 27 Second

Os pesquisadores da ESET analisaram profundamente o abuso de motoristas vulneráveis. Vulnerabilidades em drivers assinados são principalmente utilizadas por desenvolvedores de fraude de jogos para contornar mecanismos anti-cheat, mas eles também têm sido observados sendo usados por vários grupos APT e em malware de commodities.

Entre os vários tipos de kernel (o componente central do sistema operacional Windows) estão drivers de “software” que fornecem recursos específicos, não relacionados ao hardware, como depuração de software e diagnósticos, análise de sistema, etc. Estes são propensos a estender a superfície de ataque significativamente.

Embora carregar diretamente um driver malicioso e não assinado não seja mais possível nas versões mais recentes do Windows, e os rootkits do kernel são considerados uma coisa do passado, ainda existem maneiras de carregar códigos maliciosos no kernel, especialmente abusando de drivers legítimos e assinados. De fato, existem muitos drivers de vários fornecedores de hardware e software disponíveis que oferecem funcionalidade para acessar totalmente o kernel com o mínimo de esforço.

As vulnerabilidades mais frequentemente observadas em drivers de kernel

  • Falhas na ação de verificações que restringem o acesso à leitura e à gravação de registros específicos de modelos (MSRs)
  • Expondo a capacidade de mapear a memória física do modo de usuário para leitura e escrita, e
  • Expondo a capacidade de acessar a memória do kernel virtual do modo de usuário para leitura e escrita.

“Quando os atores de malware precisam executar código malicioso no kernel do Windows em sistemas x64 com a aplicação da assinatura do driver no local, carregar um driver de kernel assinado vulnerável parece ser uma opção viável para fazê-lo. Essa técnica é conhecida como Bring Your Own Vulnerable Driver, abreviada como BYOVD, e tem sido observada sendo usada na natureza tanto por atores de alto perfil da APT quanto em malware de commodities”, explica Peter Kálnai,pesquisador sênior de malware da ESET, e um dos co-pesquisadores desta pesquisa.

Exemplos de atores maliciosos usando a técnica BYOVD incluem o grupo Slingshot APT, que implementou seu módulo principal, chamado Cahnadr, como um driver de modo kernel que pode ser carregado por drivers de kernel assinados vulneráveis. Outro exemplo é o grupo InvisiMole APT, descoberto por pesquisadores em 2018. Uma nova variante do malware InvisiMole é o único caso até agora que o ESET observou da exploração do MSR nos sistemas Windows 10 x64 sendo usado na natureza por um ator mal-intencionado.

Outro exemplo é o ransomware RobbinHood que, como malware de commodities, visa alcançar o maior número possível de pessoas. Assim, vê-lo usar uma técnica BYOVD é raro, mas poderoso. Este ransomware aproveita um driver de placa-mãe GIGABYTE vulnerável para desativar a aplicação da assinatura do motorista e instalar seu próprio driver malicioso. Finalmente, loJax, outra descoberta da ESET em 2018 e o primeiro rootkit UEFI usado na natureza, usou o driver RWEverything para ter acesso aos módulos UEFI das vítimas.

Os pesquisadores não só catalogaram vulnerabilidades existentes, mas também procuraram novas — uma lista completa das vulnerabilidades descobertas pode ser encontrada no post do blog. Os fornecedores contatados foram muito proativos durante o processo de divulgação e ansiosos para corrigir as vulnerabilidades descobertas.

“Embora existam vários mecanismos empregados pela CPU e/ou pelo sistema operacional, a maioria deles pode ser contornada com algumas técnicas inteligentes e não são muito eficazes se o atacante se preparar para eles com antecedência”, diz Kálnai.

Técnicas úteis de mitigação

  • Segurança baseada em virtualização: Este é um recurso introduzido no Windows 10 que aproveita a virtualização do hardware para colocar o kernel em uma caixa de areia, protegendo assim o sistema operacional com várias proteções.
  • Revogação do certificado: Nos sistemas Windows modernos, os drivers precisam ter uma assinatura válida com base em um certificado “aceitável”. Assim, revogar o certificado de um motorista vulnerável seria uma maneira fácil de “desarmá-lo” e torná-lo inútil na maioria dos casos.
  • Lista de bloqueio de drivers: Esta é uma prática adotada tanto pela Microsoft quanto por vários fornecedores de produtos de segurança de terceiros, incluindo o ESET, para detectar e excluir os drivers vulneráveis mais notórios quando encontrados em um sistema.

FONTE: HELPNET SECURITY

POSTS RELACIONADOS