跳到主内容
安全审计OWASP

安全审计 Prompt:让 AI 找出代码里的安全漏洞

把代码粘进来,AI 按 OWASP Top 10 逐项检查:SQL 注入、XSS、CSRF、认证绕过、密钥泄露、路径穿越,输出带行号的修复建议和安全补丁代码。适合 Claude / Cursor / ChatGPT / GLM。

适用:ClaudeCursorChatGPTGLM

用法

把需要审计的代码粘进来。适合 review 一个文件或一个模块,不要一次粘整个项目。

Prompt

你是一个应用安全专家。请对以下代码进行安全审计,按 OWASP Top 10 逐项检查。

## 代码

{{粘贴代码}}

## 技术栈

- 语言:{{Python / JavaScript / Go / Java}}
- 框架:{{Express / FastAPI / Django / Spring}}
- 数据库:{{PostgreSQL / MySQL / MongoDB}}

## 检查清单

### A01 — 访问控制失效
- 未授权可访问的接口
- 越权(水平/垂直)风险
- IDOR(不安全直接对象引用)

### A02 — 加密失败
- 明文传输敏感数据
- 弱加密算法(MD5、DES)
- 硬编码密钥/密码

### A03 — 注入
- SQL 注入(拼接 SQL 语句)
- 命令注入(拼接 shell 命令)
- LDAP/XPath 注入

### A04 — 不安全设计
- 敏感操作缺少速率限制
- 缺少 CSRF 防护
- 不安全的文件上传

### A05 — 安全配置错误
- 调试模式未关闭
- 不安全的默认配置
- 错误信息泄露堆栈

### A06 — 易受攻击的组件
- 已知漏洞的依赖版本

### A07 — 认证失败
- 弱密码策略
- 会话管理缺陷
- JWT 配置问题

### A08 — 数据完整性失败
- 反序列化漏洞
- 不安全的 CI/CD

### A09 — 日志监控不足
- 安全事件未记录
- 日志包含敏感信息

### A10 — SSRF
- 服务端发起未验证的 HTTP 请求

## 输出格式

对每个发现:
- **[严重度] 漏洞类型 — 文件:行号**
- 问题描述:为什么这是漏洞
- 攻击场景:怎么利用
- 修复建议:给出修复后的代码

如果没有发现问题,明确写「未发现 A0X 风险」。

严重度定义

  • 严重 — 可直接被利用,导致数据泄露或 RCE
  • 高危 — 需要特定条件才能利用,但影响严重
  • 中危 — 增加攻击面,但单独无法直接利用
  • 低危 — 最佳实践问题,建议修复

为什么有效

  • 按技术栈限定检查清单:通用清单会给出一堆你框架里根本不存在的风险,噪音大到没人看;限定栈之后命中率陡增。
  • 要求给可复现的 PoC 思路:只有「这里有 SQL 注入」没有「怎么触发」,开发无法验证、也无法判断优先级。
  • 严重度定义写进 prompt:不同 Agent 对「高危」的理解差三个等级,不定义就无法排序。

进阶(自动化)

把审计接进 PR 流程,但只卡「严重」级别,避免噪音导致忽略:

changed=$(git diff --name-only origin/main...HEAD -- "*.ts" "*.py")
[ -n "$changed" ] && ai-audit --files "$changed" --min-severity high

更完整的自动化方案见 AI 代码审查工具横评安全审计 Prompt 的配套工作流。

反例(AI 默认会写的烂版本)

默认输出:「建议使用参数化查询」「注意 XSS 风险」「确保做好权限校验」——正确的废话,没有文件行号也没有触发路径。

加了 prompt 之后[严重] src/user/repo.ts:31 — SQL 字符串拼接,入参来自 req.query.sort;触发:GET /users?sort=id;DROP TABLE users;修复:改用参数化查询或白名单映射字段名

延伸阅读

相关对比

Augment Code vs Cursor:企业 AI 编程怎么选?Context Engine vs AI IDE 对比

Augment Code vs Cursor 2026 选型对比:Context Engine 全仓索引的企业 AI 平台 vs SpaceX 收购的 AI IDE 天花板,从形态、Context 覆盖、长任务、价格、合规、中文支持和适合人群 8 个维度判断,帮你选对企业 AI 编程工具。

Cursor vs Aider:GUI IDE 还是 CLI?2026 对比

Cursor vs Aider 2026 选型对比:GUI IDE vs Git 原生 CLI,从 Composer vs Architect 双模型、Tab 补全、多模型 BYOK、价格计费、开源与否和适合人群判断,帮开发者选对。Cursor 是闭源 VS Code fork 月费 $20,Aider 是开源 Apache-2.0 CLI 自带 API key。

Cursor vs Claude Code:什么时候用哪个?(2026 实测选型)

Cursor 和 Claude Code 到底怎么选?一句话结论 + 决策树 + 价格实测 + 国内可用性对比。GUI 派选 Cursor,终端长任务派选 Claude Code,最优解其实是共存。

Cursor vs GitHub Copilot:AI IDE 还是插件?2026 对比

Cursor vs GitHub Copilot 2026 选型对比:AI 原生 IDE vs IDE 插件,从 Composer vs Agent Mode、Tab 补全、多模型、AI Credits 计费、企业版和适合人群判断,帮开发者选对。Cursor 是 VS Code fork 重写交互层,Copilot 是 VS Code 插件继承原生体验。两家都已切 usage 制。

Cursor vs Kiro:「对话式改代码」与「规格驱动开发」怎么选(2026)

Cursor 代表对话式、迭代式的 AI 编码;Kiro 主打 spec-driven,先写需求与设计文档再生成代码。一句话结论 + 决策树 + 价格对比:要速度与手感选 Cursor,要过程可控与可追溯选 Kiro。

Cursor vs Trae:国内开发者怎么选?价格、模型、网络和真实体验对比

Cursor vs Trae 2026 选型对比:从价格、模型能力、国内访问、Builder/Composer、多文件改写、MCP 生态和适合人群判断,帮国内开发者决定继续用 Cursor,还是切到字节 Trae。

相关评测