root@mcp-hub:~$

Glossaire des signaux de sécurité

Quand MCP Hub analyse un serveur MCP, il relève des « signaux ». Voici ce qu'ils veulent dire, le risque, et quand ils peuvent être légitimes.

À lire d'abord. Ces signaux viennent de l'analyse de la description des outils (premier passage). Un signal de description n'est pas un verdict : une description peut inquiéter sans que le serveur agisse mal, et inversement. Chez MCP Hub, seul le pentest comportemental — l'outil est réellement exécuté dans un bac à sable isolé — tranche « Vérifié » ou « Signalé ». Le glossaire aide à comprendre, pas à condamner.

Les catégories de signaux

hidden_instruction

Instruction cachée

C'est quoi
Une consigne adressée à l'agent IA, dissimulée dans la description d'un outil (texte peu visible, balises, formulation détournée).
Le risque
Faire exécuter à l'IA autre chose que ce que l'utilisateur demande.
Légitime quand
Rarement — une vraie doc d'outil n'a pas besoin de « parler » à l'IA en douce.
tool_shadowing

Détournement d'un autre outil (shadowing)

C'est quoi
La description d'un outil cherche à influencer le comportement d'un autre outil, souvent plus sensible.
Le risque
Contourner un outil de confiance en le « redéfinissant » par la bande.
Légitime quand
Un outil qui en référence un autre pour de bonnes raisons (chaînage documenté) peut déclencher le signal à tort.
sensitive_file

Accès à un fichier sensible

C'est quoi
La description évoque l'accès à des fichiers sensibles (clés SSH, .env, identifiants, /etc/passwd…).
Le risque
Lecture ou fuite de secrets locaux.
Légitime quand
Un outil de gestion de configuration peut légitimement mentionner des fichiers — d'où l'importance du test comportemental.
imperative_override

Ordre d'ignorer les règles

C'est quoi
Formulation impérative visant à écraser les instructions en place (« ignore les consignes précédentes », « tu dois d'abord… »).
Le risque
Prise de contrôle du comportement de l'agent.
Légitime quand
Quasiment jamais dans une description d'outil.
invisible_unicode

Caractères Unicode invisibles

C'est quoi
Des caractères non affichés (largeur nulle, marques directionnelles) insérés dans le texte.
Le risque
Cacher une instruction à l'œil humain tout en la laissant lisible par l'IA.
Légitime quand
Presque jamais — c'est un signe classique de dissimulation.
prompt_injection

Injection de prompt

C'est quoi
Un texte conçu pour être interprété comme une consigne par l'IA plutôt que comme de la donnée.
Le risque
Détourner l'agent via le contenu, pas via le code.
Légitime quand
Un outil qui manipule des prompts (ex. librairie de templates) peut déclencher le signal — à confirmer au comportement.
data_exfil

Exfiltration de données

C'est quoi
La description suggère d'envoyer des données vers l'extérieur (URL, requête réseau non justifiée).
Le risque
Fuite d'informations de l'utilisateur ou de son environnement.
Légitime quand
Un outil réseau par nature (envoi d'e-mail, webhook) l'évoque légitimement — le pentest vérifie où partent réellement les données.

Les deux couches d'analyse

Couche 1 — Description

On lit la description de chaque outil et on relève les signaux ci-dessus. Rapide, large, mais indicatif : une description peut mentir.

Couche 2 — Comportement

On exécute réellement l'outil dans une micro-VM isolée (leurres + réseau bloqué) et on observe. C'est le verdict de l'annuaire.

Les verdicts

Vérifié — testé en comportement, rien de malveillant observé. Signalé — comportement malveillant détecté au pentest (lecture d'un secret, exfiltration). Non testé — référencé, pas encore passé au pentest comportemental. Les signaux de description seuls ne donnent jamais « Signalé ».

→ Explorer les serveurs · → Guide de prise en main