Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
CVE-2021-1732 — Exploit de kernel do Windows para CVE-2021-1732, um uso após liberação em win32kfull.sys que permite escalonamento de privilégio local via criação de janela manipulada e manipulação de callback. | Kitploit
Ferramentas/GitHubGitHub/beneficialcode/cve-2021-1732
Escalada de PrivilégiosAnálise de VulnerabilidadesExploraçãoExploração de Binários
GitHubbeneficialcode/cve-2021-1732

CVE-2021-1732

Exploit de kernel do Windows para CVE-2021-1732, um uso após liberação em win32kfull.sys que permite escalonamento de privilégio local via criação de janela manipulada e manipulação de callback.

Ver Repositório

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar
11há 4 anosAinda não revisado

CVE-2021-1732

  • A vulnerabilidade ocorre no driver gráfico do Windows na função win32kfull!NtUserCreateWindowEx, devido a uma falta de sincronização entre a alocação de memória em modo usuário durante um callback do kernel e a configuração do atributo tagWND->flag. Isso permite falsificar o valor tagWND->offset, resultando em um estouro de memória.
  • Quando o driver win32kfull.sys chama NtUserCreateWindowEx para criar uma janela, verifica tagWND->cbWndExtra (quantidade extra de memória alocada para a instância da janela). Se esse valor não for nulo, chama a função win32kfull!xxxClientAllocWindowClassExtraBytes que faz um callback para a camada de usuário user32.dll!__xxxClientAllocWindowClassExtraBytes para alocar espaço. O endereço alocado é corrigido na pilha usando a função NtCallbackReturn, retornando ao kernel para salvar e continuar a execução. No entanto, quando o valor tagWND->flag contém o atributo 0x800, esse valor salvo se torna um offset.
  • Um atacante pode interceptar a função user32.dll!_xxxClientAllocWindowClassExtraBytes, chamar NtUserConsoleControl para modificar tagWND->flag incluindo o atributo 0x800, e então usar NtCallbackReturn para retornar um valor personalizado para tagWND->offset no kernel.
  1. A vulnerabilidade ocorre no driver gráfico do Windows na função win32kfull!NtUserCreateWindowEx.
  2. Quando o driver win32kfull.sys chama NtUserCreateWindowEx para criar uma janela, verifica tagWND->cbWndExtra (quantidade extra de memória alocada para a instância da janela). Se esse valor não for nulo, chama a função win32kfull!xxxClientAllocWindowClassExtraBytes que faz um callback para a camada de usuário user32.dll!__xxxClientAllocWindowClassExtraBytes para alocar memória. O endereço alocado é corrigido na pilha usando NtCallbackReturn, retornando ao kernel para salvar e continuar. No entanto, quando o valor tagWND->flag contém o atributo 0x800, esse valor é tratado como um offset.
  3. Use NtUserConsoleControl para modificar o flag incluindo o atributo 0x800.

17763:[[gpKernelHandleTable] + 0x18 * ((hwnd->cx * [gSharedInfo+0x10]) >> 5)]

Menciona-se que chamar NtUserConsoleControl redefine os valores de tagWND->offset e tagWND->flag incluindo o atributo 0x800. Quando o atributo 0x800 está presente no flag, o acesso é feito via offset. Nosso objetivo ao chamar NtUserConsoleControl é modificar o valor tagWND->flag para incluir o atributo 0x800, e então chamar NtCallbackReturn para retornar um valor específico, a fim de modificar tagWND->offset, pois win32kfull!xxxClientAllocWindowClassExtraBytes coloca o valor de retorno em tagWND->offset.

+0x058 KernelCallbackTable : 0x00007ffb0e9d1070 Void

00007ffb0e9d1448`

Baixar ferramenta