vectimus/policies
GitHub: vectimus/policies
一套基于真实事件与合规框架的 Cedar 策略集合,用于约束 AI 编码代理的行为。
Stars: 0 | Forks: 1
# Vectimus 策略
**11 个包 | 78 个策略 | 369 条规则**
用于管理 AI 编码代理行为的 Cedar 策略。每一条规则都源自真实事件、已公开的漏洞或安全框架场景。




## 策略包
[浏览所有在线策略 →](https://vectimus.com/policies)
| 包 | 阻止的内容 |
|----|------------|
| `destructive-ops` | `rm -rf /`、`mkfs`、fork bombs、`chmod 777 /` |
| `secrets` | 读取 `.env`、凭据、API 密钥、私钥 |
| `supply-chain` | 锁定文件篡改、恶意注册表、无审查的 `npm publish` |
| `infrastructure` | `terraform destroy`、`kubectl delete`、IAM 权限提升 |
| `code-execution` | 反向 Shell、`eval()` 链、下载并执行模式 |
| `data-exfiltration` | 将 Base64 管道传输到 `curl`、DNS 隧道、凭据泄露 |
| `file-integrity` | 写入 CI 配置、证书、`.claude/`、IDE 设置、代理内存 |
| `database` | `DROP DATABASE`、ORM `--force` 标志、迁移删除 |
| `git-safety` | `push --force`、`reset --hard`、`clean -f` |
| `mcp-safety` | 未批准的 MCP 服务器、参数注入、工具冒充 |
| `agent-governance` | 自动生成、持久化、代理间通信、审计篡改 |
## 示例策略
每条规则都包含 `@incident`(它所阻止的真实攻击)和 `@controls`(合规框架映射):
```
@id("vectimus-destops-001")
@description("Block recursive deletion of root, home or current directory")
@incident("Home directory deletion via rm -rf reported in Claude Code sessions, 2025")
@controls("SOC2-CC6.1, EU-AI-15, NIST-CSF-PR.DS-01, ISO27001-A.8.9")
@suggested_alternative("Delete specific files or directories by name instead of using broad recursive deletion.")
forbid (
principal,
action == Vectimus::Action::"shell_command",
resource
) when {
context.command like "*rm -rf /*" ||
context.command like "*rm -rf ~*" ||
context.command like "*rm -rf .*"
};
```
每条规则都可追溯到真实事件、已发布 CVE 或合规框架要求。无冗余内容。
## 合规性覆盖
这些注解的存在是为了让审计人员能够将控制措施追溯到执行依据。这是审计证据,而非合规性复选框。
| 框架 | 前缀 | 覆盖范围 |
|------|------|----------|
| OWASP Agentic Top 10 | `OWASP-ASI` | 强制执行全部 10 个类别 |
| SOC 2 Type II | `SOC2-` | CC6.1、CC6.6、CC6.8、CC7.2、CC7.3、CC8.1 |
| NIST AI RMF | `NIST-AI-` | GOVERN 1.1/1.5、MAP 1.5、MEASURE 2.5/2.6、MANAGE 2.2/3.2 |
| NIST CSF 2.0 | `NIST-CSF-` | PR.DS、PR.PS、DE.CM、RS.AN |
| ISO 27001:2022 | `ISO27001-` | A.8 技术控制、A.5 组织控制 |
| EU AI Act | `EU-AI-` | 第 9、12、13、14、15 条 |
| SLSA | `SLSA-` | L2 供应链控制 |
| CIS Controls | `CIS-` | CIS-16 |
## 策略更新方式
1. **Sentinel 发现威胁**:一个三代理管道监控攻击披露、CVE 和社区报告。
2. **Sentinel 编写策略**:生成 Cedar 代码,通过沙箱证明器验证,并向本仓库打开 PR。
3. **人工审核并合并**:每条策略 PR 在发布前都需人工批准。
4. **自动同步到本地安装**:Vectimus 每 24 小时从 Vectimus API 检查策略更新,无需人工干预。
## Sentinel 集成
[Sentinel](https://github.com/vectimus/sentinel) 是自动化安全管道,用于分析 AI 代理事件并向本仓库打开包含新策略或更新策略的 PR。其安全工程师代理在提出更改前会读取 `manifest.json`、`VERSION` 和 `schema.cedarschema`,以了解当前策略格局。
## 测试夹具
`tests/` 目录包含由 Sentinel 和消费者仓库用于验证策略决策的事件回放夹具。每个子目录以事件 ID 命名(例如 `VTMS-2026-0003`),并包含:
- `entities.json` — 事件中涉及的 Cedar 实体(Agent、Tool、Resource)
- `request_block.json` — 策略必须 DENY 的请求
- `request_allow.json` — 策略必须 ALLOW 的相关请求(用于验证无过度拦截)
## 消费者仓库
标记的发布会将 `policies-updated` 事件分发给消费者仓库,它们会打开自己的同步 PR:
- [vectimus/vectimus](https://github.com/vectimus/vectimus)(Python)
- [vectimus/openclaw](https://github.com/vectimus/openclaw)(TypeScript)
- [vectimus/sentinel](https://github.com/vectimus/sentinel)(安全管道)
## 仓库结构
```
/
├── pack.toml # Name, version, description
├── .cedar # One or more forbid/permit rules
```
策略是与语言无关的 Cedar 文本文件,无论是通过 cedarpy、cedar-wasm 还是任何符合 Cedar 规范的实现进行评估,都会产生相同的允许/拒绝决策。
## 贡献指南
### 策略格式
每条规则需要以下注解:
- **`@id`** — 遵循 `vectimus-<包>-` 模式的唯一标识符
- **`@description`** — 用自然语言描述规则所阻止的内容
- **`@incident`** — 驱动此规则的真实世界攻击或事件
- **`@controls`** — 逗号分隔的合规框架映射
- **`@suggested_alternative`** — 代理应采取的替代操作
### 流程
1. **添加或编辑** 对应包目录中的 `.cedar` 文件
2. **包含 `@incident` 注解** — 没有事件就没有规则
3. **映射到合规框架** 通过 `@controls`。请参考上方表格中的前缀。
4. **运行测试套件** 在消费者仓库中(`vectimus/vectimus`、`vectimus/openclaw`)验证评估结果
5. **更新 CHANGELOG.md** 记录更改
6. **打开 PR** 并标记对应的包名称
### 版本控制
本仓库采用语义化版本控制:
- **补丁版本**(`v2.0.1`)— 规则调整、误报修复、描述变更
- **次要版本**(`v2.1.0`)— 新增策略,策略本身不变
- **主要版本**(`v3.0.0`)— 策略移除、模式变更、现有规则行为变更
## 安装 Vectimus
这些策略由主 [Vectimus](https://github.com/vectimus/vectimus) 包消费。要开始强制执行:
```
pipx install vectimus # or: uv tool install vectimus
vectimus init
```
适用于 Claude Code、Cursor、GitHub Copilot 和 Gemini CLI(通过原生钩子)。请参阅[主仓库](https://github.com/vectimus/vectimus)获取安装说明。
## 许可证
Apache 2.0
标签:AI安全, AI编码代理, Cedar策略, Chat Copilot, EUAI法案, ISO27001, MCP安全, NIST, SOC2, Streamlit, 云计算, 代理治理, 代码安全, 合规控制, 威胁建模, 审计篡改, 数据防泄露, 文件完整性, 最小权限, 漏洞枚举, 破坏性操作, 策略治理, 纵深防御, 自动生成代理, 自定义脚本, 规则引擎, 访问控制, 跨代理通信, 逆向工具