Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
agentbox — Runtime sandboxizzato open-source per agenti AI — isolamento gVisor/Docker, vault delle credenziali, registro di audit immutabile. Realizzato dopo CVE-2026-25253. | Kitploit
Strumenti/GitHubGitHub/siyad01/agentbox
Sicurezza dell'Infrastruttura CloudSicurezza dei ContenitoriStrumenti di Crittografia/DecrittografiaVirtualizzazione per la SicurezzaDevSecOpsGestione Identità e Accessi (IAM)
GitHubsiyad01/agentbox

agentbox

Runtime sandboxizzato open-source per agenti AI — isolamento gVisor/Docker, vault delle credenziali, registro di audit immutabile. Realizzato dopo CVE-2026-25253.

Vedi Repository
3 mesi faNon ancora revisionato

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

🛡️ AgentBox

Il runtime sandbox open-source per agenti AI

Esegui agenti AI con sicurezza. Ogni agente ha il proprio ambito di autorizzazioni, vault di credenziali, registro di audit e interruttore di emergenza.

Build License: Apache 2.0 Go Version Tests Platform


Perché AgentBox esiste

Il 27 gennaio 2026, CVE-2026-25253 è diventata la prima CVE mai assegnata a un sistema AI agentico. Una vulnerabilità critica di WebSocket hijacking in OpenClaw ha consentito l'esecuzione remota di codice con un solo clic contro qualsiasi istanza esposta — incluse quelle vincolate solo a localhost.

Nella stessa settimana, la campagna ClawHavoc ha infiltrato 341+ skill dannose nel marketplace di OpenClaw. Ogni skill installata da ClawHub veniva eseguita con gli stessi permessi di OpenClaw stesso — accesso completo al disco, token OAuth, chiavi API. Nessun sandbox. Nessun registro di audit. Nessun interruttore di emergenza.

"Installare una skill da ClawHub le concede l'accesso alle stesse risorse di OpenClaw stesso. Non esiste isolamento sandbox tra le skill per impostazione predefinita." — Analisi di sicurezza DEV Community, aprile 2026

I numeri:

  • 138+ CVE in OpenClaw nel solo 2026
  • 135.000+ istanze esposte in 82 paesi
  • 341 skill dannose confermate (12% dell'intero registro)
  • 1,5 milioni di token API per agenti esposti in chiaro
  • Microsoft: "Non è appropriato eseguirlo su una macchina personale o aziendale standard."

AgentBox è la soluzione strutturale. Non una patch — un runtime.


Cosa fa AgentBox

Ogni agente che esegui ottiene:

ProtezioneCome
Permessi zero-trustGli agenti dichiarano esattamente ciò di cui hanno bisogno. Nient'altro è accessibile.
Isolamento a livello di kernelgVisor intercetta ogni syscall. L'iniezione di prompt non può attraversare questo confine.
Vault di credenzialiCrittografia AES-256-GCM. Gli agenti non vedono mai segreti grezzi — solo token con ambito limitato.
Registro di audit immutabileCatena hash SHA-256. Ogni azione registrata. A prova di manomissione.
Interruttore di emergenzaTermina qualsiasi agente in meno di 100ms. Auto-kill su violazione dei limiti.
Limiti delle risorseTempo, memoria, numero di richieste — applicati a runtime, non in configurazione.
root@kitploit:~
Prima di AgentBox                    Dopo AgentBox
─────────────────                  ──────────────
Agente → disco completo ❌           Agente → solo percorsi consentiti ✅
Agente → tutta la rete ❌           Agente → solo host consentiti ✅
Agente → segreti grezzi ❌          Agente → token con ambito limitato ✅
Nessun registro di audit ❌         Ogni azione registrata ✅
Nessun interruttore di emergenza ❌ Kill in <100ms ✅
Le skill girano come root ❌        Sandbox isolato a livello di kernel ✅

Avvio rapido

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

# Valida un manifest prima di eseguirlo
agentbox validate manifests/email-sorter.yaml

# Esegui un agente in un sandbox
agentbox run --manifest manifests/email-sorter.yaml python agent.py

# Visualizza cosa ha fatto l'agente
agentbox audit --log logs/email-sorter-audit.log

# Verifica che il registro non sia stato manomesso
agentbox verify logs/email-sorter-audit.log

# Gestisci i segreti
agentbox vault add ANTHROPIC_API_KEY
agentbox vault list

Il manifest

Ogni agente dichiara esattamente ciò di cui ha bisogno. Niente che non sia elencato è accessibile.

root@kitploit:~
name: "email-sorter"
version: "1.0.0"
description: "Legge la casella di posta, categorizza le email, scrive nella cartella ordinata"
runtime: docker        # oppure: gvisor (livello kernel), firecracker (MicroVM)

permissions:
  filesystem:
    read:
      - "~/Documents/inbox"
    write:
      - "~/Documents/sorted"
    deny:                      # SEMPRE bloccato — anche se nella lista di lettura
      - "~/.ssh"
      - "~/.aws"
      - "~/.config"
      - "/etc"

  network:
    allow:
      - "api.anthropic.com"
      - "gmail.googleapis.com"
    deny:
      - "*"                    # blocca tutto il resto

  tools:
    allow:
      - "read_file"
      - "write_file"
      - "list_*"
    deny:
      - "execute_shell"        # nessun accesso alla shell, mai
      - "*_delete"             # nessuno strumento di eliminazione

  credentials:
    - ANTHROPIC_API_KEY        # iniettato dal vault a runtime
    - GMAIL_TOKEN              # l'agente non vede mai il valore grezzo

limits:
  max_tokens:    50000         # budget token LLM
  max_duration:  "30m"         # terminato dopo 30 minuti
  max_memory_mb: 256           # tetto RAM
  max_requests:  500           # massimo invocazioni di strumenti

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

Come funziona

root@kitploit:~
agentbox run --manifest agent.yaml python agent.py
         │
         ▼
┌─────────────────────────────────────────────────────┐
│                 Policy Engine                        │
│  Analizza il manifest → costruisce liste allow/deny │
│  Valida le firme → rifiuta skill non firmate        │
│  Inietta le credenziali dal vault                   │
└──────────────────────┬──────────────────────────────┘
                       │
                       ▼
┌─────────────────────────────────────────────────────┐
│              Isolation Layer                         │
│                                                     │
│  Docker  → container + seccomp + cap-drop           │
│  gVisor  → kernel in user-space, intercettazione syscall │
│  Firecracker → kernel MicroVM dedicato per agente   │
│                                                     │
│  Filesystem: solo i percorsi dichiarati montati     │
│  Rete:    solo gli host dichiarati raggiungibili    │
│  Capacità: TUTTE rimosse, nessuna aggiunta          │
└──────────────────────┬──────────────────────────────┘
                       │
          ┌────────────┼────────────┐
          ▼            ▼            ▼
   Audit Logger   Credential    Resource
   (hash-chain)     Vault       Monitor
   ogni azione   AES-256-GCM  auto-kill
   registrata    token con    su limite
                 ambito limitato

Perché gVisor blocca l'iniezione di prompt

Ogni altro sandbox si ferma al confine del container. Un agente che sfrutta una vulnerabilità del kernel può evadere.

gVisor intercetta ogni syscall prima che raggiunga il kernel host:

root@kitploit:~
L'agente tenta: write("/home/user/.ssh/id_rsa")
                    │
                    ▼
         kernel in user-space di gVisor
                    │
         Il percorso è nella lista deny? → SÌ
                    │
                    ▼
         EPERM restituito immediatamente
         Il kernel host non vede mai questa syscall
         L'iniezione di prompt non può attraversare questo livello

Riferimento CLI

root@kitploit:~
agentbox <comando> [opzioni]

Comandi:
  run       Esegui un agente in un sandbox
  validate  Valida un file manifest
  kill      Termina un agente in esecuzione
  audit     Visualizza i registri di audit dell'agente
  verify    Verifica l'integrità del registro di audit
  vault     Gestisci le credenziali crittografate
  serve     Avvia il server API REST
  version   Mostra la versione

Esempi:
  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

Avvia con agentbox serve (predefinito: :8081).

MetodoEndpointDescrizione
GET/healthControllo di salute
GET/dashboardDashboard web
GET/api/agentsElenca tutti gli agenti
POST/api/agentsAvvia un nuovo agente
DELETE/api/agents/:idTermina un agente
GET/api/auditInterroga il registro di audit

root@kitploit:~
# Elenca gli agenti in esecuzione
curl http://localhost:8081/api/agents

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

# Termina un agente
curl -X DELETE http://localhost:8081/api/agents/abc123

# Interroga il registro di audit
curl "http://localhost:8081/api/audit?deny=true&agent=email-sorter"

Registro di audit

Ogni azione dell'agente viene registrata in un file JSON Lines append-only con catena hash:

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"}

Rilevamento manomissioni:

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

✅ Il registro di audit è integro
   Voci: 47 (ID 1–47)
   Catena hash: ininterrotta

Modifica qualsiasi carattere in qualsiasi voce e la verifica fallisce immediatamente — la catena è spezzata.


Vault di credenziali

root@kitploit:~
# Memorizza un segreto (mai registrato, mai in chiaro nelle variabili d'ambiente)
agentbox vault add ANTHROPIC_API_KEY

# Elenca i nomi delle credenziali memorizzate (i valori non vengono mai mostrati)
agentbox vault list

# Verifica che una credenziale possa essere decrittata
agentbox vault test ANTHROPIC_API_KEY

# Ruota una credenziale
agentbox vault add ANTHROPIC_API_KEY   # add aggiorna le credenziali esistenti

Le credenziali sono crittografate con AES-256-GCM. La chiave master è derivata dalla tua password del vault — mai memorizzata su disco. All'avvio dell'agente, AgentBox inietta le credenziali come variabili d'ambiente con ambito limitato. L'agente chiama os.getenv("ANTHROPIC_API_KEY") normalmente — non tocca mai il vault.


Limiti delle risorse

AgentBox termina gli agenti che superano i limiti dichiarati:

root@kitploit:~
# Questo agente è configurato con 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

Codice di uscita 137 = SIGKILL. Arresto pulito, voce di audit finale scritta.


Compilazione dal sorgente

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

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

# Esegui i test (27 test, tutti superati)
go test ./...

# Installa globalmente
go install ./cmd/agentbox/

Requisiti:

  • Go 1.26+
  • Docker (per i backend Docker e gVisor)
  • Kernel Linux 5.15+ (per gVisor — rilevato automaticamente, fallback su Docker)

Struttura del progetto

root@kitploit:~
agentbox/
├── cmd/agentbox/main.go          ← punto di ingresso CLI
├── internal/
│   ├── policy/
│   │   ├── manifest.go           ← schema manifest YAML
│   │   ├── parser.go             ← validazione + valori predefiniti
│   │   └── engine.go             ← motore decisionale deny-first (20 test)
│   ├── audit/
│   │   ├── logger.go             ← registro append-only con catena hash SHA-256
│   │   ├── verifier.go           ← rilevamento manomissioni
│   │   └── reader.go             ← query + filtro
│   ├── vault/
│   │   ├── store.go              ← archivio credenziali crittografato AES-256-GCM
│   │   └── injector.go           ← iniezione a runtime (7 test)
│   ├── sandbox/
│   │   ├── sandbox.go            ← interfaccia Sandbox
│   │   ├── docker.go             ← backend Docker
│   │   ├── gvisor.go             ← backend gVisor (livello kernel)
│   │   ├── manager.go            ← gestione del ciclo di vita degli agenti
│   │   └── util.go               ← rilevamento WSL2, helper percorsi
│   ├── monitor/
│   │   └── enforcer.go           ← limiti delle risorse + auto-kill
│   └── api/
│       └── server.go             ← API REST su :8081
└── manifests/
    ├── email-sorter.yaml         ← esempio di produzione
    └── timeout-test.yaml         ← esempio di applicazione dei limiti

Modello di sicurezza

Deny-first per impostazione predefinita. Gli agenti partono con zero permessi. Ogni capacità deve essere dichiarata esplicitamente.

La lista deny vince sempre. Anche se un percorso appare sia nella lista di lettura che in quella deny, la lista deny ha precedenza. Nessuna eccezione.

Applicazione a livello di kernel con gVisor. I filtri seccomp e la rimozione delle capacità operano al confine delle syscall. L'output del modello — che è controllabile dall'attaccante — viene eseguito in user space e non può modificare la policy a livello di kernel.

Isolamento delle credenziali. La chiave master del vault non viene mai memorizzata su disco. Le credenziali vengono iniettate come token con ambito limitato e breve durata all'avvio del sandbox e scartate all'uscita. Il compromesso di un processo agente non compromette il vault di credenziali.

Registro di audit immutabile. La catena hash SHA-256 rende rilevabile qualsiasi modifica retroattiva del registro. Qualsiasi modifica a qualsiasi voce spezza la catena da quel punto in poi.

Consulta SECURITY.md per la segnalazione delle vulnerabilità.


Confronto

FunzionalitàAgentBoxOpenClaw sandboxSolo DockerAccuKnox
Open source (Apache 2.0)✅✅✅❌
Auto-hostabile✅✅✅Solo K8s
Isolamento gVisor / kernel✅❌❌✅
Vault di credenziali✅❌❌✅
Registro di audit immutabile✅❌❌✅
Auto-kill su violazione dei limiti✅❌❌✅
Indipendente dal framework✅❌ (solo OpenClaw)✅✅
Distribuzione binario singolo✅❌✅❌

Roadmap

  • Backend Firecracker MicroVM (kernel Linux dedicato per agente)
  • Monitoraggio syscall eBPF (analisi comportamentale in tempo reale)
  • Policy-as-code OPA/Rego (set di regole complesse in Git)
  • Endpoint metriche Prometheus
  • AgentBox Cloud (hosting gestito, pronto SOC2)
  • Firma dei manifest (Ed25519, verifica della provenienza)
  • DLP (prevenzione della perdita di dati — scansione dell'output dell'agente per PII)

Contributi

Consulta CONTRIBUTING.md.

Licenza

Apache 2.0 — libero da usare, modificare e distribuire. Consulta LICENSE.


Costruito con Go · Zero dipendenze esterne per le funzionalità di sicurezza principali · Auto-hostabile con un solo comando

Se CVE-2026-25253 ti ha preoccupato, questa è la soluzione. Lascia una ⭐

Scarica lo strumento