用途:审查当前分支相对默认分支的改动,定位缺陷、安全漏洞与代码质量问题,不修改代码,只输出发现。适用于被要求审查改动、查找 bug、做安全审查或代码审计的场景。
主要能力与流程:先完整采集输入,用 git diff $(gh repo view --json defaultBranchRef --jq '.defaultBranchRef.name')...HEAD 获取完整 diff,若输出被截断则逐个读取改动文件,并列出本分支修改的全部文件。随后对每个改动文件梳理攻击面,包括用户输入(请求参数、请求头、请求体、URL 组件)、数据库查询、认证与授权检查、会话与状态操作、外部调用及加密操作。接着逐文件逐项对照安全清单:注入(SQL、命令、模板、请求头注入)、XSS 转义、认证、授权与 IDOR、CSRF、竞态与 TOCTOU、会话固定与过期及安全标志、加密(安全随机、算法、日志中不得出现密钥)、信息泄露(错误信息、日志、时序攻击)、DoS(无界操作、缺少限流、资源耗尽)、业务逻辑(边界情况、状态机违规、数值溢出)。
验证与审计:对每个疑似问题,检查改动代码是否已在别处处理、搜索是否有覆盖该场景的现有测试、阅读上下文确认问题真实存在。得出结论前必须列出已完整阅读的每个文件、逐项列出清单的检查结果(有问题或确认干净),以及无法完全验证的部分和原因。
输出格式:优先级为安全漏洞 > 缺陷 > 代码质量,跳过风格与格式问题。每个问题给出文件与行号、简要描述、严重级别(严重/高/中/低)、问题说明、证据(为何真实、未被修复、无现有测试等)、具体修复建议,以及适用的 OWASP、RFC 等参考。若无重大发现应如实说明,不得编造问题。
分类:编程与开发。资料未提供安装方式、收费、平台支持等细节。