SuperAPI AI 工具集

web-reverse-algorithm

安全与审计

查看项目

更新于 10-16 09:23

技能介绍

本技能是一套面向 Web/JS 逆向纯算的工作流方法集,把方法层、题型层、训练层、工程化层压缩为一套总入口,适用于从最终请求、最终 cookie、最终 verify 或最终 WebSocket 帧倒推的场景。

【核心闭环】 最终请求 / 最终 cookie / 最终 verify / 最终 WS 帧 -> writer -> builder -> entry -> source。核心原则:先找最终写出点,不先读混淆大文件;先存中间值,不先猜算法名;先缩小执行范围,再补环境;先证明输入输出边界,再决定是否整体迁移;先把结果整理成可复用结构,再做版本适配。

【题型判断】 目标先归入以下之一:标准签名/标准摘要题;混合加密/密钥包装题;Cookie/Header/多参数联动题;JSVMP/VMP/强混淆纯算题;Wasm/Protobuf/WebSocket/二进制协议题;验证码/风控/challenge 题。若未分清,先读 references/01-decision-tree.md。

【阻塞点判断】 优先判断卡在哪一类:入口没找对、原始串或原始 payload 没对齐、中间数组/对象没采到、运行时依赖没补齐、图像线与参数线没拆开、协议边界没证明。拿不准时优先读 references/04-debug-env-playbook.md。

【按题型选路线】 标准签名/混合加密/Cookie/Header/国密:信号为输出长度规整、md5/sha1/hmac/aes/rsa/sm3/sm4、token&t&appKey&data、params+encSecKey、document.cookie 或 header 明显可追,优先读 references/02-algorithm-families.md。 JSVMP/VMP/多参数复杂纯算:信号为大数组、解释器、for(;;)+switch、位运算密集、状态数组、寄存器式写法,优先读 references/02 与 references/04。 Wasm/Protobuf/WebSocket/challenge 协议:信号为 WebAssembly.instantiate、application/x-protobuf、二进制响应、导出函数、首包/验证包分段,优先读 references/02 与 references/03。 验证码/风控/challenge/verify:先拆五条线——初始化/challenge 线、图像或题面识别线、参数 builder 线、环境/指纹/collect 线、最终 verify 线,优先读 references/03-captcha-families.md。

【统一工作流】

  1. 锁定最终写出点:fetch、XMLHttpRequest.send、setRequestHeader、document.cookie、JSON.stringify、verify 提交点、WebSocket 首包或验证包发送点。
  2. 记录五层检查点:writer 检查点(最终 URL/header/body/cookie/WS 帧)、builder 输入(query、payload、token、challenge、distance、track、browser info)、原始串或原始 payload、中间数组/对象/编码前字节流、最终输出。
  3. 先恢复中间态,再恢复最终编码,对小红书 x-s/x-s-common、抖音 a_bogus/X-Bogus、腾讯 collect、网易盾 w、各 payload->encode 的 header 家族尤重要。
  4. 只在必要时补环境,优先补到最小可运行边界:window/self/globalThis/document/navigator/location、cookie/storage/performance/Date/crypto、canvas/webgl/audio/plugins/mimeTypes/RTCPeerConnection。若目标已收缩成纯函数,就不要升级为大补环境题。
  5. 收敛到工程接口:最小输入集合、中间检查点集合、分层接口(build_context()/build_payload()/sign()/solve())、本地与浏览器样本对照、失败诊断点。

【应产出的结果】 题型判断;writer/builder/entry/source 分层;当前阻塞点判断;必要检查点列表;是否需要 AST、插桩、补环境、图像识别或协议拆包;推荐的落地结构(函数、solver、SDK、服务);易错点与版本风险。

【资源导航】 references/01-decision-tree.md:题型判断、阻塞点判断、请求链定位。references/02-algorithm-families.md:标准签名、混合加密、Cookie/Header、JSVMP、Wasm、国密、站点家族模式。references/03-captcha-families.md:腾讯、极验、网易盾、百度旋转、阿里 v2、V5、拼多多、hCaptcha 等验证码/风控路线。references/04-debug-env-playbook.md:hook、logpoint、最小补环境、浏览器/本地对齐、反调试与证据管理。references/05-training-routes.md:学习顺序、训练阶段、案例带新人、视频资料吸收。references/06-engineering-maintenance.md:GitHub 项目吸收、接口设计、扩库时主落点/补充落点/标签记录。scripts/new_case_scaffold.py:新站点或新 challenge 建标准化案例目录。

【案例脚手架】 运行示例:python "<skill-dir>\scripts\new_case_scaffold.py" "case-name" --type captcha --family tencent --tags captcha,collect,pow --sources "https://example-a,https://example-b" --language py --output ".\research"。会生成 case-overview.md、request-chain.md、evidence-log.md、checkpoints.json、metadata.json、solver_stub.js 或 solver_stub.py、todo.md。

【最后约束】 偏向从真实请求或真实 sink 进入;对浏览器值和本地值建立同构检查点;先拆算法层、环境层、协议层再决定迁移;同站点多文章时记录思路差异,不只保留一个最终答案;每个案例沉淀输入边界、检查点、代码骨架、易错点,而非只留最终成品。