Auteur : BitsLab, entreprise de sécurité IA
Lorsqu'un Agent IA dispose de capacités de niveau système telles que l'exécution de shell, la lecture/écriture de fichiers, les requêtes réseau et les tâches planifiées, il n'est plus seulement un "chatbot" — c'est un opérateur avec de véritables autorisations. Cela signifie : une commande induite par une injection de prompt pourrait supprimer des données critiques ; une Skill empoisonnée par la chaîne d'approvisionnement pourrait subtilement divulguer des identifiants ; une opération métier non vérifiée pourrait causer des pertes irréversibles.
Les solutions de sécurité traditionnelles vont généralement à deux extrêmes : soit elles s'appuient entièrement sur la "capacité de jugement" de l'IA pour s'autoréguler (facilement contournée par des prompts soigneusement conçus), soit elles empilent de nombreuses règles rigides pour verrouiller l'Agent (ce qui supprime la valeur fondamentale de l'Agent).
Ce guide approfondi de BitsLab choisit une troisième voie : répartir les responsabilités de sécurité selon "qui vérifie", en faisant jouer à trois types de rôles leur partition.
- Utilisateur standard : En tant que dernière ligne de défense, responsable des décisions clés et des revues périodiques. Nous fournissons des points d'attention pour réduire la charge cognitive.
- L'Agent lui-même : Pendant l'exécution, il respecte consciencieusement les normes de comportement et les processus d'audit. Nous fournissons des Skills pour injecter des connaissances de sécurité dans le contexte de l'Agent.
- Scripts déterministes : Exécutent les vérifications mécaniquement et fidèlement, sans être affectés par les injections de prompt. Nous fournissons des Scripts couvrant les modèles de danger connus courants.
Aucun vérificateur unique n'est omnipotent. Les scripts ne peuvent pas comprendre la sémantique, l'Agent peut être trompé, l'humain peut se fatiguer. Mais la combinaison des trois permet à la fois de garantir la facilité d'utilisation quotidienne et de se prémunir contre les opérations à haut risque.
Utilisateur standard (Points d'attention)
L'utilisateur est la dernière ligne de défense du système de sécurité et le détenteur des autorités les plus élevées. Voici les aspects de sécurité que l'utilisateur doit personnellement prendre en compte et exécuter.
a) Gestion des clés API
- Le fichier de configuration doit avoir des permissions correctes pour empêcher toute consultation non autorisée :
- Ne jamais commit une clé API dans un dépôt de code !
b) Contrôle d'accès aux Canaux (Très critique !)
- Il est impératif de définir une liste blanche (`allowFrom`) pour chaque canal de communication (Channel), sinon n'importe qui pourra discuter avec votre Agent :
⚠️ Dans les nouvelles versions, un `allowFrom` vide signifie refuser tout accès. Pour ouvrir l'accès, il faut explicitement écrire `["*"]` mais cela n'est pas recommandé.
c) Ne pas exécuter avec les privilèges root
- Il est recommandé de créer un utilisateur dédié pour exécuter l'Agent, afin d'éviter des autorités trop élevées :
d) Éviter autant que possible d'utiliser le canal email
- Le protocole email est complexe et présente un risque relativement élevé. Notre équipe BitsLab a étudié et confirmé une vulnérabilité de niveau [critique] liée à l'email. Voici la réponse du projet, nous avons encore plusieurs questions en attente de confirmation de leur part, donc utilisez les modules fonctionnels liés à l'email avec prudence.
e) Recommandation de déployer dans Docker
- Il est recommandé de déployer nanobot dans un conteneur Docker, isolé de l'environnement d'usage quotidien, pour éviter les risques de sécurité dus au mélange des autorisations ou des environnements.
Étapes d'installation de l'outil
Principe de l'outil
SKILL.md
L'examen d'intention basé sur l'éveil cognitif dépasse les angles morts traditionnels de la réception passive d'instructions par l'IA. Il intègre un mécanisme de chaîne de pensée de "auto-éveil (Self-Wakeup)" obligatoire, forçant l'IA à réveiller en arrière-plan une personnalité indépendante de vérification de sécurité avant de traiter toute requête utilisateur. En analysant le contexte et en évaluant indépendamment l'intention de l'utilisateur, il identifie activement et intercepte les risques potentiels élevés, passant ainsi de "l'exécution mécanique" à un "pare-feu intelligent". Lorsqu'une instruction malveillante est détectée (comme un shell inversé, le vol de fichiers sensibles, une suppression large, etc.), l'outil exécute un protocole d'interception stricte standardisé (affiche un avertissement `[Bitslab nanobot-sec skills a détecté une opération sensible..., interceptée]`).
Interception de l'exécution de commandes malveillantes (Protection Shell & Cron)
Agit comme une passerelle "zero trust" lorsque l'Agent exécute des commandes de niveau système. La ligne de défense bloque directement diverses opérations destructrices et charges utiles dangereuses (comme la suppression malveillante `rm -rf`, la modification d'autorisations, les shells inversés, etc.). De plus, l'outil dispose de capacités d'inspection approfondie au runtime, pouvant analyser activement et nettoyer les processus système et les tâches planifiées Cron des portes dérobées persistantes et des signatures d'exécution malveillantes, garantissant un environnement local absolument sécurisé.
Blocage du vol de données sensibles (Vérification d'accès aux fichiers)
Applique un isolement physique strict en lecture/écriture pour les actifs essentiels. Le système prévoit des règles de vérification de fichiers rigoureuses, interdisant strictement à l'IA de lire de manière non autorisée des fichiers sensibles tels que `config.json`, `.env` contenant des clés API et des configurations critiques, et de les transmettre à l'extérieur. De plus, le moteur de sécurité audite en temps réel les journaux de lecture de fichiers (comme la séquenced'appel de l'outil `read_file`), coupant ainsi radicalement à la source toute possibilité de fuite d'identifiants ou d'exfiltration de données.
Audit de sécurité des compétences MCP
Pour les compétences de type MCP, l'outil audite automatiquement leur logique d'interaction contextuelle et de traitement des données, détecte les risques tels que la fuite d'informations sensibles, les accès non autorisés, l'injection de commandes dangereuses, etc., et les compare à une base de référence de sécurité et une liste blanche.
Téléchargement de nouvelles compétences et analyse automatique de sécurité
Lors du téléchargement d'une nouvelle compétence, l'outil utilise un script d'audit pour analyser statiquement le code, comparer avec la base de référence de sécurité et la liste blanche, détecter les informations sensibles et les commandes dangereuses, garantissant que la compétence est sécurisée et conforme avant son chargement.
Vérification de base de hachage anti-altération
Pour garantir une confiance zéro absolue dans les actifs système de base, le bouclier de protection établit et maintient continuellement une signature cryptographique SHA256 pour les fichiers de configuration critiques et les nœuds de mémoire. Le moteur d'inspection nocturne vérifie automatiquement les changements chronologiques de chaque hachage de fichier, capable de capturer en millisecondes toute altération non autorisée ou écrasement par excès d'autorité, coupant radicalement au niveau du stockage physique les risques d'implantation de portes dérobées locales et d'"empoisonnement".
Rotation automatique des instantanés de sauvegarde de reprise
Étant donné que l'Agent local dispose d'autorités de lecture/écriture très élevées sur le système de fichiers, le système intègre un mécanisme de reprise automatisé de haut niveau. Le moteur de protection déclenche automatiquement chaque soir l'archivage complet au niveau bac à sable (sandbox) de l'espace de travail actif, et génère un mécanisme d'instantanés de sécurité avec une rétention maximale de 7 jours (rotation automatique). Même en cas de dommage accidentel ou de suppression erronée dans des situations extrêmes, il permet une restauration sans perte de l'environnement de développement en un clic, garantissant au maximum la continuité et la résilience des actifs numériques locaux.
Clause de non-responsabilité
Ce guide est fourni à titre de suggestion de pratique de sécurité et ne constitue aucune forme de garantie de sécurité.
1. Aucune sécurité absolue : Toutes les mesures décrites dans ce guide (y compris les scripts déterministes, les Agent Skills et les points d'attention utilisateur) sont des protections de type "meilleur effort" et ne peuvent couvrir tous les vecteurs d'attaque. La sécurité des Agents IA est un domaine en évolution rapide, de nouvelles techniques d'attaque pouvant apparaître à tout moment.
2. Responsabilité de l'utilisateur : Les utilisateurs qui déploient et utilisent Nanobot doivent évaluer eux-mêmes les risques de sécurité de leur environnement d'exécution et ajuster les recommandations de ce guide selon leur scénario réel. Toute perte due à une configuration incorrecte, une mise à jour tardive ou l'ignorance d'avertissements de sécurité est à la charge de l'utilisateur.
3. Non substitut à un audit de sécurité professionnel : Ce guide ne peut remplacer un audit de sécurité professionnel, des tests d'intrusion ou une évaluation de conformité. Pour les scénarios impliquant des données sensibles, des actifs financiers ou des infrastructures critiques, il est fortement recommandé de faire appel à une équipe de sécurité professionnelle pour une évaluation indépendante.
4. Dépendances tierces : La sécurité des bibliothèques tierces, des services API et des plateformes (comme Telegram, WhatsApp, les fournisseurs de LLM, etc.) dont dépend Nanobot n'est pas sous le contrôle de ce guide. Les utilisateurs doivent suivre les annonces de sécurité des dépendances concernées et mettre à jour promptly.
5. Étendue de la non-responsabilité : Les mainteneurs et contributeurs du projet Nanobot ne sont pas responsables de tout dommage direct, indirect, accessoire ou consécutif résultant de l'utilisation de ce guide ou du logiciel Nanobot.
L'utilisation de ce logiciel signifie que vous comprenez et acceptez les risques mentionnés ci-dessus.













