
CVE-2021-3493 Framework de exploit de escalonamento de privilégios OverlayFS com recursos avançados de red team. Inclui mecanismos de persistência, módulos de pós-exploração, capacidades furtivas e documentação abrangente. Somente para testes autorizados.
Framework de Escalação de Privilégios por Capacidade do OverlayFS - Edição Profissional para Red Team
O framework DeepRoot é uma exploração abrangente de escalação de privilégios para CVE-2021-3493 (Escalação de Privilégios do OverlayFS) com recursos avançados de red team, incluindo mecanismos de persistência, capacidades furtivas e módulos de pós-exploração.
Criado por: George S. Yanni
Aviso Original: https://ssd-disclosure.com/ssd-advisory-overlayfs-pe/
APENAS PARA FINS EDUCACIONAIS E TESTES AUTORIZADOS
O framework DeepRoot foi projetado para:
NÃO use contra sistemas de produção sem autorização explícita. O acesso não autorizado a sistemas de computador é ilegal.
CVE-2021-3493 é uma vulnerabilidade de escalação de privilégios no sistema de arquivos OverlayFS do Linux que permite que um usuário sem privilégios obtenha privilégios de root ao explorar o tratamento inadequado de capacidades em namespaces de usuário.
Principais Características:
CLONE_NEWUSER) para mapear o UID 0CLONE_NEWNS) para montagens isoladassetxattr()CAP_ALL_EP (todas as capacidades) no binário alvoCVE-2021-3493/
├── comprehensive.c # Código-fonte principal da exploração
├── README.md # Este arquivo
│
├── Option_1_Inject_SSH_backdoor_key/
│ └── README.md # Guia do backdoor SSH
│
├── Option_2_Install_sudo_backdoor/
│ └── README.md # Guia do backdoor sudo
│
├── Option_3_Install_cron_persistence/
│ └── README.md # Guia de persistência via cron
│
├── Option_4_Install_systemd_service/
│ └── README.md # Guia do serviço systemd
│
├── Option_5_Install_LD_PRELOAD_backdoor/
│ └── README.md # Guia do backdoor LD_PRELOAD
│
├── Option_6_Collect_system_information/
│ └── README.md # Guia de coleta de informações do sistema
│
├── Option_7_Search_for_credentials/
│ └── README.md # Guia de busca de credenciais
│
├── Option_8_Check_lateral_movement/
│ └── README.md # Guia de movimento lateral
│
├── Option_9_Establish_C2_connection/
│ └── README.md # Guia de conexão C2
│
├── Option_Shell_and_Cleanup/
│ └── README.md # Guia de shell e limpeza
│
└── Stealth_Mode_Guide/
└── README.md # Documentação do modo furtivo
gcc -o comprehensive comprehensive.c
# Execute a exploração
./comprehensive
# A exploração irá:
# 1. Criar os diretórios necessários (./ovlcap/)
# 2. Configurar namespaces de usuário e de montagem
# 3. Montar o OverlayFS
# 4. Definir capacidades no binário
# 5. Executar o binário privilegiado
# 6. Apresentar o menu de pós-exploração
Após a escalação de privilégios bem-sucedida, você verá:
╔══════════════════════════════════════════════════╗
║ POST-EXPLOITATION MENU ║
╚══════════════════════════════════════════════════╝
Available actions:
1. Inject SSH backdoor key
2. Install sudo backdoor
3. Install cron persistence
4. Install systemd service
5. Install LD_PRELOAD backdoor
6. Collect system information
7. Search for credentials
8. Check lateral movement
9. Establish C2 connection
s. Spawn root shell
0. Cleanup and exit
Select option:
Cada opção possui sua própria pasta de documentação com guias completos:
kernel.unprivileged_userns_clone=1 ou CAP_SYS_ADMIN)A exploração tem como alvo sistemas vulneráveis ao CVE-2021-3493. Verifique a versão do seu kernel e garanta que os namespaces de usuário estejam disponíveis.
Criação de Namespace: Cria novos namespaces de usuário e de montagem usando unshare(CLONE_NEWNS | CLONE_NEWUSER)
Mapeamento de UID/GID: Mapeia o UID atual sem privilégios para 0 (root) dentro do novo namespace via /proc/self/uid_map e /proc/self/gid_map
Montagem do OverlayFS: Monta o OverlayFS com diretórios lower, upper e work
Cópia do Binário: Copia o binário da exploração para o diretório de merge do overlay
Injeção de Capacidades: Usa setxattr() para definir CAP_ALL_EP (todas as capacidades, efetivas e permitidas) no binário copiado
Execução Privilegiada: Executa o binário a partir do diretório upper, que possui todas as capacidades e roda como root
A exploração inclui um modo furtivo opcional (flag --stealth) que:
nice(19))Consulte o Guia de Modo Furtivo para obter detalhes.
./comprehensive
# Aguarde o menu e selecione 's' para o shell
./comprehensive
# Selecione a opção 1
# Siga os prompts para injetar sua chave pública SSH
./comprehensive
# Selecione a opção 3
# Cron job instalado, executa a cada 5 minutos
./comprehensive --stealth
# A exploração executa com logging reduzido e recursos de OPSEC
AVISOS IMPORTANTES:
Autorização Necessária: Use o DeepRoot apenas em sistemas que você possui ou para os quais tenha permissão explícita por escrito para testar
Responsabilidade Legal: O acesso não autorizado a sistemas de computador é ilegal na maioria das jurisdições. Você é o único responsável pelas suas ações
Finalidade Educacional: O DeepRoot é fornecido para fins educacionais e de pesquisa
Sem Garantia: Este software é fornecido "como está", sem garantia de qualquer tipo
Uso Ético: Use de forma responsável e ética. Não cause danos a sistemas ou dados
O DeepRoot é fornecido para fins educacionais. Use por sua conta e risco.
Este é um projeto educacional. Contribuições, relatórios de bugs e melhorias são bem-vindos, mas certifique-se de que todo o código mantenha os padrões educacionais e éticos deste projeto.
Lembre-se: Com grandes poderes vêm grandes responsabilidades. Use o DeepRoot de forma ética e legal.
${\color{3DA300}- \text{George S. Yanni}}$
Para recomendações, melhorias, relatórios de bugs ou perguntas sobre o DeepRoot, fique à vontade para entrar em contato pelo LinkedIn .