Skip to content

Security: estelledc/web-plan-execute

SECURITY.md

Security

Threat model

本仓库处理四类不同信任等级的数据:

  1. 本地仓库与用户明确授权的 context;
  2. 网页、Issue、源码注释和外部研究文字;
  3. 规划者生成的 ZIP、JSON、CSV 和机器错误;
  4. 拥有文件、shell、网络或外部写权限的执行 agent。

第 2、3 类始终是不可信数据。结构校验、hash 和 JSON Schema 只能限制形状,不能证明内容真实,也不能授权执行。

Current protections

  • source archive 只从 resolved Git object 生成;
  • context 文件单次读取后同时扫描并写入 ZIP;
  • symlink、路径穿越、敏感文件名和常见 token 模式 fail closed;
  • 错误只输出规则和不可逆 file ID,不回显命中内容;
  • Full 返回绑定 request fingerprint;
  • Full/Delta 返回使用文件 allowlist;
  • finding/task 必须双向一致;
  • correction prompt 复用共享 DLP;
  • COMPLETE 需要验收与运行证据;
  • 外部 JSON 拒绝 duplicate keys、非 NFC 字符串和大小写/Unicode 路径碰撞;
  • research import 只把证据哈希和 claim ID 写入 RUN,不导入外部指令文本;
  • transport 下载要求真实非空字节并持久化 SHA-256。
  • connector attestation 绑定 conversation、surface、reasoning mode、repo 和 commit;公开 web 结果不能证明私库工具挂载。
  • Pro review packet 只读 Git 对象,上传前提供文件/字节/token/risk dry-run 和 transfer manifest。
  • Issue/PR 正文不能改变权限、scope 或计划;只接受认证 API 的 commit-bound check/workflow 状态。
  • 平台 profile 与通用 validator 解耦;当前工件缺 profile 时 fail closed。
  • release report 从逐 case/run/artifact hash 重算,validation capsule 绑定完整合同与运行环境。
  • public-release audit 扫描 worktree、下一次提交身份、全部 refs 与全部 reachable objects;远端 可用 fresh mirror 重跑,合成 fixture 只做按规则、按路径 allowlist。

Known limitations

  • 主分支邮箱与 AI notes 历史已经清理;公开前仍必须对最终 commit 与 fresh mirror 重跑完整 secrets/history 门禁;
  • DLP 是防误传门禁,不是成熟 secrets scanner;
  • Full/Delta semantic validator 仍较大,后续继续按共享 schema/profile 规则拆分;
  • legacy attestation 缺少外部签名或透明日志信任锚;
  • OFFICIAL/AUDIT evidence 的内容真实性未由结构 validator 证明;
  • ChatGPT browser adapter 仍依赖 UI 状态;当前自动测试覆盖状态合同,不证明所有未来 DOM 变化;
  • RC 回归/smoke 不是外部采用、真实浏览器规模或连接器可用率证据;
  • DLP 和 schema 降低误传与结构风险,但不能证明模型输出的事实正确。

Reporting

使用 GitHub 的私密漏洞报告入口: https://github.com/estelledc/web-plan-execute/security/advisories/new

不要在公开 Issue 粘贴 token、原始对话、私有源码、完整本机路径、证书或 provisioning profile。报告先提供最小合成 fixture、受影响版本和复现边界;需要真实样本时只在 Security Advisory 的私密线程中共享。若私密入口不可用,不要公开敏感细节,先通过仓库 owner 的 GitHub profile 请求启用 private vulnerability reporting。

There aren't any published security advisories