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-2016-5195 — Arcabouço de análise e validação não armamentizado do CVE-2016-5195 (Dirty COW) com pesquisa de causa raiz, revisão do patch upstream e PoC seguro apenas para laboratório em kernels confirmados. | Kitploit
Ferramentas/GitHubGitHub/gogooma125732/cve-2016-5195
Escalada de PrivilégiosAnálise de VulnerabilidadesAnálise de CódigoExploraçãoPapers e PesquisaAprendizado e Educação
GitHubgogooma125732/cve-2016-5195

CVE-2016-5195

Arcabouço de análise e validação não armamentizado do CVE-2016-5195 (Dirty COW) com pesquisa de causa raiz, revisão do patch upstream e PoC seguro apenas para laboratório em kernels confirmados.

Ver Repositório
15há 26 diasAinda 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-2016-5195: Condição de Corrida no Kernel Linux Dirty COW

Pesquisa defensiva, validação não armamentizada e análise de patch para CVE-2016-5195 (Dirty COW), uma condição de corrida de copy-on-write do kernel Linux que pode permitir que um usuário local modifique dados associados a um mapeamento somente leitura e obtenha privilégios elevados.

CampoValor
ComponenteGerenciamento de memória do kernel Linux / get_user_pages()
FraquezaCWE-362: Concurrent Execution using Shared Resource with Improper Synchronization
GravidadeAlta, CVSS 3.1: 7.0
VetorCVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H
Pré-requisito de ataqueAcesso local de baixo privilégio
Correção upstream19be0eaffa3ac7d8eb6784ad9bdbc7d67ed8e619
Primeira versão upstream corrigidaLinux 4.8.3; backports das distribuições variam

Visão Geral

Dirty COW é uma corrida no tratamento pelo kernel Linux de escritas forçadas e mapeamentos copy-on-write (COW). Um usuário local pode disputar a invalidação de páginas contra uma escrita via /proc/self/mem. Em um kernel afetado, a corrida pode fazer com que dados associados a um mapeamento privado nominalmente somente leitura sejam gravados de volta no arquivo subjacente.

O impacto público é a escalada local de privilégios quando um atacante consegue aplicar a primitiva a um arquivo sensível à segurança. A vulnerabilidade foi explorada ativamente em outubro de 2016. Este repositório não automatiza esse caminho de escalada.

Estrutura do Repositório

Harness de Validação Segura

O harness padrão é intencionalmente limitado:

  • ele não aceita caminho de destino nem payload controlado pelo atacante;
  • ele cria um arquivo temporário com modo 0600 e o desvincula imediatamente;
  • ele disputa apenas o inode descartável ainda aberto;
  • ele não faz conexão de rede e não executa nenhum comando; e
  • ele reporta um marcador benigno fixo.

Compilar

root@kitploit:~
cc -std=c11 -Wall -Wextra -Wpedantic -Werror -O2 \
  poc.c -o dirtycow-safe -pthread

A primitiva de exploit exclusiva de laboratório pode ser compilada separadamente:

root@kitploit:~
cc -std=c11 -Wall -Wextra -Wpedantic -Werror -O2 \
  exploit.c -o dirtycow-exploit -pthread

Executar em um sistema Linux de teste isolado

root@kitploit:~
./dirtycow-safe

Contagem opcional de iterações limitadas:

root@kitploit:~
./dirtycow-safe --iterations 5000000

Resultados possíveis:

  • marker-observed: comportamento vulnerável foi observado no inode descartável.
  • marker-not-observed: inconclusivo. Uma corrida que não dispara não prova que o kernel está corrigido.
  • saída 77: a interface Linux /proc/self/mem necessária está indisponível.

Não use o resultado do PoC como verificação primária do status do patch. Consulte o aviso do pacote de kernel da distribuição em execução e verifique se o kernel corrigido está ativo após a reinicialização.

Primitiva de Exploit

exploit.c aceita um arquivo explícito e um prefixo de substituição e demonstra a primitiva de escrita em arquivo arbitrário em um kernel afetado. Exige a confirmação literal --i-understand, aplica limites máximos de payload e iterações e não constrói um payload de escalada de privilégios.

O arquivo selecionado pode ser modificado permanentemente. Use-o apenas em um laboratório descartável e isolado que você possua ou para o qual esteja explicitamente autorizado a testar. A análise completa da corrida e das transições de estado está em ROOT_CAUSE.md.

Evidências

evidence/evidence.json registra as assinaturas de código-fonte observadas nas revisões oficiais do Linux antes e depois da correção, o resultado da compilação do PoC sem avisos e as propriedades de segurança da validação. evidence/validation.log fornece um resumo conciso. A validação capturada não executou a corrida.

Remediação

Instale a atualização de kernel fornecida pelo fornecedor e reinicie no kernel corrigido. Não decida a exposição apenas pela string de versão upstream: kernels empresariais e de distribuições comumente fazem backport da correção sem adotar o número de versão upstream. Contêineres usam o kernel do host; portanto, a remediação deve cobrir o host.

Consulte PATCH_ANALYSIS.md para a alteração upstream exata e VULNERABILITY_REPORT.md para orientações de validação.

Referências

  • NVD: CVE-2016-5195
  • Correção upstream do Linux
  • Changelog do Linux 4.8.3
  • Catálogo de Vulnerabilidades Exploradas Conhecidas da CISA
  • Registro CVE da Red Hat

Use este material apenas em sistemas que você possua ou para os quais esteja explicitamente autorizado a testar.

Baixar ferramenta
CaminhoFinalidade
poc.cValidação não armamentizada usando apenas um inode temporário desvinculado
exploit.cPrimitiva de escrita em arquivo arbitrário para um laboratório descartável autorizado
ROOT_CAUSE.mdAnálise detalhada da transição de estado vulnerável e da corrida
VULNERABILITY_REPORT.mdPré-condições, causa raiz, impacto e remediação
PATCH_ANALYSIS.mdAnálise linha por linha da correção upstream FOLL_COW
evidence/Saída de validação estruturada e notas de interpretação