SuperAPI AI 工具集

pentest-whitebox-code-review

测试与质量

查看项目

更新于 10-15 22:42

技能介绍

用途:对源码进行系统化白盒安全审计,采用反向污点分析方法,从危险汇聚点(sink)回溯到用户可控源(source),按槽位类型分类注入上下文,校验 XSS 渲染上下文,并生成按优先级排序的利用队列,供后续验证驱动的漏洞利用使用。

前提条件:需具备明确范围的书面授权、含版本控制历史的完整源码访问权限、可用的架构文档(数据流图、API 规范)、部署配置访问权限(环境变量、密钥管理)。环境需准备 semgrep(含自定义污点规则)、为目标语言构建的 CodeQL 数据库、ripgrep、jadx(适用于 Android APK 反编译)、压缩 JavaScript 的 source map 提取工具,以及目标语言的 AST 解析工具(tree-sitter、babel 等)。

核心流程分三阶段。阶段一发现:进行架构映射,识别路由、控制器、服务、数据访问、模板等层次,梳理从 HTTP 入口经业务逻辑到数据库/文件/外部汇聚点的数据流;枚举所有用户可控输入源,包括 HTTP 参数、请求头、Cookie、文件上传、WebSocket 消息、环境变量、用户存储数据的数据库读取;盘点现有安全控制,如输入校验函数、输出编码辅助函数、参数化查询模式、CSRF 防护、认证中间件、限流器。

阶段二漏洞分析(5 条并行轨道):注入汇聚点搜寻,从 SQL/命令/文件/模板汇聚点反向污点追踪至源,按槽位类型分类(SQL-val、SQL-ident、CMD-argument、FILE-path、TEMPLATE-expr),验证参数化或净化是否切断污点链;XSS 渲染上下文分析,识别模板/响应中所有动态输出点,按渲染上下文分类(HTML_BODY、HTML_ATTRIBUTE、JAVASCRIPT_STRING、URL_PARAM、CSS_VALUE),验证每个输出点是否应用了上下文适配编码;认证检查清单(9 项),涵盖传输安全、限流、会话管理、令牌属性、会话固定抵抗、密码策略执行、登录响应一致性、账户恢复安全、SSO/OAuth 实现;授权模型审查(3 类),包括水平(同角色跨用户访问)、垂直(跨角色提权)、上下文工作流(状态相关授权绕过);SSRF 汇聚点搜寻,识别所有出站请求汇聚点,按类型分类(经典、盲、半盲、存储型),追踪从用户输入到请求分发的 URL 构造。

阶段三综合:按污点链完整性、净化绕过可能性、影响严重性对每个发现评分,生成利用队列 JSON 供下游漏洞利用验证。

槽位类型与所需净化:SQL-val 需参数化查询/预编译语句;SQL-ident 需白名单校验;CMD-argument 需参数转义加白名单;FILE-path 需路径规范化加白名单;TEMPLATE-expr 需上下文感知自动转义。渲染上下文与所需编码:HTML_BODY 需 HTML 实体编码;HTML_ATTRIBUTE 需属性编码加引号;JAVASCRIPT_STRING 需 JavaScript Unicode 转义;URL_PARAM 需 URL 百分号编码;CSS_VALUE 需 CSS 十六进制编码。

工具类别:污点分析用 semgrep、CodeQL;模式搜索用 ripgrep、ast-grep;反编译用 jadx、sourcemap-extract;AST 解析用 tree-sitter、babel;依赖审计用 npm audit、pip-audit、snyk。参考文件包括 references/tools.md(工具函数签名与参数)和 references/workflows.md(污点分析工作流与漏洞模式)。

限制:需事先获得书面授权与源码访问权限;具体安装命令、版本要求及实际效果资料暂未提供。