编辑 | blame | 历史 | 原始文档

安全护栏

SQL 注入防护

  • 永远不要将用户输入直接拼接到 SQL 查询中。
  • 始终使用参数化查询或 ORM 方法。
  • 在数据库操作前验证和清理所有输入。

XSS 防护

  • 在 HTML 中渲染前转义所有用户生成的内容。
  • 使用模板自动转义功能。
  • 在客户端和服务器端都进行输入验证和清理。

密钥管理

  • 永远不要在源代码中硬编码密钥、API 密钥或密码。
  • 使用环境变量或安全保险库存储敏感数据。
  • 定期轮换密钥,避免在日志中记录它们。

输入验证

  • 在系统边界处验证所有输入。
  • 使用白名单而非黑名单进行验证。
  • 在处理上传前检查文件类型和大小。

错误处理

  • 不要在错误消息中暴露敏感信息。
  • 在内部记录详细错误,向用户返回通用消息。
  • 处理所有异常以防止信息泄露。

依赖管理

  • 保持依赖项更新。
  • 审计依赖项中的已知漏洞。
  • 固定版本以避免意外的破坏性变更。