

APENAS USO ÉTICO – TESTES DE SEGURANÇA AUTORIZADOS
Este repositório fornece ferramentas apenas para profissionais de segurança autorizados, blue teams e testadores de penetração.
O acesso não autorizado a sistemas de computador é ilegal sob o CFAA (EUA), Computer Misuse Act (Reino Unido), TCK 243/244 (Turquia) e leis similares em todo o mundo.
Visão Geral da Vulnerabilidade
CVE‑2026‑58048 é uma vulnerabilidade crítica de injeção SQL no cPanel & WHM versões 11.x que permite a um usuário autenticado do cPanel executar comandos SQL arbitrários com privilégios de root do MySQL através da funcionalidade de renomeação de banco de dados.
Como funciona
- Acesso autenticado necessário – o atacante deve ter uma conta cPanel válida (usuário/senha) no servidor alvo.
- Manipulação do modo SQL – o exploit define a sessão do MySQL para o modo
ANSI_QUOTES, o que altera o comportamento de análise.
- Injeção na renomeação de banco de dados – ao renomear um banco de dados, o novo nome não é devidamente sanitizado, permitindo ao atacante injetar comandos SQL arbitrários.
- Privilégios de root – como a operação de renomeação é executada com privilégios de root do MySQL, o SQL injetado é executado com as permissões mais altas do banco de dados.
- Impacto – tomada completa do banco de dados, escalação de privilégios, comprometimento do servidor, roubo de dados, backdoors e movimento lateral. Atualize imediatamente!
Versões Afetadas
- cPanel & WHM 11.110 e anteriores – vulnerável
- 11.111 – 11.118 – vulnerável
- 11.119 – 11.126 – vulnerável
- 11.127 – 11.134 – vulnerável
- 11.135 – 11.136 – vulnerável
- 11.137.x – vulnerável abaixo de
11.137.1.6
- 11.138.1.6 e posteriores – corrigido
Correção
- Atualize para cPanel & WHM 11.138.1.6 ou mais recente.
- Se a atualização não for possível, desative as operações de renomeação do MySQL para usuários do cPanel como solução temporária.
Ferramentas
| Ferramenta | Propósito | Usuário Pretendido |
|---|
exploit.py | Toolkit completo weaponizado com reverse shell, persistência, UDF RCE, leitura/escrita de arquivos, operações de banco de dados, suporte a proxy e varredura em massa. | Red teams / pentesters autorizados |
safecheck.py | Verificador de vulnerabilidade não intrusivo que detecta a versão do cPanel e avalia o risco sem executar qualquer payload malicioso. Gera relatórios detalhados. | Blue teams / auditores de segurança |
Comparação de Recursos
| Recurso | exploit.py | safecheck.py |
|---|
| Detecção de vulnerabilidade | [+] | [+] |
| Detecção de versão | [+] | [+] |
| Injeção SQL root do MySQL | [+] | [-] |
| Reverse shell | [+] | [-] |
| Persistência (criação de usuário cPanel) | [+] | [-] |
| UDF RCE (execução de comandos) | [+] | [-] |
| Leitura/escrita de arquivos | [+] | [-] |
| Operações de banco de dados (qualquer SQL) | [+] | [-] |
| Suporte a proxy | [+] | [+] |
| Varredura em massa (multi‑thread) | [+] | [-] |
| Shell interativo | [+] | [-] |
| Modo não intrusivo (seguro) | [-] | [+] |
| Modo Verbose/Debug | [+] | [+] |
| Controle de verificação SSL | [+] | [+] |
| User‑Agent personalizado | [+] | [+] |
| Atraso / tentativas de requisição | [+] | [-] |
| Saída JSON / relatório | [+] | [+] |
| Verificação de acessibilidade do endpoint | [-] | [+] |
| Detecção de vazamento de modo SQL | [-] | [+] |
Resumo de Casos de Uso
| Cenário | Ferramenta Recomendada |
|---|
| Blue Team – verificar se sua instalação do cPanel é vulnerável | safecheck.py |
| Auditoria de Segurança – avaliação de vulnerabilidade não intrusiva | safecheck.py |
| Red Team – teste de penetração autorizado com exploração completa | exploit.py |
| Bug Bounty – teste de divulgação responsável | safecheck.py |
| Varredura em Massa – verificar múltiplos alvos quanto à vulnerabilidade | exploit.py (apenas detecção) |
| Resposta a Incidentes – verificar se os sistemas foram comprometidos | safecheck.py |
Instalação
git clone https://github.com/tc4dy/CVE-2026-58048-PoC-Exploit
cd CVE-2026-58048
pip install -r requirements.txt
requirements.txt
requests
urllib3
colorama
pymysql
Parâmetros
Parâmetros do exploit.py
| Parâmetro | Descrição |
|---|
-t, --target | URL do cPanel alvo (ex.: https://cpanel.example.com:2083) |
-l, --target-file | Arquivo contendo lista de alvos (um por linha) para varredura em massa |
-u, --mysql-user | Nome de usuário do cPanel/MySQL |
-P, --mysql-pass | Senha do cPanel/MySQL |
--mysql-port | Porta do MySQL (padrão: 3306) |
-p, --port | Substituir porta do cPanel (padrão da URL ou 2083) |
--threads | Número de threads para multi‑alvo (padrão: 10) |
-o, --output | Salvar resultados em arquivo (alvo único) |
--log | Arquivo de log para saída detalhada |
-v, --verbose | Saída detalhada |
--proxy | Proxy HTTP/HTTPS (ex.: http://127.0.0.1:8080) |
-ua, --user-agent | User‑Agent personalizado |
--no-keep-alive | Não manter a sessão ativa |
--delay | Atraso entre requisições (padrão: 2.0s) |
--max-retries | Máximo de tentativas (padrão: 3) |
--ssl-verify | Verificar certificados SSL |
--cmd | Comando a executar (prefixe com sql: ou udf: para específico) |
--inject | SQL personalizado para injetar (substitui outras ações) |
--reverse-shell | IP:PORT do reverse shell (usa UDF) |
--passwd | Alterar senha root do MySQL |
--adduser | Criar usuário cPanel (USER DOMAIN PASSWORD) |
--read | Ler um arquivo via LOAD_FILE |
-i, --interactive | Shell interativo após o exploit |
--verify | Verificar sucesso do exploit tentando login no MySQL |
--ping | Ping no alvo antes da exploração |
Parâmetros do safecheck.py
| Parâmetro | Descrição |
|---|
-t, --target | URL do cPanel alvo (ex.: https://cpanel.example.com:2083) |
-v, --verbose | Saída detalhada |
--proxy | Proxy HTTP/HTTPS (ex.: http://127.0.0.1:8080) |
-ua, --user-agent | User‑Agent personalizado |
--ssl-verify | Verificar certificados SSL |
--timeout | Tempo limite da requisição em segundos (padrão: 10) |
--log | Salvar relatório em arquivo |
--json | Saída dos resultados em formato JSON |
Cenários