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-38304-PoC — CVE-2021-38304 Prova de Conceito | Kitploit
Ferramentas/GitHubGitHub/philsajdak/cve-2021-38304-poc
Forensia de MemóriaAnálise de VulnerabilidadesExploraçãoAprendizado e EducaçãoExploração de Binários
GitHubphilsajdak/cve-2021-38304-poc

CVE-2021-38304-PoC

CVE-2021-38304 Prova de Conceito

Ver Repositório
4há 1 anoAinda 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-2021-38304 Prova de Conceito

Visão Geral

Este repositório contém uma prova de conceito para uma vulnerabilidade crítica de segurança em versões antigas do driver nipalk.sys da National Instruments. A vulnerabilidade permite execução arbitrária de código e divulgação de memória em modo kernel. Destina-se exclusivamente a pesquisa pessoal.

Descrição

O driver nipalk.sys trata incorretamente ponteiros fornecidos pelo usuário durante o processamento de uma requisição IOCTL específica. Esta falha permite que um atacante forneça um ponteiro de função que o driver chamará em contexto de kernel com parâmetros controlados.

Pontos-chave

  • Controle do Ponteiro de Função: O driver chama um ponteiro de função fornecido pelo usuário sem validação adequada.
  • Controle de Parâmetros: O atacante pode controlar os registradores RCX e RDX durante a chamada de função.
  • Divulgação de Memória: Ao chamar funções como RtlCopyMemory, um atacante pode ler memória arbitrária do kernel.
  • Negação de Serviço (DoS): Passar um ponteiro de função inválido causa uma falha do sistema devido à falta de validação de entrada do driver.

Causa Raiz

A vulnerabilidade surge da falha do driver em validar ponteiros fornecidos por aplicativos em modo de usuário. Durante o processamento do IOCTL 0xABCD03C4, o driver recupera um ponteiro de função de uma estrutura controlada pelo usuário e o invoca sem verificações adequadas:

root@kitploit:~
0045561e 48 8b 01        MOV        RAX,qword ptr [param_1]
00455621 49 8b 52 18     MOV        irp,qword ptr [R10 + 0x18]
00455625 ff 50 08        CALL       qword ptr [RAX + 0x8]
  • O ponteiro de função em [RAX + 8] é executado no contexto do kernel.
  • Os parâmetros RCX e RDX são controlados pelo usuário.

Exemplo de Saída

  • Vazamento de Memória Bem-sucedido:
root@kitploit:~
[+] Starting exploit
[+] Memory allocated
[+] Values before IOCTL:
   exploit->dummy: 00000000001b0000
   exploit->function_pointer: fffff8017ea21300
[+] Device opened successfully
[+] Sending IOCTL
[+] Values after IOCTL:
   exploit->dummy: 7208f88349c18b48
   exploit->function_pointer: ffff7710f8834937
[+] DeviceIoControl succeeded. Bytes returned: 8
[+] Buffer Output: 1769472
[!] WARNING: exploit->dummy has changed!
[!] WARNING: exploit->function_pointer has changed!
[+] Exploit finished

Aviso Legal

Esta PoC destina-se apenas a fins educacionais.

Baixar ferramenta