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-2022-0847-Docker — Exploit Docker | Kitploit
Ferramentas/GitHubGitHub/mrchucu1/cve-2022-0847-docker
Escalada de PrivilégiosSegurança de ContêineresAnálise de VulnerabilidadesExploraçãoAprendizado e EducaçãoExploração de BináriosLabs e Prática
GitHubmrchucu1/cve-2022-0847-docker

CVE-2022-0847-Docker

Exploit Docker

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

Dirty Pipe (CVE-2022-0847): Uma Demonstração Prática de Exploit em Docker

CVE-2022-0847 Docker C Language

Este repositório fornece um ambiente Docker interativo e autossuficiente para demonstrar e analisar com segurança a vulnerabilidade de escalonamento de privilégios "Dirty Pipe". Ele foi projetado como uma ferramenta educacional para profissionais de segurança entenderem os mecanismos de um exploit crítico de nível de kernel em um ambiente controlado.


1. A Vulnerabilidade Explicada: O que é o Dirty Pipe?

O Dirty Pipe foi uma vulnerabilidade crítica descoberta no kernel Linux (afetando versões a partir da 5.8). Ela permitia que um usuário local sem privilégios sobrescrevesse dados em arquivos arbitrários somente leitura.

O impacto é severo: ao sobrescrever um arquivo sensível como /etc/passwd ou um binário SUID, um atacante poderia facilmente escalar seus privilégios para root, obtendo controle total do sistema. Essa vulnerabilidade era particularmente perigosa porque ignorava as verificações padrão de permissões de arquivo, um controle de segurança fundamental no Linux.

2. Arquitetura do Projeto: Usando Docker para um Laboratório Seguro

Este projeto utiliza Docker para criar um ambiente seguro, isolado e intencionalmente vulnerável. Isso permite que qualquer pessoa estude o exploit sem colocar em risco sua máquina host.

Os principais componentes são:

  • Dockerfile: Define o blueprint do nosso contêiner vulnerável. Ele usa uma imagem base mais antiga (debian:bullseye-20210927-slim) conhecida por ter um kernel suscetível ao Dirty Pipe e automatiza o processo de configuração.
  • exploit.c: O código C que implementa a lógica do exploit, baseado na prova de conceito original de Max Kellermann.
  • Makefile: Um makefile simples para compilar o código C em um binário executável dentro do contêiner.

3. Demonstração Prática: Do Usuário ao Root

Este guia passo a passo irá orientá-lo na construção do ambiente e na execução do exploit.

Pré-requisitos: Você deve ter o Docker instalado e em execução no seu sistema.

Passo 1: Clone o Repositório

Abra seu terminal e clone este projeto.

root@kitploit:~
git clone https://github.com/mrchucu1/CVE-2022-0847-Docker.git
cd CVE-2022-0847-Docker

Passo 2: Construa a Imagem Docker Vulnerável

Use o comando docker build para criar a imagem do contêiner. O Dockerfile cuidará de todas as dependências e compilará o código do exploit.

root@kitploit:~
docker build -t dirty-pipe-demo .

Passo 3: Rode o Contêiner e Execute o Exploit

Agora, execute o contêiner de forma interativa. A flag --rm garante que o contêiner seja removido ao sair, e -it fornece um shell interativo.

root@kitploit:~
docker run --rm -it dirty-pipe-demo

Você será levado a um shell dentro do contêiner como um usuário sem privilégios (hacker@...:/$).

Agora, execute o exploit pré-compilado:

root@kitploit:~
# You are currently an unprivileged user.
# Your prompt looks like this: hacker@<container_id>:/$
#
# Now run the exploit...
./exploit

Sucesso! O exploit sobrescreve um binário SUID para conceder a você um shell de root. Seu prompt de terminal mudará de $ para #, indicando que você agora tem privilégios de root.

root@kitploit:~
# The exploit has succeeded.
# Your prompt is now a root shell: # whoami
root
#

4. Principais Conclusões e Aprendizados de Segurança

Este projeto é mais do que apenas executar um script; é uma demonstração prática de princípios críticos de segurança relevantes para o meu trabalho como Engenheiro de Segurança em Nuvem:

  • Exploits de Kernel Ignoram a Segurança da Camada de Aplicação: Isso mostra que, mesmo com permissões de arquivo perfeitas, uma vulnerabilidade no kernel pode comprometer todo o modelo de segurança de um sistema operacional, provando que a defesa em profundidade é essencial.
  • A Segurança do Contêiner é a Segurança do Host: Isso fornece uma prova tangível de que os contêineres compartilham o kernel do host. Um exploit de kernel executado dentro de um contêiner pode levar a uma fuga completa (breakout) e ao comprometimento da máquina host. Isso destaca a importância de usar perfis de seccomp, gVisor ou sistemas operacionais otimizados para contêineres em produção.
  • A Criticidade do Gerenciamento de Patches: Este é um exemplo vivo de por que atualizações do kernel em tempo hábil são uma prática de segurança inegociável em qualquer ambiente de produção, especialmente em hosts de contêineres.
  • Compreendendo a Superfície de Ataque: Ao construir o ambiente do exploit, obtive uma apreciação mais profunda de como os atacantes analisam sistemas e aproveitam falhas aparentemente pequenas no gerenciamento de memória (como pipes e caches de página) para alcançar o comprometimento total do sistema.

Aviso Legal

Este projeto e seu código são destinados apenas para fins educacionais e de pesquisa. Não tente usar este exploit em qualquer sistema para o qual você não tenha permissão explícita e autorizada.

Baixar ferramenta