Agentic Evidence
面向 Agentic AI 的安全证据与可观测性
Agentic Evidence 是一个 OWASP 开源参考项目,探索如何为 agentic AI 执行收集、关联和评估安全证据。
Agent 可观测性可以表明某个事件已被记录。而安全调查需要确定发生了什么、涉及哪些身份和权限、哪些输入影响了该操作、做出了哪些策略决策,以及现有证据实际支持哪些结论。
Agentic Evidence 聚焦于证据充分性、执行重建和安全调查。它补充而非重复 agent 安全分类体系和测试项目。
项目状态: 项目处于孵化阶段,初始实现正在规划中。本文档中描述的架构和命令代表预期的 MVP,可能会随着实现决策的最终确定而发生变化。
目标
- 从关联的执行事件和安全事件中重建 agent 执行过程。
- 将操作与身份、输入、检索内容、工具调用、授权决策和结果关联起来。
- 使证据来源和证据缺口对调查人员可见。
- 展示从已收集证据中可以得出和无法得出哪些结论。
- 提供确定性、可重复的场景,供贡献者在本地运行。
- 发布可扩展的证据分类体系以及面向安全从业者的实用指南。
初始场景
- 良性执行: 为正常的 agent 工作流建立基线。
- 检索投毒: 展示检索内容如何影响 agent 操作,以及证据是否捕获了这种关系。
- 工具描述符修改: 评估证据能否确定观察到或使用了哪个工具描述符,以及修改是否可被检测到。
场景应当是确定性的,并使用合成数据。除非实现和测试支持该结论,否则项目不得声称某种攻击可被检测到。
预期 MVP
首个版本计划为一个本地参考应用,具有以下特性:
- 确定性场景运行器。
- 带版本的 JSON 证据模式。
- OpenTelemetry 执行遥测与关联。
- 证据记录器和本地证据存储。
- 安全调查界面,包含执行时间线、事件详情和证据缺口。
- 可导出的证据包。
- 自动化测试、Docker Compose 配置和贡献者文档。
拟议技术栈
| 组件 | 拟议技术 |
|---|
| 应用/API | Python 搭配 FastAPI,或在适当场景使用 Go |
| 证据格式 | 带版本的 JSON 与 JSON Schema |
| 遥测 | OpenTelemetry SDK 和 OTLP |
| 本地存储 | SQLite 和/或 JSON 固定数据 |
| 调查 UI | Streamlit 或等效的轻量级 UI |
| 本地部署 | Docker Compose |
| 测试 | pytest 和模式验证 |
| 持续集成 | GitHub Actions |
这些是拟议的实现选择,并不保证每个组件都可用。架构决策应记录在仓库中,并且只有在有明确技术理由时才更改。
本项目不是什么
初始版本不打算成为:
- 生产级 SIEM 或通用可观测性平台。
- Agent 运行时、模型提供方或自主响应引擎。
- 对 agent 安全或所记录证据真实性的保证。
- 授权执行、运行时安全控制或事件响应的替代品。
- 依赖实时 LLM、Kubernetes 或云基础设施。
遥测本身不是证据。 事件可能缺失、关联错误,或由受损组件生成。应用必须区分观察到的记录、组件断言、独立验证的证据和未知项。
概念工作流
- 运行确定性场景。
- 生成执行事件和安全事件。
- 将事件与 agent 运行及 trace 上下文进行关联。
- 验证事件结构并记录来源信息。
- 检查执行时间线、授权决策、结果以及证据缺口。
- 导出证据包,并将其与预期的场景发现进行比对。
仓库文档
- 入门指南:本地环境搭建与首次运行工作流。
- 资源:标准、规范及相关安全项目。
- 常见问题:项目范围、证据可信度、遥测限制以及贡献相关问题。
项目原则
- 先有证据,后有结论: 发现必须有明确证据支撑。
- 让不确定性可见: 证据缺失本身就是一种结果,而不是凭空编造结论的理由。
- 可重复性: 场景必须具有确定性输入和可测试的预期结果。
- 最少数据: 默认使用合成输入,避免收集机密信息或不必要的个人数据。
- 互操作性: 在适当情况下优先采用有文档记录的 schema 和既有的遥测约定。
- 安全设计: 将证据摄取、存储、导出以及调查界面视为安全敏感组件。
贡献
欢迎在以下领域做出贡献:
- 证据 schema 设计与验证。
- Agent 安全场景与可复现的测试用例。
- 遥测收集与事件关联。
- 证据来源、完整性与分析。
- 调查界面改进。
- 自动化测试与文档。
在开始实质性工作之前:
- 查看现有 issue 和项目路线图。
- 提交或评论一个描述拟议变更的 issue。
- 保持 pull request 聚焦,并在适用时包含测试或可复现的证据。
- 切勿提交机密信息、真实客户数据或敏感的生产环境 trace。
请遵循仓库的贡献指南以了解当前要求。
许可证
本项目拟采用 Apache License 2.0,具体以仓库中发布的许可证文件为准。请查阅仓库中的 LICENSE 文件以获取权威条款。
致谢
Agentic Evidence 是一个 OWASP 项目。有关当前的领导团队、联系方式及项目状态,请参阅官方 OWASP 项目列表和仓库元数据。对第三方工具和服务的引用不代表 OWASP 的认可。