AI 安全审查
审查 diff 找安全问题:注入、认证、密钥、路径遍历。
测试与审查高级
为什么
GitHub 2024 调查发现 92% 的美国受访者用 AI 编程工具生成测试用例,98% 的组织曾尝试用 AI 做测试。安全 bug 漏过功能审查。
有安全聚焦提示 + diff 的 AI 在合并前捕获常见类(SQLi、XSS、缺认证、硬编码密钥),补充 SAST 工具。
何时使用
触及认证、输入处理、SQL、文件访问、或加密的 PR 用此。纯 UI 跳过。
如何做
1. 喂 diff + 认证/输入/SQL 上下文。
2. 问:"审查注入、缺认证、硬编码密钥、路径遍历;引用行"。
3. 每发现:确认、修复、加回归测试。
4. 与 SAST 工具交叉检查;调和差异。
5. 确认高危发现阻塞合并。
示例
Diff:db.query(`SELECT * FROM users WHERE name LIKE '%${q}%'`)
AI:"users.ts:18 SQL 注入 — q 插值进查询。修复:参数化。"
另:"此路由无认证检查 — 加 requireAuth 中间件。"
全修;为注入加回归测试;SAST 确认干净。
常见问题
- ⚠Error: Cannot find module 'jest' / 'vitest' → 运行 `npm install --save-dev vitest`(或 jest);检查 package.json 测试脚本。
- ⚠错误:"Test timed out after 5000ms" → 调大 `testTimeout` 或 await 异步操作;网络调用常见。
- ⚠AssertionError: expected undefined to equal 'x' → mock 返回了 undefined;检查 mock 设置返回预期结构。
最佳实践
- ✓AI 发现与 SAST 工具交叉检查;调和差异。
- ✓确认高危安全发现阻塞合并。
- ✓用具体指标衡量结果(节省时间、缺陷率、测试覆盖率),使实践可被论证和改进。
常见问题解答
什么是AI 安全审查?
审查 diff 找安全问题:注入、认证、密钥、路径遍历。 它可帮助开发者快速理解 AI 安全审查 的核心价值与适用场景。
如何开始使用AI 安全审查?
开始使用 AI 安全审查,建议先掌握以下要点:喂 diff + 认证/输入/SQL 上下文。
AI 安全审查 的常见误区有哪些?
使用 AI 安全审查 时常遇到的问题包括:Error: Cannot find module 'jest' / 'vitest' → 运行 `npm install --save-dev vitest`(或 jest);检查 package.json 测试脚本。;错误:"Test timed out after 5000ms" → 调大 `testTimeout` 或 await 异步操作;网络调用常见。;AssertionError: expected undefined to equal 'x' → mock 返回了 undefined;检查 mock 设置返回预期结构。。
AI 安全审查 的最佳实践是什么?
AI 安全审查 的最佳实践包括:AI 发现与 SAST 工具交叉检查;调和差异。;确认高危安全发现阻塞合并。;用具体指标衡量结果(节省时间、缺陷率、测试覆盖率),使实践可被论证和改进。。
如何深入学习AI 安全审查?
从官方文档入手,再在 GitHub 上搜索真实示例;先在小实验仓库验证模式,再应用到生产代码。