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
agentbox — Runtime sandboxé open-source pour agents IA — isolation gVisor/Docker, coffre-fort d’identifiants, journal d’audit immuable. Conçu après CVE-2026-25253. | Kitploit
Outils/GitHubGitHub/siyad01/agentbox
Sécurité de l'Infrastructure CloudSécurité des ConteneursOutils de Chiffrement/DéchiffrementVirtualisation de SécuritéDevSecOpsGestion des Identités et des Accès (IAM)
GitHubsiyad01/agentbox

agentbox

Runtime sandboxé open-source pour agents IA — isolation gVisor/Docker, coffre-fort d’identifiants, journal d’audit immuable. Conçu après CVE-2026-25253.

Voir le dépôt
il y a 3 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

🛡️ AgentBox

Le runtime sandboxé open-source pour les agents IA

Exécutez des agents IA en toute confiance. Chaque agent dispose de son propre périmètre d'autorisations, de son coffre-fort d'identifiants, de sa piste d'audit et de son interrupteur d'arrêt d'urgence.

Build License: Apache 2.0 Go Version Tests Platform


Pourquoi AgentBox existe

Le 27 janvier 2026, CVE-2026-25253 est devenue la première CVE jamais attribuée à un système IA agentique. Une vulnérabilité critique de détournement WebSocket dans OpenClaw a permis l'exécution de code à distance en un clic contre toute instance exposée — y compris celles liées uniquement à localhost.

La même semaine, la campagne ClawHavoc a infiltré plus de 341 compétences malveillantes dans la marketplace d'OpenClaw. Chaque compétence installée depuis ClawHub s'exécutait avec les mêmes autorisations qu'OpenClaw lui-même — accès complet au disque, jetons OAuth, clés API. Aucun sandbox. Aucune piste d'audit. Aucun interrupteur d'arrêt d'urgence.

« Installer une compétence depuis ClawHub lui accorde l'accès aux mêmes ressources qu'OpenClaw lui-même. Il n'existe aucune isolation par sandbox entre les compétences par défaut. » — Analyse de sécurité DEV Community, avril 2026

Les chiffres :

  • Plus de 138 CVE dans OpenClaw rien qu'en 2026
  • Plus de 135 000 instances exposées dans 82 pays
  • 341 compétences malveillantes confirmées (12 % de l'ensemble du registre)
  • 1,5 million de jetons API d'agents exposés en clair
  • Microsoft : « Il n'est pas approprié de l'exécuter sur une machine personnelle ou professionnelle standard. »

AgentBox est la solution structurelle. Pas un correctif — un runtime.


Ce que fait AgentBox

Chaque agent que vous exécutez dispose de :

ProtectionComment
Autorisations zéro confianceLes agents déclarent exactement ce dont ils ont besoin. Rien d'autre n'est accessible.
Isolation au niveau du noyaugVisor intercepte chaque appel système. L'injection de prompt ne peut pas franchir cette frontière.
Coffre-fort d'identifiantsChiffrement AES-256-GCM. Les agents ne voient jamais les secrets bruts — uniquement des jetons limités.
Journal d'audit immuableChaîne de hachage SHA-256. Chaque action est journalisée. Preuve d'altération.
Interrupteur d'arrêt d'urgenceTerminez n'importe quel agent en moins de 100 ms. Arrêt automatique en cas de dépassement de limite.
Limites de ressourcesTemps, mémoire, nombre de requêtes — appliquées à l'exécution, pas à la configuration.
root@kitploit:~
Avant AgentBox                    Après AgentBox
─────────────────                  ──────────────
Agent → disque complet ❌          Agent → chemins autorisés uniquement ✅
Agent → tout le réseau ❌          Agent → hôtes autorisés uniquement ✅
Agent → secrets bruts ❌           Agent → jetons limités ✅
Aucune piste d'audit ❌            Chaque action journalisée ✅
Aucun interrupteur d'arrêt ❌      Arrêt en <100 ms ✅
Compétences exécutées en root ❌   Sandbox isolé au niveau du noyau ✅

Démarrage rapide

root@kitploit:~
# Installation
go install github.com/siyad01/agentbox/cmd/agentbox@latest

# Valider un manifeste avant l'exécution
agentbox validate manifests/email-sorter.yaml

# Exécuter un agent dans un sandbox
agentbox run --manifest manifests/email-sorter.yaml python agent.py

# Consulter ce que l'agent a fait
agentbox audit --log logs/email-sorter-audit.log

# Vérifier que le journal n'a pas été altéré
agentbox verify logs/email-sorter-audit.log

# Gérer les secrets
agentbox vault add ANTHROPIC_API_KEY
agentbox vault list

Le manifeste

Chaque agent déclare exactement ce dont il a besoin. Tout ce qui n'est pas listé est inaccessible.

root@kitploit:~
name: "email-sorter"
version: "1.0.0"
description: "Lit la boîte de réception, catégorise les e-mails, écrit dans le dossier trié"
runtime: docker        # ou : gvisor (niveau noyau), firecracker (MicroVM)

permissions:
  filesystem:
    read:
      - "~/Documents/inbox"
    write:
      - "~/Documents/sorted"
    deny:                      # TOUJOURS bloqué — même s'il figure dans la liste de lecture
      - "~/.ssh"
      - "~/.aws"
      - "~/.config"
      - "/etc"

  network:
    allow:
      - "api.anthropic.com"
      - "gmail.googleapis.com"
    deny:
      - "*"                    # bloquer tout le reste

  tools:
    allow:
      - "read_file"
      - "write_file"
      - "list_*"
    deny:
      - "execute_shell"        # aucun accès shell, jamais
      - "*_delete"             # aucun outil de suppression

  credentials:
    - ANTHROPIC_API_KEY        # injecté depuis le coffre-fort à l'exécution
    - GMAIL_TOKEN              # l'agent ne voit jamais la valeur brute

limits:
  max_tokens:    50000         # budget de jetons LLM
  max_duration:  "30m"         # arrêt après 30 minutes
  max_memory_mb: 256           # plafond de RAM
  max_requests:  500           # nombre maximal d'invocations d'outils

audit:
  log_level: full
  alert_on:
    - filesystem_deny
    - network_deny
    - token_budget_80pct
  log_path: "logs/email-sorter-audit.log"

Comment ça fonctionne

root@kitploit:~
agentbox run --manifest agent.yaml python agent.py
         │
         ▼
┌─────────────────────────────────────────────────────┐
│                 Moteur de politiques                │
│  Analyse le manifeste → construit les listes        │
│  d'autorisation/refus                              │
│  Valide les signatures → rejette les compétences    │
│  non signées                                       │
│  Injecte les identifiants depuis le coffre-fort     │
└──────────────────────┬──────────────────────────────┘
                       │
                       ▼
┌─────────────────────────────────────────────────────┐
│              Couche d'isolation                      │
│                                                     │
│  Docker  → conteneur + seccomp + cap-drop           │
│  gVisor  → noyau en espace utilisateur, interception│
│            des appels système                       │
│  Firecracker → noyau MicroVM dédié par agent        │
│                                                     │
│  Système de fichiers : seuls les chemins déclarés    │
│  sont montés                                       │
│  Réseau : seuls les hôtes déclarés sont accessibles │
│  Capacités : TOUTES supprimées, aucune ajoutée      │
└──────────────────────┬──────────────────────────────┘
                       │
          ┌────────────┼────────────┐
          ▼            ▼            ▼
   Journal d'audit  Coffre-fort   Moniteur de
   (chaîne de       d'identifiants ressources
   hachage)         AES-256-GCM   arrêt automatique
   chaque action    jetons limités en cas de
   journalisée                    dépassement

Pourquoi gVisor bloque l'injection de prompt

Tous les autres sandbox s'arrêtent à la frontière du conteneur. Un agent exploitant une vulnérabilité du noyau peut s'en échapper.

gVisor intercepte chaque appel système avant qu'il n'atteigne le noyau hôte :

root@kitploit:~
L'agent tente : write("/home/user/.ssh/id_rsa")
                    │
                    ▼
         Noyau en espace utilisateur gVisor
                    │
         Chemin dans la liste de refus ? → OUI
                    │
                    ▼
         EPERM renvoyé immédiatement
         Le noyau hôte ne voit jamais cet appel système
         L'injection de prompt ne peut pas franchir cette couche

Référence CLI

root@kitploit:~
agentbox <commande> [options]

Commandes :
  run       Exécuter un agent dans un sandbox
  validate  Valider un fichier manifeste
  kill      Terminer un agent en cours d'exécution
  audit     Consulter les journaux d'audit des agents
  verify    Vérifier l'intégrité du journal d'audit
  vault     Gérer les identifiants chiffrés
  serve     Démarrer le serveur API REST
  version   Afficher la version

Exemples :
  agentbox validate manifests/email-sorter.yaml
  agentbox run --manifest manifests/email-sorter.yaml python agent.py
  agentbox kill agent-abc123
  agentbox audit --log logs/email-sorter.log --deny
  agentbox audit --log logs/email-sorter.log --last 1h
  agentbox verify logs/email-sorter.log
  agentbox vault add ANTHROPIC_API_KEY
  agentbox vault list
  agentbox vault delete OLD_KEY
  agentbox serve :8081

API REST

Démarrez avec agentbox serve (par défaut : :8081).

MéthodePoint de terminaisonDescription
GET/healthVérification de l'état de santé
GET/dashboardTableau de bord web
GET/api/agentsLister tous les agents
POST/api/agentsDémarrer un nouvel agent
DELETE/api/agents/:idTuer un agent
GET/api/auditInterroger le journal d'audit

root@kitploit:~
# Lister les agents en cours d'exécution
curl http://localhost:8081/api/agents

# Démarrer un agent
curl -X POST http://localhost:8081/api/agents \
  -H "Content-Type: application/json" \
  -d '{"manifest":"manifests/email-sorter.yaml","command":["python","agent.py"]}'

# Tuer un agent
curl -X DELETE http://localhost:8081/api/agents/abc123

# Interroger le journal d'audit
curl "http://localhost:8081/api/audit?deny=true&agent=email-sorter"

Journal d'audit

Chaque action d'agent est journalisée dans un fichier JSON Lines en ajout seul, avec chaîne de hachage :

root@kitploit:~
{"id":1,"hash":"a3f2...","prev_hash":"genesis","timestamp":"2026-05-05T09:00:00Z","agent_id":"abc123","agent_name":"email-sorter","event_type":"agent_start","allowed":true,"resource":"manifests/email-sorter.yaml"}
{"id":2,"hash":"b7c1...","prev_hash":"a3f2...","timestamp":"2026-05-05T09:00:01Z","agent_id":"abc123","agent_name":"email-sorter","event_type":"filesystem_allow","allowed":true,"resource":"read:/home/user/Documents/inbox/mail.txt","rule":"filesystem.read: ~/Documents/inbox"}
{"id":3,"hash":"d9e4...","prev_hash":"b7c1...","timestamp":"2026-05-05T09:00:01Z","agent_id":"abc123","agent_name":"email-sorter","event_type":"filesystem_deny","allowed":false,"resource":"read:/home/user/.ssh/id_rsa","rule":"filesystem.deny: ~/.ssh","reason":"path is explicitly denied"}

Détection d'altération :

root@kitploit:~
agentbox verify logs/email-sorter-audit.log

✅ Le journal d'audit est intact
   Entrées : 47 (IDs 1–47)
   Chaîne de hachage : ininterrompue

Modifiez n'importe quel caractère dans n'importe quelle entrée et la vérification échoue immédiatement — la chaîne est rompue.


Coffre-fort d'identifiants

root@kitploit:~
# Stocker un secret (jamais journalisé, jamais en clair dans l'environnement)
agentbox vault add ANTHROPIC_API_KEY

# Lister les noms d'identifiants stockés (les valeurs ne sont jamais affichées)
agentbox vault list

# Vérifier qu'un identifiant peut être déchiffré
agentbox vault test ANTHROPIC_API_KEY

# Pivoter un identifiant
agentbox vault add ANTHROPIC_API_KEY   # add met à jour l'existant

Les identifiants sont chiffrés avec AES-256-GCM. La clé maîtresse est dérivée de votre mot de passe de coffre-fort — jamais stockée sur disque. Au démarrage de l'agent, AgentBox injecte les identifiants sous forme de variables d'environnement limitées. L'agent appelle os.getenv("ANTHROPIC_API_KEY") normalement — il ne touche jamais au coffre-fort.


Limites de ressources

AgentBox tue les agents qui dépassent leurs limites déclarées :

root@kitploit:~
# Cet agent est configuré avec max_duration: 5s
agentbox run --manifest manifests/timeout-test.yaml python long_running_agent.py

Agent started
tick 1
tick 2
tick 3
tick 4
tick 5
🛑 Killing agent timeout-test: duration limit exceeded: 5s
⚠️  Agent timeout-test exited code 137 in 5.2s

Code de sortie 137 = SIGKILL. Arrêt propre, entrée d'audit finale écrite.


Compilation depuis les sources

root@kitploit:~
# Cloner
git clone https://github.com/siyad01/agentbox
cd agentbox

# Compiler
go build -o agentbox ./cmd/agentbox/

# Exécuter les tests (27 tests, tous réussis)
go test ./...

# Installer globalement
go install ./cmd/agentbox/

Prérequis :

  • Go 1.26+
  • Docker (pour les backends Docker et gVisor)
  • Noyau Linux 5.15+ (pour gVisor — détection automatique, repli sur Docker)

Structure du projet

root@kitploit:~
agentbox/
├── cmd/agentbox/main.go          ← Point d'entrée CLI
├── internal/
│   ├── policy/
│   │   ├── manifest.go           ← Schéma du manifeste YAML
│   │   ├── parser.go             ← validation + valeurs par défaut
│   │   └── engine.go             ← moteur de décision refus-d'abord (20 tests)
│   ├── audit/
│   │   ├── logger.go             ← journal en ajout seul avec chaîne de hachage SHA-256
│   │   ├── verifier.go           ← détection d'altération
│   │   └── reader.go             ← interrogation + filtrage
│   ├── vault/
│   │   ├── store.go              ← stockage d'identifiants chiffré AES-256-GCM
│   │   └── injector.go           ← injection à l'exécution (7 tests)
│   ├── sandbox/
│   │   ├── sandbox.go            ← interface Sandbox
│   │   ├── docker.go             ← backend Docker
│   │   ├── gvisor.go             ← backend gVisor (niveau noyau)
│   │   ├── manager.go            ← gestion du cycle de vie des agents
│   │   └── util.go               ← détection WSL2, utilitaires de chemins
│   ├── monitor/
│   │   └── enforcer.go           ← limites de ressources + arrêt automatique
│   └── api/
│       └── server.go             ← API REST sur :8081
└── manifests/
    ├── email-sorter.yaml         ← exemple de production
    └── timeout-test.yaml         ← exemple d'application des limites

Modèle de sécurité

Refus-d'abord par défaut. Les agents démarrent avec zéro autorisation. Chaque capacité doit être explicitement déclarée.

La liste de refus l'emporte toujours. Même si un chemin figure à la fois dans la liste de lecture et dans la liste de refus, la liste de refus a priorité. Aucune exception.

Application au niveau du noyau avec gVisor. Les filtres seccomp et la suppression de capacités opèrent à la frontière des appels système. La sortie du modèle — qui est contrôlable par un attaquant — s'exécute en espace utilisateur et ne peut pas modifier la politique au niveau du noyau.

Isolation des identifiants. La clé maîtresse du coffre-fort n'est jamais stockée sur disque. Les identifiants sont injectés sous forme de jetons limités à courte durée de vie au démarrage du sandbox et supprimés à la sortie. La compromission d'un processus d'agent ne compromet pas le coffre-fort d'identifiants.

Piste d'audit immuable. La chaîne de hachage SHA-256 rend détectable toute modification rétroactive du journal. Toute modification d'une entrée rompt la chaîne à partir de ce point.

Consultez SECURITY.md pour signaler des vulnérabilités.


Comparaison

FonctionnalitéAgentBoxSandbox OpenClawDocker uniquementAccuKnox
Open source (Apache 2.0)✅✅✅❌
Auto-hébergeable✅✅✅K8s uniquement
Isolation gVisor / noyau✅❌❌✅
Coffre-fort d'identifiants✅❌❌✅
Journal d'audit immuable✅❌❌✅
Arrêt automatique en cas de dépassement de limite✅❌❌✅
Indépendant du framework✅❌ (OpenClaw uniquement)✅✅
Déploiement binaire unique✅❌✅❌

Feuille de route

  • Backend Firecracker MicroVM (noyau Linux dédié par agent)
  • Surveillance des appels système eBPF (analyse comportementale en temps réel)
  • Politique-en-code OPA/Rego (ensembles de règles complexes dans Git)
  • Point de terminaison de métriques Prometheus
  • AgentBox Cloud (hébergement géré, prêt SOC2)
  • Signature de manifeste (Ed25519, vérification de provenance)
  • DLP (prévention de perte de données — analyse de la sortie de l'agent pour détecter les PII)

Contribution

Consultez CONTRIBUTING.md.

Licence

Apache 2.0 — libre d'utilisation, de modification et de distribution. Consultez LICENSE.


Conçu avec Go · Zéro dépendance externe pour les fonctionnalités de sécurité essentielles · Auto-hébergeable en une commande

Si CVE-2026-25253 vous a préoccupé, voici la solution. Donnez-lui une ⭐

Télécharger l’outil