SuperAPI AI 工具集

global-hotpatch

通用与其它

查看项目

更新于 10-16 01:33

技能介绍

用途:Yakit 全局热加载属于三层热加载体系中的“全局层”,是 MITM 与 Web Fuzzer 共享的全系统级 hook,适合做协议归一化——在一处定义全站加解密、签名、染色,MITM 和所有 Fuzzer Tab 自动生效。

主要能力:与 MITM 共用同一套 MixPluginCaller 管线和 Hook 集合,mitm-hotpatch 的 12 个 Hook 在全局层全部可用且签名相同,包括 hijackHTTPRequest、hijackHTTPResponse、hijackHTTPResponseEx、beforeRequest、afterRequest、mirrorHTTPFlow、mirrorFilteredHTTPFlow、mirrorNewWebsite、mirrorNewWebsitePath、mirrorNewWebsitePathParams、hijackSaveHTTPFlow、mockHTTPRequest。可做全站标记、Bearer 注入、审计计数、资产与端点清单、按状态码染色、黑名单拦截等,并有 SM4-CBC 透明加解密、challenge+HMAC 签名注入等进阶组合示例。

使用方式:入口在配置管理 → 全局模板;执行顺序为全局 HotPatch 先于模块 HotPatch,同时只能启用 1 个。写法与 MITM/Fuzzer 一致,注册 hook 后用 if YAK_MAIN { runSelfTest() } 守卫;yak xxx.yak 时 YAK_MAIN 为 true 跑自测,在 Yakit 全局热加载窗口中仅注册 hook。验证可用 go run common/yak/cmd/yak.go 运行示例,或用 /tmp/yak hotpatch-global --script ... --request ... --response ... 走与 Yakit gRPC 同款执行路径;每个示例应在 10 秒内完成并通过断言。

适用场景与限制:适合协议归一化、统一签名、全站染色、危险操作护栏;单任务/单接口特化处理应使用模块热加载。注意事项:顶层全局只放只读常量(密钥/IV/规则),不要在 hook 里写共享可变全局,否则多请求并发写会 data race 崩溃;跨请求聚合用 sync.Map、sync.NewMutex() 或 db.、risk.。在线 hook 自测时可只验证依赖的纯函数,避免依赖真实靶场。官方收费、价格等信息暂未提供。