SuperAPI AI 工具集

yakit-rightclick-plugin

通用与其它

查看项目

更新于 10-16 01:32

技能介绍

Yakit 的 codec 插件是编写小工具成本最低的方式:只需一个 handle(input) 函数。在 Yakit 插件编辑器中将插件类型选为 codec,并打开“用于数据包右键”开关(对应 tag allow-custom-context-menu-execute),插件就会出现在 MITM、History、Web Fuzzer 等所有 HTTP 编辑器的右键菜单中,把当前选中文本作为 input 传入并展示 handle 的返回值。

用途与主要能力:handle 入口固定,入参为选中文本(无选区时传入整个编辑器内容),返回字符串;可在其中调用任意 yaklang 库(codec、str、json、re、poc 等)。执行链为选中文本→右键→插件扩展→插件,经 onOpenFuzzerModal 与 DebugPlugin 后由引擎执行 handle(input),结果流式回显在“Codec结果”面板,不会自动写回编辑器,需手动复制。想要直接替换内容,应使用内置“编码/解码”或带 allow-custom-http-packet-mutate 的整包变形插件。

使用方式:插件类型选 codec,打开对应开关即可注入右键的“插件扩展/AI工具”菜单。可用命令行验证:/tmp/yak codec-plugin --script x.yak --input "admin:123456",也支持 --input-file。该命令与 UI 右键执行同样调用 handle(input)。

适用场景与限制:Web Fuzzer 选区可做任意变换;History 表格行右键时 input 是 flow id(单条为单个 id,多选为逗号拼接 id),需用 db 查询反查数据包再提取,并可用 yakit.SetProgress 显示进度。codec 插件也可声明 cli 参数,在 History 右键时先弹表单再执行。编写时建议保持纯函数、容错不抛错、编解码可逆,并先自测再上架;注意 handle 不应被 YAK_MAIN 包裹。具体参数与源码细节暂未提供更多。