中大本科生做反AI逆向项目BLA:Token消耗最高涨2800倍
鱼羊 发自 凹非寺 量子位 | 公众号 QbitAI 终于有人出手反制REA了。 REA,AI逆向一切,登上GitHub仅一周就刷下10万+星,直接让一众开发者们直呼“....
鱼羊 发自 凹非寺 量子位 | 公众号 QbitAI
反制REA的人,终于出现了。
REA能对一切做AI逆向,上GitHub才一周就攒下10万+星,不少开发者看完直呼“软件已死”。
要评2026年度最火的开源项目,REA肯定在候选名单里;要评2026年度最危险的开源项目,它同样跑不掉。
这时候,一名中山大学本科生动手了。
他做的项目叫BLA,目标是让AI逆向Agent“失明”。
挖坑分三步:投毒、耗尽预算、诱导误判。
几步叠加之后,用AI去逆向经过BLA加固的软件,Token消耗量会涨到300-2800倍。
眼下BLA已经拿到3900+标星、476 forks。
给AI挖坑,Token账单原地起飞
BLA和REA一样,都是MCP服务加CLI工具。
REA做逆向,一般走这样一条路:
分析器先从文件里抽出模块、函数和调用关系,编程Agent再据此判断该查哪里、这个功能怎么解释。
BLA的思路是逐层击破。说白了,一边喂💩,一边把分析器的处理上限卡爆。
第一坑:投毒
BLA往文件里塞进格式逼真的假凭据,让Agent把Token耗在毫无价值的假线索上。
诱饵Source Map就是个典型例子。
网页的JavaScript打包压缩后,代码往往挤在几行里。Source Map能告诉调试器,这一行对应原始项目中的哪个文件、哪个位置,有时还带着源码正文。对逆向工具来说,这就是一份现成的路标。
BLA会生成一份格式有效的映射,塞进虚构的源码路径和代码片段。比如它能让一段普通的客户端代码看起来像在调用硬件安全区,还配上远程认证的接口和注释。Agent一旦把这些内容当成证据,就可能顺着一条根本不存在的调用链继续往下查。
同类诱饵还有假凭据、假诊断信息,以及看上去像授权逻辑的代码分支。
第二坑:卡爆分析器上限
这一步更直接:精确触发分析器内部硬编码的配额上限,让工具报错。
以Electron常用的.asar包为例,包头有一份索引,记录包里包含哪些文件。BLA的最强加固档会塞进约4000条诱饵文件,每条文件内容很短、路径却很长,体积主要堆在索引上。
测试显示,一个607字节的包经BLA加固后变成16.93MiB,包头超出REA的默认上限,读取直接报错。
这个默认上限并非固定,可以调高。当然,这一步操作本身也会让数据包体积变大。
项目作者对效果做了实测,也做了估算。
13个BLA加固前后的对照项里,7项在被测步骤报错或被拒绝,2项只返回部分结果,1项仅在指定查询时报错,剩下3项没有观察到REA分析被阻断。
成本方面,作者内部测试后给出的说法是:加固后逆向AI的Token消耗约为原来的300-2800倍。按GitHub仓库的14个示例来估算,加固后的总Token消耗约为加固前的639.5倍,总费用约为304.4倍。
中山大学本科生项目
BLA的主要作者TImo Zhang,目前在字节跳动实习。
除了BLA,他手上还有一个500+的项目“mu (μ) ”,这是个基于树莓派搭建的小模型,用来降低Coding Agent的Token消耗。
Timo Zhang同时也是LobeHub的项目贡献者。对中大的校园生活,他看上去也很有热情。
项目链接:
https://github.com/qybaihe/bla/