
Dans le cas rapporté, un agent OpenClaw a commencé à supprimer des e-mails à grande échelle et a ignoré plusieurs commandes d'arrêt jusqu'à ce que l'utilisateur tue le processus localement. La cause probable, selon les médias, était la pression de tokens faisant que le modèle a sauté une contrainte cruciale : « ne pas agir sans approbation ». La leçon est simple : les garde-fous en langage naturel sont fragiles sous le changement de contexte. Placez la sécurité là où elle est applicable—politiques, approbations et contrôles de runtime.
Pour le contexte de l'incident et les risques d'exposition, voir TechCrunch : A Meta AI security researcher said an OpenClaw agent ran amok on her inbox (2026) et Tom's Hardware : OpenClaw wipes inbox of Meta's AI Alignment director (2026). Côté RCE, The Hacker News a décrit une voie de prise de contrôle en un clic liée au traitement des tokens du gateway dans OpenClaw, et l'University of Toronto a publié une notification de vulnérabilité OpenClaw (tous deux 2026) recommandant des mises à jour et la rotation des tokens.
Vous aurez besoin : d'identités distinctes par agent avec des scopes minimaux ; d'un runtime conteneur/VM supportant l'isolation (seccomp/AppArmor sur Linux ou équivalent) ; d'une pipeline de logging (p. ex. ELK/Splunk/Sentinel) pour l'ingestion ; et d'un moteur de politiques ou d'un stockage sidecar pour les approbations et capacités. Le guide Microsoft Running OpenClaw safely (2026) s'aligne sur ce setup, en insistant sur les permissions minimales, les tokens de courte durée et l'isolation.
Cataloguez où votre agent opérera : dossiers, fichiers, APIs et champs de données. Classifiez la sensibilité et adoptez une posture de refus par défaut. L'objectif est une liste blanche de chemins et outils exacts que l'agent peut toucher. Commencez par l'accès en lecture seule ; ouvrez les scopes d'écriture de manière chirurgicale.
Fixez les permissions comme politique, pas comme prompts. Gardez la politique hors du budget de tokens du modèle et appliquez-la à l'exécution.
# policy.yaml — politique agent minimale, refus par défaut
policy:
agent_id: "agent-inbox-cleanup"
default_deny: true
mounts:
- path: "/mail/inbox/sorted/"
permissions: [read]
- path: "/mail/inbox/drafts/"
permissions: [read, write]
tools:
- name: "fs.read"
allow: true
- name: "fs.write"
allow: true
- name: "fs.delete"
allow: false # destructive verbs require human approval token
approvals:
destructive_actions: [delete, bulk_move, bulk_rewrite]
required: true
approvers: ["sec-lead", "mail-owner"]
expires_in: "2h"
dry_run: true # require a plan preview before approval
Conseil : bornez les tailles de batch (p. ex. ≤50 items par plan) et rate-limit pour réduire le rayon d'impact.
Traitez « delete », « bulk move » et « rewrite » comme des verbes privilégiés. Vos enregistrements d'approbation doivent inclure : qui a approuvé, ce qui a été approuvé (hash diff/plan), quand ça expire et si c'est à usage unique. Stockez les approbations dans un service sidecar et injectez un token de capacité de courte durée uniquement après approbation. Pour les patterns et la guidance identité, voir Microsoft Running OpenClaw safely: identity, isolation, runtime risk (2026) et Oso Setting Permissions for AI Agents: Delegated Access (2025).
Conseils opérationnels :
Concevez des logs auxquels vous pouvez faire confiance en post-mortem. Utilisez un stockage append-only ou des chaînes de hash ; incluez des IDs de corrélation pour reconstruire les opérations multi-étapes et qui a approuvé quoi.
{
"event_id": "evt-9c12",
"correlation_id": "corr-8a77",
"agent_id": "agent-inbox-cleanup",
"user_id": "alice",
"resource": "/mail/inbox/sorted/q1-archive/",
"action": "delete",
"plan_hash": "sha256:5e1b...",
"approval_id": null,
"decision": "deny",
"reason": "outside allowlist",
"timestamp": "2026-03-03T10:22:11Z",
"env": {"container_id": "a1b2", "host": "vm-ops-05"}
}
Retention : 90 jours stockage chaud, un an froid. Exportez vers votre SIEM et alertez sur les actions destructives refusées (précurseurs à fort signal d'incidents).
Avant toute opération massive/destructive, faites un snapshot du périmètre affecté. Appliquez les changements transactionnellement, vérifiez les post-conditions et gardez une corbeille de quarantaine pour les suppressions. Si violation de politique ou anomalie détectée : arrêtez et faites rollback automatiquement.
Pour le contexte sur la reconstruction et le lignage de versions, voir Ultimate Guide to Agent Context Base: Hybrid Indexing (blog puppyone).
Traitez les hôtes d'agents comme des charges à haut risque. Exécutez-les dans des conteneurs/VMs avec :
Ces contrôles atténuent l'impact des failles de fuite UI/token comme la voie CVE décrite par The Hacker News (2026) et l'advisory de l'University of Toronto (2026).
Exécutez une reproduction sûre dans une VM/conteneur sandbox :
Ligne de log refusée représentative (lisible) :
[2026-03-03T10:22:11Z] corr=corr-8a77 agent=agent-inbox-cleanup action=delete path=/mail/inbox/sorted/q1-archive/ decision=DENY reason="outside allowlist" approver=— plan=sha256:5e1b...
Si vous centralisez le contexte et les permissions pour plusieurs agents, une context base peut aider à définir des listes blanches de dossiers par agent avec scopes lecture/écriture, appliquer les approbations et exporter les événements d'audit en aval. Par exemple, les équipes utilisant puppyone configurent des montages au niveau des chemins pour chaque agent, gardent les verbes destructifs derrière des approbations de courte durée et diffusent des logs append-only vers SIEM. Pour plus sur les ACLs au niveau des chemins et le logging de niveau runbook, voir le blog puppyone FUSE AI Agents 2026: Plan/Scratch for Reliable Reasoning.
R : Liez les approbations à des chemins de ressources spécifiques et un hash de plan ; rendez-les à usage unique avec expiration courte. Exigez une ré-approbation pour toute dérive de plan.
R : Incluez agent_id, user_id (si délégué), chemin de ressource, action prévue et hash de plan, décision, ID d'approbateur (le cas échéant), diffs pour les écritures, timestamp, IDs d'environnement et correlation_id pour les chaînes multi-étapes.
R : Suivez les advisories des fournisseurs ; pour les agents type OpenClaw, mettez à jour rapidement quand des CVEs arrivent (p. ex. release de patch CVE‑2026‑25253) et faites tourner les tokens après les fenêtres d'exposition. Gardez les UIs liées à localhost et validez les origines pour limiter la fuite de tokens.