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-2026-43499-poc — Arma de prova de conceito para CVE-2026-43499 (GhostLock), uma falha no rtmutex do kernel Linux que permite escalonamento local de privilégios. Inclui cadeias de exploração por distribuição, documentação técnica e testes de confiabilidade. | Kitploit
Ferramentas/GitHubGitHub/lkeld/cve-2026-43499-poc
Escalada de PrivilégiosFrameworks de ExploraçãoAnálise de VulnerabilidadesExploraçãoExploração de Binários
GitHublkeld/cve-2026-43499-poc

CVE-2026-43499-poc

Arma de prova de conceito para CVE-2026-43499 (GhostLock), uma falha no rtmutex do kernel Linux que permite escalonamento local de privilégios. Inclui cadeias de exploração por distribuição, documentação técnica e testes de confiabilidade.

Ver Repositório
há 12h 8mAinda 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

Pesquisa de armamento para CVE-2026-43499 (ghostlock). o bug do caminho proxy remove_water() do rtmutex que deixa o pi_blocked_on de uma tarefa pendurado no próprio frame de pilha do kernel que foi removido. A classe do bug e a estratégia original do exploit são creditadas a nebusec (o write-up deles aqui) tudo neste repositório é meu próprio trabalho por distribuição:

cada família de kernel precisa de primitivas materialmente diferentes e é isso que torna tudo tão interessante.

O gatilho do Ghostlock é completamente sem privilégios (três futexes, duas threads e sem namespaces). O processo de transformar o ponteiro pendurado em root é onde cada uma das distros diverge; isso se resume à geometria do frame, mitigações e ao que "bytes controlados em um endereço de kernel conhecido" significam — tudo muda. Este repositório vai coletar cadeias por família alvo.

cadeias

AlvoCadeiaStagingStatus
RHEL/CentOS 7 — 3.10.0-1160.102.1.el7el7/ — página de alias physmap + pintor auxv + caminhada sched_setschedulerroot-no-namespace (container privilegiado)funcionando, teste de estresse 40/40 em boots limpos
RHEL/CentOS 7 — 3.10.0-693.el7mesma cadeia, geometria de frame medidao mesmocomponentes validados 10/10; apenas aguardando um teste de estresse

veja o WRITEUP.md de cada subdiretório para a análise técnica completa, a causa raiz, por que a cadeia padrão da era 6.x não é transferível, as descobertas de primitivas, o que eu construí em vez disso, as geometrias de frame medidas e os dados relacionados à confiabilidade.

o formato geral de cada cadeia

cadeia de exploit futex PI

onde as coisas ficam difíceis — a caminhada valida o ->lock do waiter forjado contra o lock que encontrou (BUG_ON(w->lock != lock) no 3.10), então você precisa de estruturas falsas em memória endereçável pelo kernel em um endereço que você conheceria. é isso que difere drasticamente por kernel (o truque da área de entrada da CPU da era 6.x que a nebusec utilizou não existe no 3.10, o el7 randomiza o mapa base direto, etc.). Cada write-up documenta sua própria resposta.

pré-requisitos — leia isto

o bug e o gatilho: você não precisa de privilégios, nem de user namespaces, nada. qualquer usuário local funciona.

cada armamento declara seu próprio staging no seu write-up. A cadeia el7 é encenada a partir de root-no-namespace (na prática: qualquer RCE em um container privilegiado — isso foi validado a partir de uma instância MYSQL via seu caminho de plugin UDF, que é uma posição muito típica de se estar). O trabalho no lado do kernel após o staging usa apenas:

  • /proc/self/pagemap com PFNs reais (in-ns CAP_SYS_ADMIN)
  • /proc/kcore (in-ns CAP_SYS_RAWIO no el7)
  • /proc/kallsyms sem máscara (kptr_restrict=0 ou CAP_SYSLOG)

Nenhum desses é a vulnerabilidade em si; são apenas as conveniências de staging que substituem os vazamentos de informação que ainda não construí. No el7 especificamente, uma cadeia totalmente sem privilégios é bloqueada por razões estruturais (o BUG_ON do 3.10, sem CEA, sem par de lock falso estático no .data do kernel, gating de PFN do pagemap) O write-up do el7 tem a análise completa e as direções de pesquisa, principalmente uma primitiva de vazamento de informação de endereço de cabeça

notas de segurança

  • Cada cadeia aqui é testada contra bancadas exatamente correspondentes com KASLR e randomização de região de memória habilitados sob estresse aleatório (boots limpos, timing com jitter, posicionamento de página randomizado).
  • Onde uma cadeia puder perder sua corrida, ela aborta antes de tocar o kernel em vez de caminhar um waiter meio forjado. Em hosts com panic_on_oops=1, uma caminhada errada causará um panic e resultará em uma máquina morta, então trate isso como uma configuração parte do seu modelo de ameaça ao testar
  • Não execute isso em nenhum host que você não possua ou para o qual não esteja autorizado a testar :)

layout

root@kitploit:~
el7/
  WRITEUP.md        write-up técnico completo para a cadeia el7
  ghostlock_el7.c   poc de arquivo único para ambos os kernels testados

referências

  • NebuSec, IonStack part II: GhostLock — https://nebusec.ai/research/ionstack-part-2/
  • Correção: 3bfdc63936dd ("rtmutex: Use waiter::task instead of current in remove_waiter()"); acompanhamento de NPD 40a25d59e85b
  • Faixa afetada: v2.6.39-rc1 → v7.1-rc1 (todas as distros desde 2011)
Baixar ferramenta