Skip to content
KitploitKITPLOIT
FerramentasExploitsBlog
Log in
Enviar
FerramentasExploitsBlog
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-2026-51585 — # Exploração do rt26cx21x64.sys (família Realtek PCIe GbE/2.5GbE/5GbE) | Kitploit
Ferramentas/GitHubGitHub/catforgor/cve-2026-51585
Análise de VulnerabilidadesExploraçãoEngenharia ReversaSegurança de Hardware e IoTExploração de Binários
GitHubcatforgor/cve-2026-51585

CVE-2026-51585

# Exploração do rt26cx21x64.sys (família Realtek PCIe GbE/2.5GbE/5GbE)

Ver Repositório
310há 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

realtek poc

Exploração do rt26cx21x64.sys (família Realtek PCIe GbE/2.5GbE/5GbE)

Visão Geral

O OID 0xFF816871 mapeia o bar MMIO da placa de rede para o espaço de endereço virtual do processo chamador, (MmLockedPagesSpecifyCache), acessível a partir do modo usuário via \.\RealTekCard{GUID}

Este IOCTL (0x0012C818) é protegido por um valor de registro (DrvMode=4)

Uma vez que temos acesso aos registradores MMIO, programamos os anéis de descritores tx/rx da placa de rede em modo loopback para ler/gravar endereços físicos arbitrários (AllocateUserPhysicalPages nos fornece os PFNs).

Engenharia Reversa

Despacho de IOCTL

O IOCTL 0x12C008 (1230872) é o primeiro ramo de despacho vulnerável. 0x12C00C e 0x12C010 levam a caminhos diferentes, a5 carrega o código do IOCTL através do switch

Despacho de IOCTL

Portão de Modo

Antes de alcançar o caminho DMA, o driver verifica um flag global DrvMode, o bit 2 deve estar definido ou nunca alcançaremos o caminho vulnerável de mapeamento MMIO.

Verificação do portão de modo

dword_1400D0208 e 4 é a verificação

Proteções de Bypass

Duas proteções ficam na frente do caminho vulnerável, ambas devem ser avaliadas como falsas para entrar no caminho DMA, estas são um flag de byte na extensão do dispositivo e a verificação de modo na imagem anterior

Bypass de proteções

!_(_BYTE _)(a1 + 12465) é fácil de contornar, apenas temos que garantir que o dispositivo não esteja inicializado.

sub_14001B67C também é trivialmente fácil.

Alocação de MDL

O driver aloca um MDL sobre um endereço físico fornecido pelo chamador sem nenhuma validação, não há validação de limites ou intervalo, absolutamente nada.

Alocação de MDL

Mapeamento Físico

O MDL é mapeado no VA do kernel e o endereço base é fornecido ao chamador, 0x40000010 é MAP_NO_EXECUTE & MmNonCached.

MmMapLockedPages

MmMapLockedPagesSpecifyCache produz o VA mapeado que é gravado em *a2 e retornado ao modo usuário, isso nos dá uma primitiva arbitrária de leitura/gravação física.

Requisitos

  • Um adaptador realtek compatível que corresponda ao nic.h.

Uso

Execute como administrador.

Após a primeira execução, os valores de registro serão definidos e você precisará reiniciar o seu PC.

Para que isso funcione, sua placa de rede deve estar em estado de link UP (para que possamos processar descritores).

Ou:

  • Conecte um cabo ethernet a outro PC, roteador ou qualquer coisa que forneça link UP

OU

  • Curto-circuite os pinos 1-2 e 3-6 na porta RJ45 para ativar o link UP

Compilação

root@kitploit:~
$ cmake -B build
$ cmake --build build --config Release

Notas

  • Removi a maioria das partes interessantes (cr3, stomping, etc, etc), mas esta é a POC base
Baixar ferramenta