jjackk0k/enclave
GitHub: jjackk0k/enclave
面向安全团队的强化型 AI 沙箱与操作控制台原型,通过服务端强制授权、会话隔离和不可变审计为安全专业人员提供可防御的 AI 协作环境。
Stars: 0 | Forks: 0
# Enclave
[](https://github.com/jjackk0k/enclave/actions/workflows/ci.yml)
**安全团队让 AI 投入工作的安全工作空间。**
Enclave 是一个经过强化的 sandbox 和专业 console,安全专业人员——包括红队、AppSec、IR、SOC、GRC——在此与 Claude 协作,处理真实的敏感系统。所有操作均在每会话隔离(per-session isolation)的环境中进行,每个行动都受限于他们的角色、权限和许可,并被写入不可变的审计跟踪(audit trail)中。
## 🔗 在线演示
营销网站 + 交互式 console(GitHub Pages):**https://jjackk0k.github.io/enclave/**
- `index.html` — 着陆页
- `app.html` — console(模拟 SSO → chat + profile + 实时 sandbox 面板)。选择一个身份,尝试 **"triage the pcap"** 和 **"test the guardrails"** 提示词。
## 专注领域
| 工作负载 | 最适用于 | 契合原因 |
|---|---|---|
| **安全代码审查** | AppSec 团队、受监管的软件(金融科技 / 医疗 / 国防)、发布前审计 | 敏感资产是*源代码/IP*;工作是*分析*——这正是 Claude 最擅长的领域。近乎零的出口流量。纯粹的“落地”产品。 |
| **红队行动** | 攻击性安全团队、渗透测试公司、紫队演练 | 主动的、工具驱动的工作,需要*范围受限的授权*、*严格的隔离*和*经得起辩护的审计*。这是证明隔离护城河的差异化因素——“扩展”产品。 |
## 安全模型(核心部分)
漂亮的 UI *只是门面*。真正的安全存在于后端,以多层形式实现,并且**授权在模型之下执行,绝不由模型执行**:
- 用户的权限/profile **为** AI **提供信息**(展示什么内容、如何措辞)——它**绝不进行授权**。
- 每个特权操作都会在**服务端**根据已签名的身份进行验证,因此没有任何提示词(包括 prompt injection)能够提升自身的权限。
- 每会话一次性隔离 · 拒绝所有的出口防火墙 · 哈希化的不可变审计账本。
文档:[安全架构](docs/security-architecture.md) · [威胁模型](docs/threat-model.md) · [SOC 2 映射](docs/soc2-mapping.md) · [工具架](docs/tool-shelf.md) · [项目计划](docs/project-plan.md) · [部署](deploy/)。
## 本地运行
无需构建步骤——页面是自包含的(内联 CSS/JS)。只需在浏览器中打开 `index.html`,或为该文件夹提供服务:
```
python -m http.server 8080 # then visit http://localhost:8080
```
## 运行验证程序
后端不仅仅是一张图表——其核心机制如今已可运行。在仓库根目录下:
```
npm test # runs every self-checking proof and reports green/red
```
或者单独运行每一个:
| 验证程序 | 验证内容 |
|---|---|
| [`poc/enforcement-seam`](poc/enforcement-seam) | `npm install && npm run demo` — 20 个场景:权限**和**资质由真正的 [Cedar](https://www.cedarpolicy.com/) 在模型外部根据已签名身份强制执行(包括 prompt injection、混淆代理、伪造 token 以及拥有完全访问权限的 lead)。 |
| [`poc/isolation`](poc/isolation) | `npm run demo` — 配置 → PEP 门控执行 → 隔离运行 → 销毁 → 审计,跨越 process / Docker / Firecracker 层级。 |
| [`poc/egress-broker`](poc/egress-broker) | `npm run demo` — 拒绝所有的出口流量 + Anthropic 密钥在 sandbox *外部*注入(BYO-key 绝不进入其中)。 |
| [`poc/audit-anchor`](poc/audit-anchor) | `npm run demo` — 账本上的 Merkle 根,由外部权威机构签名:第三方无需信任 Enclave 即可验证的防篡改证据。 |
| [`poc/identity`](poc/identity) | `npm run demo` — SD-JWT 选择性披露权限 (RFC 9901) + DPoP 绑定的 token (RFC 9449) + SPIFFE 工作负载身份。 |
| [`poc/memory`](poc/memory) | `npm run demo` — 受治理的跨会话 AI 记忆:范围限于(workspace,权限),经过 DLP 处理、审计,且无法提升权限(对污染免疫)。 |
| [`presets`](presets) | `node scaffold.mjs --list` — 从预设中构建一个受治理的、预填充的 workspace。 |
| [`poc/persona-work`](poc/persona-work) | `npm run demo` — AI 为每个角色生成与角色和权限相符的交付物(离线,或使用密钥 `--live`)。 |
| [`poc/full-stack`](poc/full-stack) | `npm run demo` *(Docker)* — 一个没有网络的隔离 sandbox,其唯一的出口是注入密钥的 broker:数据不会泄露,密钥绝不进入。 |
| [`poc/tool-forge`](poc/tool-forge) | `npm run demo` *(Docker)* — 在一个密封的、无网络的容器中构建一个适用于 **Linux 和 Windows** 的安全工具(工具开发工作负载)。 |
| [`poc/claude-integration`](poc/claude-integration) | `bash run.sh` *(claude CLI)* — **真正的 Claude Code** 带有 Enclave hook:实时会话的工具调用由 Cedar 根据绑定的身份进行权限验证。 |
## 运行 console(实时 AI)
```
ANTHROPIC_API_KEY=sk-ant-… npm run console # then open http://localhost:8977
```
## 状态
早期原型。当前版本展示了**产品体验和身份模型**。“Micro-VM isolation”、“egress firewall”和“immutable ledger”描述的是目标架构(参见设计文档)——强化型后端是下一步的构建内容。
© 2026 — 保留所有权利。Enclave 是一个独立的概念,不隶属于 Anthropic,也未获得其认可。“Claude”和“Claude Code”是 Anthropic 的产品。
标签:DLL 劫持, MITM代理, 人工智能, 原型项目, 大语言模型, 安全沙箱, 数据可视化, 权限控制, 用户模式Hook绕过, 自定义脚本, 请求拦截, 调试辅助