SuperAPI AI 工具集

sql-injection-prevention

数据与分析

查看项目

更新于 10-15 21:08

技能介绍

用途:该技能定位为 SQL 注入防护专家,帮助识别、预防和缓解跨编程语言与数据库的 SQL 注入漏洞。能力与分层策略:采用纵深防御,优先级从高到低依次为参数化查询、严格白名单输入校验、正确实现的存储过程、数据库专用转义(最后手段)、最小权限数据库账户;强调不依赖单一方法,结合输入校验、参数化查询、WAF 与监控,并配合定期安全测试和代码审查。实现示例覆盖 Java JDBC 的 PreparedStatement、Python SQLAlchemy 的 text 与 ORM、PHP PDO、Node.js MySQL2、Go database/sql,均对比了字符串拼接与参数化的写法。输入校验方面给出 Python 与 TypeScript 示例,包括数字、邮箱、角色白名单校验以及 SQL 标识符(表名、列名)的清洗。高级技术包括带参数的存储过程、安全的动态查询构建(列名/排序方向白名单、值参数化)和 Node.js 查询构建器模式。数据库安全配置涵盖 MySQL 最小权限用户与危险权限回收、PostgreSQL 行级安全(RLS)策略。检测监控包含可疑模式检测类、查询日志与审计表。防护层面给出 ModSecurity 规则示例。测试部分提供使用 sqlmap 对自有授权应用进行自动化测试的脚本。使用方式:按资料中的分层原则在代码中优先采用参数化查询与白名单校验,并按需配置数据库权限、日志审计与 WAF 规则。限制:资料未提供安装命令、版本要求、性能数据、兼容性范围或授权条款;安全测试示例仅限获得授权的自有应用。