siyad01/agentbox
GitHub: siyad01/agentbox
AgentBox 是一个面向 AI 智能体的开源沙箱运行时,通过 gVisor 内核级隔离、加密凭证库和不可变审计日志,从根本上解决 AI 智能体运行时的安全隔离与行为可控性问题。
Stars: 0 | Forks: 0
# 🛡️ AgentBox
**面向 AI 智能体的开源沙箱运行时**
*充满自信地运行 AI 智能体。每个智能体都拥有其独立的权限范围、凭证库、审计日志和紧急停止开关。*
[](https://github.com/siyad01/agentbox/actions/workflows/build.yml)
[](LICENSE)
[](go.mod)
[](internal/)
[](#download)
## AgentBox 存在的意义
在 2026 年 1 月 27 日,**CVE-2026-25253** 成为有史以来第一个被分配给自主 AI 系统的 CVE(通用漏洞披露)。OpenClaw 中的一个严重 WebSocket 劫持漏洞实现了针对任何暴露实例的一键式远程代码执行——包括那些仅绑定到 localhost 的实例。
在同一周,**ClawHavoc 攻击活动**将 341 个以上的恶意技能潜入到 OpenClaw 的市场中。从 ClawHub 安装的每个技能都拥有与 OpenClaw 本身相同的权限——完整的磁盘访问权限、OAuth token、API 密钥。没有沙箱。没有审计日志。没有紧急停止开关。
**这些数字:**
- 仅在 2026 年,OpenClaw 就有 138 个以上的 CVE
- 遍布 82 个国家的 135,000 多个暴露实例
- 341 个被确认的恶意技能(占整个注册表的 12%)
- 150 万个智能体 API token 以明文形式暴露
- Microsoft:*“在标准的个人或企业机器上运行它是不合适的。”*
AgentBox 是从结构层面解决此问题的方案。不是一个补丁——而是一个运行时。
## AgentBox 的作用
你运行的每个智能体都会获得:
| 保护措施 | 实现方式 |
|-----------|-----|
| **零信任权限** | 智能体准确声明它们需要什么。其他一切均不可访问。 |
| **内核级隔离** | gVisor 拦截每一次 syscall。Prompt 注入无法跨越此边界。 |
| **凭证库** | AES-256-GCM 加密。智能体永远看不到原始机密——只能看到限定范围的 token。 |
| **不可变审计日志** | SHA-256 哈希链。记录每一个操作。防篡改。 |
| **紧急停止开关** | 在 100 毫秒内终止任何智能体。超出限制时自动终止。 |
| **资源限制** | 时间、内存、请求计数——在运行时强制执行,而非在配置中。 |
```
Before AgentBox After AgentBox
───────────────── ──────────────
Agent → full disk ❌ Agent → allowed paths only ✅
Agent → all network ❌ Agent → allowed hosts only ✅
Agent → raw secrets ❌ Agent → scoped tokens ✅
No audit trail ❌ Every action logged ✅
No kill switch ❌ Kill in <100ms ✅
Skills run as root ❌ Kernel-isolated sandbox ✅
```
## 快速开始
```
# 安装
go install github.com/siyad01/agentbox/cmd/agentbox@latest
# 运行前验证 manifest
agentbox validate manifests/email-sorter.yaml
# 在沙箱中运行 agent
agentbox run --manifest manifests/email-sorter.yaml python agent.py
# 查看 agent 的操作
agentbox audit --log logs/email-sorter-audit.log
# 验证日志未被篡改
agentbox verify logs/email-sorter-audit.log
# 管理 secrets
agentbox vault add ANTHROPIC_API_KEY
agentbox vault list
```
## 清单(Manifest)
每个智能体会准确声明它需要什么。**未列出的内容均不可访问。**
```
name: "email-sorter"
version: "1.0.0"
description: "Reads inbox, categorizes emails, writes to sorted folder"
runtime: docker # or: gvisor (kernel-level), firecracker (MicroVM)
permissions:
filesystem:
read:
- "~/Documents/inbox"
write:
- "~/Documents/sorted"
deny: # ALWAYS blocked — even if in read list
- "~/.ssh"
- "~/.aws"
- "~/.config"
- "/etc"
network:
allow:
- "api.anthropic.com"
- "gmail.googleapis.com"
deny:
- "*" # block everything else
tools:
allow:
- "read_file"
- "write_file"
- "list_*"
deny:
- "execute_shell" # no shell access, ever
- "*_delete" # no deletion tools
credentials:
- ANTHROPIC_API_KEY # injected from vault at runtime
- GMAIL_TOKEN # agent never sees the raw value
limits:
max_tokens: 50000 # LLM token budget
max_duration: "30m" # killed after 30 minutes
max_memory_mb: 256 # RAM ceiling
max_requests: 500 # max tool invocations
audit:
log_level: full
alert_on:
- filesystem_deny
- network_deny
- token_budget_80pct
log_path: "logs/email-sorter-audit.log"
```
## 工作原理
```
agentbox run --manifest agent.yaml python agent.py
│
▼
┌─────────────────────────────────────────────────────┐
│ Policy Engine │
│ Parses manifest → builds allow/deny lists │
│ Validates signatures → rejects unsigned skills │
│ Injects credentials from vault │
└──────────────────────┬──────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────┐
│ Isolation Layer │
│ │
│ Docker → container + seccomp + cap-drop │
│ gVisor → user-space kernel, syscall interception │
│ Firecracker → dedicated MicroVM kernel per agent │
│ │
│ Filesystem: only declared paths mounted │
│ Network: only declared hosts reachable │
│ Capabilities: ALL dropped, none added back │
└──────────────────────┬──────────────────────────────┘
│
┌────────────┼────────────┐
▼ ▼ ▼
Audit Logger Credential Resource
(hash-chain) Vault Monitor
every action AES-256-GCM auto-kill
logged scoped tokens on limit
```
### gVisor 为何能阻止 Prompt 注入
所有其他沙箱都停留在容器边界。利用内核漏洞的智能体可以逃逸。
gVisor 在**每一个 syscall 到达宿主机内核之前**对其进行拦截:
```
Agent tries: write("/home/user/.ssh/id_rsa")
│
▼
gVisor user-space kernel
│
Path in deny list? → YES
│
▼
EPERM returned immediately
Host kernel never sees this syscall
Prompt injection cannot cross this layer
```
## CLI 参考
```
agentbox
基于 Go 构建 · 核心安全功能零外部依赖 · 一条命令即可实现自托管
**如果 CVE-2026-25253 让你感到担忧,这就是解决方案。请给它一个 ⭐**
标签:AI Agent安全, AI基础设施, API安全, CISA项目, CVE-2026-25253, Docker, EVTX分析, Go语言, gVisor, IP 地址批量处理, JSON输出, WebSocket劫持防护, 代理运行时, 代码分析, 内核级隔离, 凭证管理, 安全沙箱, 安全防御评估, 审计日志, 日志审计, 权限控制, 沙箱运行时, 程序破解, 终止开关, 请求拦截, 远程代码执行防护, 隔离运行环境, 零信任架构