GRAVITAS — Security Extension 是 GRAVITAS 的深度安全审查模式,定位为在基础技能之外附加加载的扩展:使用时需与 skills/gravitas/SKILL.md 一同加载,并且所有安全任务最低为 Tier 2,无例外。
用途 针对安全相关任务提供系统化审查流程,把安全侦察、OWASP Top 10 核对、反模式识别、安全测试与验证串联起来。
主要能力
- 安全侦察:在标准侦察之外,用 grep 检查 SQL 注入模式(query 字符串拼接、execute/raw/query 未参数化)、XSS 模式(innerHTML、outerHTML、document.write、insertAdjacentHTML、dangerouslySetInnerHTML)、硬编码密钥(password、api.key、secret、token 赋值)、认证绕过(skipAuth、bypassAuth、noAuth、isAdmin 赋 true)、批量赋值(Object.assign 或展开 req.body、create(req.body))、不安全直接对象引用(req.params.id、req.query.id)以及路径遍历(readFile 或 __dirname 配合 req.)。
- OWASP Top 10 清单:逐项核对 A01 损坏的访问控制、A02 加密失败、A03 注入、A04 不安全设计、A05 安全配置错误、A06 易受攻击组件、A07 认证/会话失败、A08 软件与数据完整性、A09 安全日志、A10 SSRF。
- 安全反模式示例:对注入、认证破坏、硬编码密钥、缺失认证检查分别给出 BAD 与 GOOD 的 TypeScript 代码对照。
- 安全测试:要求每个安全修复都附带可证明漏洞已修复的测试,文档给出 SQL 注入 payload 数组和认证保护(401/403)的测试示例。
- 安全验证链:标准链为 tsc --noEmit && eslint . --max-warnings 0 && vitest run;另有注入、XSS、密钥的 grep 计数检查(目标为 0)、npm audit --audit-level=high(0 高危/严重)以及汇总报告命令。
使用方式 作为 GRAVITAS 的附加技能加载,在安全任务中按文档给出的 grep 命令、OWASP 清单、测试模板和验证链执行;安全判定需同时满足测试通过、lint 干净、类型干净、0 注入模式、存在并通过安全测试、无新增硬编码密钥、npm audit 无高危/严重问题,输出 VERDICT: PASS (Security)。
适用场景 对 TypeScript 项目进行深度安全审查与修复验证时使用。
限制 文档中的检查命令主要面向 TypeScript(.ts/.tsx)与 src/ 目录,其他语言或目录结构未提供说明;具体支持的 GRAVITAS 版本、安装方式与收费信息暂未提供。