Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
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é.

FluxContactConfidentialité© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
stego_provenance_defense — Défense contre l'injection de prompt stéganographique pour l'IA agentique reposant sur la liaison de provenance au moment du décodage, l'authentification HMAC et l'application de la confiance MCP. | Kitploit
Outils/GitHubGitHub/ericyoc/stego_provenance_defense
Outils DéfensifsStéganographieAuthentificationArticles et RechercheApprentissage et ÉducationSécurité de l'IA
GitHubericyoc/stego_provenance_defense

stego_provenance_defense

Défense contre l'injection de prompt stéganographique pour l'IA agentique reposant sur la liaison de provenance au moment du décodage, l'authentification HMAC et l'application de la confiance MCP.

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 →
Voir le dépôtSite web
28il y a 3 joursPas encore vérifié
Partager

Eric Yocam on Lounge

Liaison de provenance au moment du décodage pour les agents MCP

Une preuve de concept reproductible d'un vecteur d'injection de prompt stéganographique qui contourne les analyseurs de contenu textuel, et une défense qui le contient à la frontière du décodage — la liaison de provenance au moment du décodage.

Recherche en sécurité éducative / défensive uniquement. Tous les secrets de ce dépôt sont factices. À utiliser uniquement sur des systèmes que vous possédez ou que vous êtes autorisé à tester.


Résumé

Un attaquant envoie par courriel à une victime un message d'apparence ordinaire. Un logo de marque dans la signature du courriel dissimule une instruction via la stéganographie (LSB, DCT ou métadonnées). L'image est visuellement identique à l'originale et ne contient aucun texte suspect, donc un analyseur de contenu ne voit rien et la victime ne clique sur rien. Mais l'agent de résumé de boîte de réception routinier de la victime traite la signature, un outil de son pipeline décode l'image, et l'instruction cachée entre dans le contexte de l'agent — où, dans un pipeline MCP multi-agents, elle est relayée entre agents comme une sortie de pair de confiance et déclenche un appel d'outil critique. C'est le blanchiment de confiance inter-modal. La défense, la liaison de provenance au moment du décodage, génère une étiquette UNTRUSTED signée par HMAC à l'instant où un outil d'inversion de dissimulation s'exécute et fait en sorte que la couche MCP maintienne elle-même la lignée de provenance, de sorte qu'elle bloque tout appel d'outil critique dont la lignée n'est pas de confiance — même lorsqu'un agent compromis présente une étiquette valide pour une valeur de confiance sans rapport. Elle contient plutôt que ne détecte, elle est donc indépendante de la formulation de la charge utile et du support.


Résultats

Taux de réussite de l'attaque (ASR) — 24 charges utiles (trois supports × huit évasions : simple, formulation bénigne, Base64, fractionnement de jetons, homoglyphe cyrillique, largeur nulle, confusable Unicode, commentaire HTML) ; plus bas est meilleur. La base de référence taint en processus est un contrôle de flux d'information qui marque la sortie de décodage comme non fiable mais ne porte aucune liaison cryptographique inter-domaines :

DéfenseFuitesnASR
Sans défense (aucune vérification)2424100%
Analyseur de contenu (mots-clés/DLP)152462,5%
Analyseur d'intention par regex152462,5%
Taint de flux de données (base IFC)0240%
Provenance au décodage (la nôtre)0240%

Taint et provenance sont à égalité sur l'ASR mono-domaine ; ils divergent sous relais adversarial (ci-dessous), ce qui est l'intérêt de la liaison cryptographique.

Substitution d'étiquette valide — un agent compromis présente une liaison TRUSTED légitimement signée d'un outil bénin tout en omettant l'origine de décodage UNTRUSTED qui pilote réellement l'appel. Le correctif est que la couche MCP maintient elle-même la lignée et décide sur son propre registre, et non sur la liaison fournie par l'agent :

ApplicationDécision
Liaison fournie par l'agent uniquement (naïve)autoriser (fuites)
Maintenue par la couche, dépendance omisebloquer
Maintenue par la couche, dépendance dans les argumentsbloquer
Maintenue par la couche, contexte propreautoriser

Ablation des composants — quatre composants, chacun défendant contre une attaque distincte. Désactivez-en un à la fois ; substitution est intra-domaine, forged relay est une étiquette TRUSTED forgée traversant un relais non fiable vers un vérificateur distant qui ne détient que la liaison présentée. Crucialement, le HMAC seul ne stoppe pas la substitution (le registre le fait), et le registre seul ne survit pas à un relais inter-domaines (le HMAC le fait) :

ConfigurationHonnêteSubstitutionRelais forgé
Mécanisme completbloquébloquébloqué
− marquage de décodagefuitesfuitesfuites
− authentification cryptographique (HMAC)bloquébloquéfuites
− suivi de lignage de confiancebloquéfuitesbloqué
− médiation des sinksfuitesfuitesfuites

Propagation inter-contextes — la teinte (taint) survit à une frontière de message inter-agents, pas seulement à un handle de retour d'outil. Un décodage non fiable dans l'Agent A atteint un appel critique dans le contexte séparé de l'Agent B, et sur un canal médié (que le modèle de menace exige déjà pour les communications inter-agents) la teinte se propage et B est bloqué. Un canal que la couche ne médie pas est hors du modèle par construction — pas une fuite dans le périmètre :

Canal A → BAppel critique de B
Message inter-agents médié (dans le périmètre)blocage (teinte propagée)
Canal latéral non médié (hors du modèle)non couvert

Mise à l'échelle du surcoût — MintBinding est ~O(1) (~10–14 µs quelle que soit la profondeur) ; EnforceCritical est linéaire en la fermeture de dépendances qu'il parcourt (≈10 µs à la profondeur 1 → ≈0,66 ms à la profondeur 100 → ≈6,7 ms à la profondeur 1000) et constant (~6–7 µs) selon le nombre de contextes teintés concurrents. Les fermetures réalistes (profondeur de l'ordre de la dizaine) restent sous ~0,1 ms.

Utilité pour les tâches légitimes — un chemin de promotion de confiance audité (re-étiquetage d'une valeur décodée spécifique, par ex. un numéro de facture issu d'un OCR, sous autorisation) élimine les faux blocages tandis que l'attaque reste bloquée :

RégimeAchèvementFaux blocagesAttaque bloquée
Sans promotion2/3 (67%)1oui
Promotion de confiance3/3 (100%)0oui

Complétude de l'ensemble de décodage — l'hypothèse d'enregistrement, mise à l'épreuve directement :

Ensemble de décodageAttaque stégoAppel critique légitime
Correctbloquéautorisé
Décodeur manquantfuitesautorisé
Trop largebloquéfaux blocage

Intégrité des étiquettes lors des transferts — la liaison survit à un relais honnête et résiste à un worker compromis :

Scénario de relaisDécision du vérificateur
Relais honnête, 1 / 3 / 5 / 10 sautsvérifie ; bloqué
Compromis : réécriture de la charge utile, HMAC conservéblocage (incohérence HMAC)
Compromis : forge TRUSTEDblocage (incohérence HMAC)
Compromis : suppression de la liaisonblocage (aucune étiquette valide)

Surcoût — effectivement gratuit au point de décision : la création et la vérification d'une liaison coûtent ~8–9 µs chacune (~17 µs au total), contre un appel d'outil de décodage de ~11 ms — moins de ~0,2 % ajouté. La distorsion du support est faible (LSB ≈ 76 dB PSNR, métadonnées sans perte ; DCT ≈ 18 dB — une métrique de distorsion, pas une affirmation d'imperceptibilité perceptuelle).


Contenu de ce dépôt

Télécharger l’outil