
Exploit de prova de conceito para CVE-2024-38475 visando o escape inadequado do mod_rewrite do Apache HTTP Server, permitindo mapeamento de URL para sistema de arquivos para execução de código ou divulgação de código-fonte.
Crédito: Todo o crédito para este cara: https://blog.orange.tw/ e https://x.com/orange_8361 tudo o que fiz foi criar um script de POC a partir da pesquisa dele.
Introdução: O escape inadequado de saída no mod_rewrite no Apache HTTP Server 2.4.59 e anteriores permite que um atacante mapeie URLs para locais do sistema de arquivos que o servidor tem permissão para servir, mas que não são intencionalmente/diretamente acessíveis por qualquer URL, resultando em execução de código ou divulgação de código-fonte. Substituições no contexto do servidor que usam referências inversas (backreferences) ou variáveis como primeiro segmento da substituição são afetadas. Algumas RewriteRules inseguras serão quebradas por essa alteração e o flag de rewrite "UnsafePrefixStat" pode ser usado para optar novamente, garantindo que a substituição esteja adequadamente restrita.
Recomendo fortemente permanecer com as wordlists que usei ao desenvolver esta ferramenta. A ferramenta em si é um trabalho em andamento e pode precisar de modificações devido ao tratamento de URLs de arquivos e diretórios. Usei raft-medium-files.txt e raft-medium-directories.txt enquanto desenvolvia e testava a vulnerabilidade em meus próprios sistemas.