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
dirtypipe — Exploit DirtyPipe (CVE-2022-0847) escrito em Rust | Kitploit
Ferramentas/GitHubGitHub/morgenm/dirtypipe
Escalada de PrivilégiosExploraçãoShellcodeAprendizado e EducaçãoDesenvolvimento de PayloadsExploração de Binários
GitHubmorgenm/dirtypipe

dirtypipe

Exploit DirtyPipe (CVE-2022-0847) escrito em Rust

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

AVISO

Este código é apenas para fins educacionais e de pesquisa.

Não o utilize em sistemas que você não possui ou não tem permissão para testar.

O autor não é responsável por qualquer uso indevido, dano ou consequências legais resultantes do uso deste código.

DirtyPipe (CVE-2022-0847)

Veja o write-up deste exploit no meu blog. Esta é uma implementação do exploit DirtyPipe (CVE-2022-0847) que escrevi em Rust com base no write-up de Max Kellermann. O programa permite sobrescrever arquivos específicos ou sobrescrever um binário SUID para escalar privilégios.

Funcionalidades

  • Verifica se a versão do kernel é vulnerável
  • Sobrescreve qualquer arquivo com dados do arquivo de entrada especificado
  • Sobrescreve um binário SUID (padrão passwd) para obter root
  • Faz backup dos arquivos-alvo em /tmp antes da exploração

Uso

Sobrescrevendo um arquivo

Primeiro, crie um arquivo de entrada. Os dados contidos nesse arquivo serão usados para sobrescrever o alvo. Em seguida, basta executar o seguinte:

root@kitploit:~
./dirtypipe_exploit -m overwrite -i input.txt -o target_file -b offset

Onde offset é o deslocamento em bytes para começar a escrever no arquivo. O deslocamento não pode estar em um limite de página e a escrita não pode cruzar um limite de página, devido à natureza da vulnerabilidade.

SUID para Escalonamento de Privilégios

O modo SUID substituirá um binário SUID especificado por um payload ELF fornecido. O ELF suid é fornecido no release deste repositório e será usado pelo exploit, a menos que seja especificado de outra forma nas opções. Além disso, você pode gerar isso por conta própria ou modificar o payload usando o script pwntools gen_suid.py e o arquivo loader.asm. Essa opção será discutida abaixo. O exploit define o alvo como /usr/bin/passwd por padrão.

Execute o seguinte para substituir /usr/bin/passwd pelo payload fornecido (abre um shell como root):

root@kitploit:~
./dirtypipe_exploit -m suid

Em seguida, execute /usr/bin/passwd para obter um shell root.

Para gerar seu próprio payload, siga estas etapas:

  1. Execute o script gen_suid.py, que usa pwntools para gerar um payload (shellcode.bin) que abre um shell root. Modifique-o como achar adequado.
  2. Crie o payload binário ELF executando nasm -f bin -o [PAYLOAD_NAME] loader.asm. Isso transformará o arquivo shellcode.bin em um executável.
  3. Execute ./dirtypipe_exploit -m suid -i [PAYLOAD_NAME] -o [TARGET_FILE].
  4. Execute o alvo para obter root.

Agradecimentos ao autor do STALKR's BLOG pelo cabeçalho ELF Tiny de 64 bits (aqui).

Baixar ferramenta