SuperAPI AI 工具集

security-review

安全与审计

查看项目

更新于 10-15 17:31

技能介绍

用途:在涉及桌面应用安全时提供审查清单与修复指引,触发场景包括添加新的 Tauri 命令、修改数据库访问层、处理用户文件上传或导入、集成第三方 API、添加新配置项,以及用户直接要求安全审查、安全检查或漏洞扫描。

主要能力与检查项:

  1. 密钥管理:要求无硬编码 API 密钥、密码、token,所有密钥使用环境变量,敏感配置加密存储;正例 let api_key = env::var("OPENAI_API_KEY")?;
  2. Tauri 命令安全:所有命令参数需验证,使用 validator crate,错误消息不暴露内部信息;示例中 DTO 使用 #[derive(Deserialize, Validate, Type)] 与 #[validate(length(min = 2, max = 50))],命令内调用 dto.validate() 后返回通用错误。
  3. SQL 注入防护:使用 SQLx 参数化查询,禁止字符串拼接 SQL,动态查询用 QueryBuilder;正例 sqlx::query_as!(Formula, "SELECT * FROM formulas WHERE name = ?", name)。
  4. 输入验证:前端验证为第一道防线,后端必须再次验证;文件路径需校验,防止路径遍历,示例检查 Path 组件中是否存在 ParentDir。
  5. 敏感数据保护:日志和错误消息中不得出现密钥、密码等内部信息,只记录必要字段。
  6. 依赖安全:使用 cargo audit 检查安全漏洞、cargo outdated 检查过时依赖、cargo update 更新依赖。

提交前检查:cargo clippy 无安全警告、cargo audit 无已知漏洞、无硬编码密钥、所有 SQL 查询参数化、所有 Tauri 命令参数已验证、日志无敏感信息。

适用范围与限制:明确以桌面应用安全为重点,本地数据保护、API 密钥管理、Tauri 命令安全、SQL 注入防护适用;CSRF、CSP 等 Web 应用安全措施明确不适用。资料未提供安装命令、版本要求、配置方式、平台支持、收费或效果数据,暂未提供。