A ameaça de vulnerabilidades no sistema Windows à segurança do ecossistema Web3: análise profunda dos mecanismos de exploração pelos especialistas.

robot
Geração do resumo em andamento

Análise de vulnerabilidades graves do sistema Microsoft Windows: pode comprometer a segurança do ecossistema Web3

No mês passado, um patch de segurança lançado pela Microsoft corrigiu uma vulnerabilidade de elevação de privilégios do Windows que estava sendo explorada por hackers. Essa vulnerabilidade afeta principalmente versões anteriores do sistema Windows, e parece que o Windows 11 não é afetado.

Este artigo analisará como os atacantes continuam a explorar essas vulnerabilidades no contexto atual de fortalecimento constante das medidas de segurança. Nossa análise é baseada no Windows Server 2016.

Contexto da Vulnerabilidade

Este é um vulnerabilidade 0day, ou seja, uma vulnerabilidade que ainda não foi divulgada nem corrigida. Os hackers podem explorá-la para atacar sem que os usuários tenham conhecimento, causando grandes danos.

Através desta vulnerabilidade a nível do sistema Windows, os hackers podem obter controle total do sistema. Isso pode levar a sérias consequências como vazamento de informações pessoais, falhas no sistema, perda de dados, perdas financeiras, entre outros. Para os usuários de Web3, as chaves privadas e os ativos digitais podem ser roubados. De uma perspectiva mais ampla, essa vulnerabilidade pode até afetar todo o ecossistema Web3 baseado na infraestrutura Web2.

Numen exclusivo: falha 0day da Microsoft pode desmantelar o cenário Web3 em nível de sistema e físico

Análise de Patch

Analisando o código do patch, parece que o problema reside no fato de que a contagem de referências de um objeto foi processada uma vez a mais. Ao olhar para os comentários do código anterior, descobrimos que o código anterior só bloqueava o objeto da janela, sem bloquear o objeto do menu na janela, o que pode ter levado a uma referência incorreta do objeto do menu.

Numen Exclusivo: Vulnerabilidade 0day da Microsoft pode desmantelar o jogo Web3 em nível de sistema + físico

Reproduzindo Vulnerabilidades

Analisando o contexto da função de vulnerabilidade, descobrimos que o menu passado xxxEnableMenuItem() geralmente já foi bloqueado na função superior, e aqui há dúvidas sobre qual objeto de menu realmente precisa ser protegido.

Uma análise mais aprofundada revelou que a função MenuItemState em xxxEnableMenuItem retorna dois tipos possíveis de menus: o menu principal da janela ou um submenu (, ou mesmo um subsubmenu ).

Construímos uma estrutura de menu especial em quatro camadas para explorar vulnerabilidades; esses menus precisam atender a algumas condições específicas para passar na verificação da função. A chave está em remover certas relações de referência entre os menus quando xxxRedrawTitle retorna à camada do usuário, liberando objetos de menu específicos. Assim, no ponto de retorno da função xxxEnableMenuItem, o objeto de menu referenciado já estará inválido.

Numen Exclusivo: Vulnerabilidade 0day da Microsoft pode derrubar o jogo Web3 em nível de sistema + físico

Exploração de Vulnerabilidades

Ao desenvolver o exploit (exp), consideramos principalmente duas abordagens:

  1. Executar código shellcode: referência a vulnerabilidades semelhantes anteriores, mas pode haver alguns obstáculos na nova versão do Windows.

  2. Utilizar primitivas de leitura e escrita para modificar o endereço do token: este método ainda tem exp público recente para referência, e apresenta uma boa generalidade em relação ao layout da memória de pilha de desktop e às primitivas de leitura e escrita.

Escolhemos a segunda opção, dividindo todo o processo de utilização em duas etapas: como explorar a vulnerabilidade UAF para controlar o valor de cbwndextra e como realizar operações de leitura e escrita de forma estável.

Numen exclusivo: a vulnerabilidade 0day da Microsoft pode desmantelar o jogo Web3 a nível de sistema + físico

A chave é encontrar um local na estrutura de endereço que possamos construir onde dados possam ser escritos arbitrariamente. No final, escolhemos implementar isso através de uma operação AND em um sinalizador na função xxxRedrawWindow.

Numen Exclusivo: Vulnerabilidade 0day da Microsoft pode derrubar o jogo Web3 em níveis de sistema + físico

Para conseguir um layout de memória estável, projetámos pelo menos três objetos HWND de 0x250 bytes consecutivos, libertando os objetos intermédios e ocupando-os com objetos HWNDClass. Os objetos HWND nas extremidades são utilizados para verificar através de funções e implementar os primitivos de leitura e escrita finais.

Numen exclusivo: vulnerabilidade 0day da Microsoft pode desmantelar o jogo Web3 em nível de sistema + físico

Nós também podemos determinar com precisão se os objetos estão dispostos conforme o esperado através dos endereços de manípulo do núcleo vazados. Em termos de primitivas de leitura e escrita, usamos GetMenuBarInfo() para realizar leituras arbitrárias e SetClassLongPtr() para realizar gravações arbitrárias.

Numen Exclusivo: Vulnerabilidade 0day da Microsoft pode desmantelar o jogo Web3 no sistema + camada física

Conclusão

  1. A Microsoft está a tentar reestruturar o código relacionado com win32k usando Rust, no futuro, este tipo de vulnerabilidades pode ser eliminado em novos sistemas.

  2. O processo de exploração deste tipo de vulnerabilidade é relativamente simples, dependendo principalmente da divulgação do endereço do manipulador da pilha de desktop. Se este problema não for resolvido de forma completa, sistemas antigos continuarão a enfrentar riscos de segurança.

  3. A descoberta desta vulnerabilidade pode ser atribuída a técnicas de verificação de cobertura de código mais aprimoradas.

  4. Para a deteção de exploração de vulnerabilidades, além de monitorizar funções críticas, também deve-se prestar atenção a layouts de memória anómalos e comportamentos de leitura e escrita de dados.

Numen exclusivo: vulnerabilidade 0day da Microsoft pode revelar o jogo Web3 em níveis de sistema + físico

TOKEN-3.58%
Ver original
Esta página pode conter conteúdo de terceiros, que é fornecido apenas para fins informativos (não para representações/garantias) e não deve ser considerada como um endosso de suas opiniões pela Gate nem como aconselhamento financeiro ou profissional. Consulte a Isenção de responsabilidade para obter detalhes.
  • Recompensa
  • 7
  • Repostar
  • Compartilhar
Comentário
0/400
SelfSovereignStevevip
· 08-14 15:57
Usa Linux, não há nada a complicar.
Ver originalResponder0
rug_connoisseurvip
· 08-13 09:13
Mais uma falha do Windows, já estou habituado!
Ver originalResponder0
rekt_but_not_brokevip
· 08-12 05:14
Ganhar dinheiro não pode esperar, a Carteira deve ser protegida primeiro!
Ver originalResponder0
MetaLord420vip
· 08-12 05:02
Quem ainda usa Windows se atreve a mexer com web3?!
Ver originalResponder0
SighingCashiervip
· 08-12 05:00
O velho sistema apresenta este problema, já era hora de trocar.
Ver originalResponder0
ForkMastervip
· 08-12 04:59
fazer as pessoas de parvas não dá mais? correr para o buraco da Mineração?
Ver originalResponder0
P2ENotWorkingvip
· 08-12 04:58
o win10 realmente não aguenta
Ver originalResponder0
  • Marcar
Faça trade de criptomoedas em qualquer lugar e a qualquer hora
qrCode
Escaneie o código para baixar o app da Gate
Comunidade
Português (Brasil)
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)