Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
trust-boundary-ctf — CTF MCP basé sur le navigateur — confusion de jeton OAuth et échec d'isolation de session (modèle CVE-2025-49596). DevTools uniquement. | Kitploit
Outils/GitHubGitHub/acseguin21/trust-boundary-ctf
Analyse des VulnérabilitésSécurité WebCTFTests d'IntrusionApprentissage et ÉducationLabs et Pratique
GitHubacseguin21/trust-boundary-ctf

trust-boundary-ctf

CTF MCP basé sur le navigateur — confusion de jeton OAuth et échec d'isolation de session (modèle CVE-2025-49596). DevTools uniquement.

Voir le dépôt
il y a 4 moisPas encore vérifié

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

🐘 Trust Boundary: MCP Session Isolation CTF

Node.js License Difficulty CVE purple team

La console affiche Session Active.
Chaque appel d'outil réussit.
Le jeton OAuth admin est dans chaque réponse.

Trust Boundary est un laboratoire CTF basé sur un navigateur, construit autour d'une véritable défaillance d'isolation de session dans un serveur MCP exécuté localement. La vulnérabilité n'est pas simulée — elle s'exécute dans le processus en cours. Trois flags. DevTools uniquement.


L'attaque

Un objet de contexte mutable partagé. Des identifiants admin définis au démarrage. Des requêtes utilisateur qui le réécrivent partiellement — mais ne suppriment jamais ce qui compte.

root@kitploit:~
flowchart LR
    subgraph startup["🚀 Server Startup"]
        A[Admin Agent]
        A -->|credentials loaded| CTX
    end

    subgraph ctx["⚠️ Shared Context"]
        CTX["identity ✓ set\npermissions ✓ set\ntoken ✓ set\nsession ✓ set"]
    end

    subgraph request["👤 User Tool Call"]
        U[User Agent]
        U -->|identity ✓ updated\npermissions ✓ updated\ntoken ✗ never reset\nsession ✗ never reset| CTX
        CTX -->|response includes\nadmin residue| U
    end

    style ctx fill:#1a0a0a,stroke:#ff3333,color:#ff3333
    style startup fill:#0a0e27,stroke:#4488ff,color:#00ffff
    style request fill:#0a0e27,stroke:#ffaa00,color:#ffaa00

Le serveur ne renvoie jamais d'erreur. L'interface indique que tout va bien. Les identifiants se trouvent quelque part dans le trafic — trouvez-les.


Scénario

Vous êtes un analyste SOC chez Elefunk répondant à une alerte MDR :

"Jeton de session inattendu observé dans la réponse d'un appel d'outil d'agent. Source : contexte utilisateur. Le motif du jeton correspond au préfixe des identifiants admin. Confiance : HIGH."

La console d'agent interne sur http://localhost:3000 semble normale. Votre mission est de confirmer la défaillance d'isolation et de trouver les trois flags qu'elle a produits — en utilisant uniquement les DevTools de votre navigateur.


Mission à trois flags

Tous les flags suivent le format CTF{...}. Soumettez-les à l'aide du validateur en bas de la console.


Installation

Node.js 18+. Pas de Docker. Pas de variables d'environnement. Pas de configuration.

root@kitploit:~
git clone https://github.com/acseguin21/trust-boundary-ctf
cd trust-boundary-ctf
npm install
npm start

Ouvrez http://localhost:3000 — la console d'agent Elefunk vous attend.


Utilisation en Purple Team

SPOILERS.md est le document compagnon pour les instructeurs, les ingénieurs en détection et les sessions purple team. Il contient :

  • Le code vulnérable annoté ligne par ligne
  • Le correctif sous forme de diff fonctionnel
  • Procédure pas à pas pour les flags avec points de discussion
  • Règles de détection en KQL, Splunk SPL et Sigma

Fermez-le si vous êtes là pour jouer. Ouvrez-le si vous êtes là pour enseigner.


Références

  • CVE-2025-49596 — confusion de jeton OAuth MCP via un contexte de session partagé
  • OWASP MCP Top 10 2025 — MCP01 : Mauvaise gestion des jetons
  • Spécification du Model Context Protocol

Swadee Security · Opération : Ivory Chain

Télécharger l’outil
FlagDifficultéEmplacement DevToolsComment
🟢FLAG 1FacileNetwork → Response HeadersChaque appel d'outil divulgue le jeton admin dans un en-tête de réponse
🟡FLAG 2MoyenNetwork → WS → FramesDeux trames WebSocket arrivent au chargement de la page — un ID de session est incorrect
🔴FLAG 3DifficileApplication → Session StorageUne séquence spécifique + un timing précis déclenchent l'écriture d'une trace de débogage