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
HVCIPwned — CVE-2024-35250 demonstra que o HVCI não é uma defesa contra exploits de kernel apenas de dados. Enquanto um bug de driver fornecer uma primitiva arbitrária de R/W, a troca de token permanece uma técnica universal de elevação para SYSTEM — sem necessidade de execução de código. | Kitploit
Ferramentas/GitHubGitHub/xvalegendary/hvcipwned
Escalada de PrivilégiosAnálise de VulnerabilidadesExploraçãoTestes de PenetraçãoAprendizado e EducaçãoExploração de Binários
GitHubxvalegendary/hvcipwned

HVCIPwned

CVE-2024-35250 demonstra que o HVCI não é uma defesa contra exploits de kernel apenas de dados. Enquanto um bug de driver fornecer uma primitiva arbitrária de R/W, a troca de token permanece uma técnica universal de elevação para SYSTEM — sem necessidade de execução de código.

Ver Repositório
82há 5 mesesAinda não revisado

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

CVE-2024-35250

Escalada de privilégio local via desreferenciamento de ponteiro não confiável no driver Windows Kernel Streaming (ks.sys). Exploração baseada apenas em dados — contorna a Integridade de Código Protegida pelo Hipervisor (HVCI).

Resumo

CampoDetalhe
CVECVE-2024-35250
Componenteks.sys (Kernel Streaming)
Classe de BugDesreferenciamento de Ponteiro Não Confiável
ImpactoEoP para NT AUTHORITY\SYSTEM
HVCIContornado — sem execução de código no kernel
CorreçãoKB5039212 (Junho de 2024)
AlvosWindows 10 20H1+ / Windows 11 21H2-23H2

Vulnerabilidade

ks!KspPropertyHandler despacha solicitações de propriedade de nível de topologia através de KspProcessPropertyNode. O campo NodeId da estrutura KSP_NODE fornecida pelo usuário é usado como um índice em um array de tabela de automação interna sem validação de limites:

root@kitploit:~
NtDeviceIoControlFile
  ks!CKSFilter::DispatchDeviceIoControl
    ks!KspPropertyHandler
      ks!KspProcessPropertyNode
        *(automationTable + NodeId * stride)   <-- controlado pelo atacante

Um NodeId forjado que excede a contagem real de nós redireciona a desreferência para a memória do pool adjacente, gerando uma primitiva de leitura/escrita fora dos limites.

Bypass do HVCI

O exploit manipula exclusivamente estruturas de dados do kernel:

  1. Vazar endereço EPROCESS via NtQuerySystemInformation
  2. Acionar a vulnerabilidade para construir R/W arbitrário no kernel
  3. Percorrer ActiveProcessLinks para localizar PID 4 (System)
  4. Sobrescrever o token do processo atual com o token do System
  5. Gerar shell elevado

Nenhum shellcode é injetado. Nenhuma página de código não assinada é criada ou executada. Nenhum ponteiro de fluxo de controle é sequestrado.

ProteçãoStatus
HVCI / KMCIContornado
SMEPNão acionado
SMAPNão acionado
kCFGNão acionado

Compilação

Requisitos

  • Visual Studio 2019 / 2022
  • Windows SDK 10.0.19041.0+

Compilar

  1. Abra hvcipwned.sln no Visual Studio
  2. Selecione Release | x64
  3. Compilar → Compilar Solução (Ctrl+Shift+B)

Binário de saída: x64\Release\hvcipwned.exe

Compilação manual com cl.exe

root@kitploit:~
cl.exe /nologo /W4 /O2 /TC ^
    main.c device.c leak.c krw.c token.c exploit.c ^
    /I ^
    /Fe:exploit.exe ^
    /link setupapi.lib kernel32.lib advapi32.lib

Uso

root@kitploit:~
hvcipwned.exe

Execute a partir de uma sessão de usuário sem privilégios em um sistema vulnerável (sem patch). Em caso de sucesso, uma nova janela cmd.exe é aberta executando como NT AUTHORITY\SYSTEM.

Saída esperada

root@kitploit:~
[+] cve-2024-35250 exploit
[+] ks.sys untrusted pointer dereference -> eop
[~] hvci bypass via data-only attack
[+] os: 10.0.19045
[+] offsets: pid=0x440 links=0x448 token=0x4b8
[+] device: \\?\hdaudio#func_01&ven_10ec...
[+] device handle: 0x00000000000000f4
[~] calibrating r/w primitive...
[+] kernel base: 0xfffff80140000000
[~] spraying named pipes for pool layout...
[+] sprayed 5000 pipe pairs
[~] poking hole at index 2500...
[~] scanning for kernel pointer via oob read...
[+] found kernel ptr at node 3 offset 2: 0xffffa70500000000
[+] pipe object kernel addr: 0xffffa70500000000
[+] r/w primitive initialized (mode 1)
[+] current eprocess: 0xffffa705d90f4080
[+] kernel read pid: 1234 (expected: 1234)
[+] system eprocess: 0xffffa70500004080
[+] system token: 0xffffa70512345673
[+] token after swap: 0xffffa70512345670
[+] token swap successful
[+] escalation complete
[+] elevated shell spawned (pid: 5678)

press enter to exit...

Estrutura do Projeto

root@kitploit:~
hvcipwned/
├── hvcipwned.sln
├── hvcipwned.vcxproj
├── hvcipwned.vcxproj.filters
├── README.md
├── LICENSE
├── .gitignore
├── common.h         - tipos, macros de log, typedefs da API NT
├── offsets.h        - offsets de campo eprocess por compilação
├── device.h         - enumeração de dispositivo ks
├── leak.h           - vazamentos de endereço do kernel
├── krw.h            - contexto de primitiva r/w
├── token.h          - troca de token + geração de shell
└── exploit.h        - entrada de nível superior
├── main.c           - ponto de entrada
├── device.c         - abertura de dispositivo via setupapi
├── leak.c           - vazamentos via NtQuerySystemInformation
├── krw.c            - acionamento da vulnerabilidade + pool spray + r/w
├── token.c          - percurso eprocess + sobrescrita de token
└── exploit.c        - orquestração

Compilações Suportadas

Os offsets são resolvidos automaticamente em tempo de execução via RtlGetVersion.

Notas

  • Requer um dispositivo de filtro KS com nós de topologia (dispositivos de áudio funcionam)
  • O sucesso do pool spray depende da pressão de memória do sistema e do tempo
  • O exploit usa atributos de pipe nomeado para pool feng shui
  • Execute como um usuário comum (não administrador) para demonstrar a escalada de privilégio
  • Pode exigir várias tentativas devido à randomização do layout do pool

Mitigação

Referências

  • Comunicado da Microsoft
  • Notas de Atualização KB5039212
  • DEVCORE — Pwn2Own Vancouver 2024
  • varwara/CVE-2024-35250

Aviso

Este projeto é fornecido apenas para fins autorizados de pesquisa de segurança e educacionais. Não use contra sistemas sem permissão explícita por escrito. O autor não assume nenhuma responsabilidade por qualquer uso indevido ou dano causado por este software.

Licença

MIT

Baixar ferramenta
CET / Shadow Stack
Não acionado
SOCompilaçãoStatus
Windows 10 20H119041Suportado
Windows 10 20H219042Suportado
Windows 10 21H119043Suportado
Windows 10 21H219044Suportado
Windows 10 22H219045Suportado
Windows 11 21H222000Suportado
Windows 11 22H222621Suportado
Windows 11 23H222631Suportado
AçãoDetalhe
CorreçãoInstalar KB5039212 (Junho de 2024) ou posterior
DetecçãoMonitorar IOCTL_KS_PROPERTY com flag KSPROPERTY_TYPE_TOPOLOGY
EDRAlertar sobre alterações de integridade de token via callbacks do kernel EtwTi
FortificaçãoRestringir o acesso do usuário às interfaces de dispositivo KS via DACL