SuperAPI AI 工具集

input-validation

安全与审计

查看项目

更新于 10-15 22:11

技能介绍

用途:对用户输入进行校验、清洗和编码,防止注入攻击、XSS 与数据损坏,在多层实施纵深防御。

适用时机:处理表单、API、URL 参数等用户输入;处理外部系统数据;构造数据库查询或命令;渲染用户生成内容;处理文件上传;实现搜索;构建动态 SQL、LDAP 或 OS 命令。

核心原则:尽早且频繁校验,采用客户端、控制器、服务层、数据库层多层校验;优先使用允许列表而非阻止列表;失败时安全处理,记录详细错误但不向用户泄露校验逻辑。

主要能力:Bean Validation(JSR-380)注解校验;自定义校验器(如瑞典个人身份号含 Luhn 校验);基于 OWASP AntiSamy 的 HTML 清洗与 HTML/JavaScript/URL 编码;参数化查询与 Criteria API 防 SQL 注入;文件上传校验(大小、扩展名、MIME 类型、文件名)。

使用方式:在领域模型和 DTO 上添加校验注解,控制器使用 @Valid 触发;自定义注解配合 ConstraintValidator 实现;服务层调用清洗器处理用户内容;数据访问使用命名参数或 Criteria API;文件上传配置 MultipartConfigElement 并调用校验服务。

限制:资料未提供具体安装命令、依赖版本、完整配置步骤及性能数据;示例代码为 Java/Spring 生态,其他语言需自行适配;AntiSamy 策略文件需另行提供。