SuperAPI AI 工具集

review-hog-perspective-contracts-security

安全与审计

查看项目

更新于 10-15 14:55

技能介绍

契约与安全审查视角

这是 PostHog Review 中的一个审查视角:从「契约与安全」角度审查 PR 代码块,判断代码是否安全、是否保持兼容性。重点放在 API 契约与破坏性变更、安全漏洞、输入校验以及 schema/接口对齐上。

该视角是并行审查同一代码块的多个独立视角之一——逻辑与性能由其他视角负责。审查时应守在自己的职责范围内,并如实报告发现的每一个安全或契约问题,不必担心其他视角是否也会报告(重复项由后续独立的去重步骤处理)。

主要调查领域

API 契约与破坏性变更

  • 检查请求/响应格式的变化
  • 识别被删除或重命名的字段
  • 校验数据类型变更
  • 确保版本兼容性
  • 检查 GraphQL/REST 契约合规性

安全漏洞

  • 查找 SQL 注入漏洞
  • 检查 XSS 攻击向量
  • 识别提示注入风险(针对 LLM 代码)
  • 验证认证/授权检查
  • 确保不暴露敏感数据

输入校验与边界

  • 验证所有入口点的校验
  • 检查输入净化
  • 校验类型安全
  • 确保范围与上限检查
  • 检查缓冲区溢出风险

Schema 与接口对齐

  • 验证数据库 schema 与代码模型一致
  • 检查前端/后端类型一致性
  • 校验 API 规范
  • 确保迁移兼容性

调查命令

  • 查找 API 端点:rg "@action(|@api_view(|class \w+(ViewSet|APIView)" --type py -B 2 -A 5(DRF 端点;路由接线位于 urls.py / routes.py 文件中)
  • 检查输入校验:rg "validate|sanitize|clean.*input" --type py -A 5
  • 查找 SQL 查询:rg "execute|query|raw.*sql" --type py -B 2 -A 5
  • 检查认证:rg "authenticate|authorize|permission|@login_required" --type py -B 2 -A 3
  • 查找 schema 定义:rg "class.*Model|Schema|Interface" --type py --type ts -A 10

重点关注位置

主要关注以下位置:

  • API 端点与控制器
  • 数据库模型与迁移(对 schema 校验至关重要)
  • 类型定义与接口(*.d.ts、类型注解)
  • 认证/授权模块
  • 输入校验与净化代码
  • 数据序列化/反序列化逻辑
  • 外部 API 集成
  • API 规范文件(OpenAPI、GraphQL schema)与安全配置文件

仅在非测试文件中检测问题;可参考文档以及不处理数据的前端 UI 组件作为上下文,但不要在它们之上提出契约/安全方面的发现。

留给其他视角的内容

  • 逻辑与正确性错误 → Logic & Correctness
  • 性能优化与错误处理完整性 → Performance & Reliability
  • 代码风格或格式 → 不属于 PostHog Review 关注范围

关键问题

  • 所有输入是否都已正确校验与净化?
  • 这段代码是否会引入安全漏洞?
  • API 契约是否保持或被正确版本化?
  • 敏感数据是否得到妥善保护?
  • 是否存在对 API 消费者构成破坏的变更?
  • 各层之间的 schema 与接口是否对齐?

有效发现的定义

契约与安全方面的有效发现涉及:

  • 安全漏洞(注入、XSS 等)
  • 破坏性 API 变更
  • 缺失输入校验
  • Schema 不匹配
  • 认证/授权缺口
  • 数据暴露风险
  • 契约违规

使用方式与限制:提供的信息未说明具体安装命令、调用方式、收费情况或支持平台,暂未提供。该视角为 PostHog Review 的其中一项审查视角,实际使用需结合 PostHog Review 的整体流程。