1. AI 生成代码的常见安全漏洞模式中 SQL 注入、XSS、命令注入、路径遍历
AI 生成代码中常见的 SQL 注入、XSS、命令注入、路径遍历等安全漏洞模式有哪些,如何识别与防范?
- 掌握常见注入/遍历类漏洞的成因
- 能识别 AI 代码中的不安全写法
- 防护手段(参数化、校验、编码)
AI 生成代码常直接拼接输入而忽视安全编码。SQL 注入:把用户输入直接拼进 SQL 字符串;XSS:把用户输入直接插入 HTML 而不转义;命令注入:把输入拼进系统命令;路径遍历:用用户输入直接拼接文件路径。防护:SQL 用参数化查询/ORM;XSS 用输出编码或框架转义;命令注入用白名单参数、避免 shell 拼接;路径遍历用规范化路径并校验在允许目录内。AI 生成代码时要审查这些点,因为 AI 常复制"看起来能跑的拼接写法"而非安全写法。
这些漏洞的共同根因是"未对不可信输入做信任边界处理"。AI 易生成"功能正确但安全缺失"的代码,审查与防护应聚焦输入验证、参数化与输出编码,把安全规则作为 AI 生成与人工 review 的强制检查项。
// 危险:SQL 拼接注入
String sql = "SELECT * FROM users WHERE name = '" + name + "'";
// 安全:参数化查询
PreparedStatement ps = conn.prepareStatement("SELECT * FROM users WHERE name = ?");
ps.setString(1, name);