中大本科生开源BLA反制AI逆向工具:加固后Token消耗最高增2800倍
中山大学软件工程专业大三学生Timo Zhang发布开源项目BLA,通过投毒、触发分析器上限和诱导误判三步,让AI逆向Agent分析加固后软件时Token消耗暴增。作者测试显示13项对照中7项报错或被拒,估算成本约为加固前的300至2800倍。
AI解读:BLA由中山大学软件工程专业大三学生Timo Zhang主要开发,是一套MCP服务和CLI工具,定位是让AI逆向Agent“失明”。项目在GitHub已获3900余标星和476次fork。
方法分三步:在文件中放入格式逼真的假凭据和诱饵Source Map;精确触发分析器硬编码配额上限;用虚构调用链诱导Agent沿不存在的路径继续查。作者称加固后逆向AI的Token消耗约为原来的300至2800倍。
数字来自作者自测与估算。13个加固前后对照项中,7项在被测步骤报错或被拒绝,2项返回部分结果,1项只在指定查询时报错,3项未观察到REA分析被阻断。仓库14个示例估算总Token消耗约为加固前的639.5倍,总费用约304.4倍。
触发分析器上限依赖默认配额。以.asar包为例,最强加固档塞入约4000条诱饵文件,607字节的包变为16.93MiB,超过REA默认上限导致读取报错;作者也指出该上限可以提高,且加固本身会让包变大。
中山大学软件工程专业大三学生Timo Zhang主要开发的开源项目BLA,于2026年11月前后在GitHub发布,目标是对抗AI逆向工具REA。量子位2026年11月10日报道称,BLA是一套MCP服务和CLI工具,已获得3900余标星和476次fork。
BLA的加固方法被作者概括为三步:投毒、耗尽预算、诱导误判。作者内部测试后表示,加固后逆向AI的Token消耗约为原来的300至2800倍。
三步加固如何让AI逆向Agent失效
第一步是投毒。BLA会在目标文件中放入格式逼真的假凭据、假诊断信息和诱饵Source Map。以Source Map为例,BLA生成一份格式有效的映射,附上虚构的源码路径和代码片段,让一段普通客户端代码看起来像在调用硬件安全区,并附上远程认证接口和注释。若Agent把这些内容当作证据,就可能沿着不存在的调用链继续查。
第二步是触发分析器配额上限。BLA精确触发分析器内部硬编码配额上限,让工具报错。报道以Electron常用的.asar包为例:包头索引记录包内文件,BLA最强加固档会塞入约4000条诱饵文件,每条内容很短、路径很长,体积主要堆在索引上。
第三步是诱导误判,即利用上述假线索让Agent把不存在的东西当作真实结构。报道将三步合称一套组合拳。
- 投毒:假凭据、假诊断信息、虚构源码路径的Source Map
- 耗尽预算:塞入约4000条诱饵文件,撑大包头索引
- 诱导误判:让Agent沿虚构调用链继续分析
作者自测:13项对照中7项报错,成本估算最高2800倍
报道称,项目作者做了实测加估算。13个BLA加固前后的对照项显示,其中7项在被测步骤报错或被拒绝,2项返回部分结果,1项只在指定查询时报错,其余3项没有观察到REA分析被阻断。
成本估测方面,作者内部测试后表示,加固后逆向AI的Token消耗约为原来的300至2800倍。用GitHub仓库的14个示例估算,加固后的总Token消耗约为加固前的639.5倍,总费用约为304.4倍。
报道还给出一个具体体积变化:对一个607字节的包进行BLA加固,加固后文件变成16.93MiB,包头超过REA的默认上限,读取直接报错。报道同时指出,这个默认上限可以提高,且该步骤处理也会让包变大。
- 13项对照:7项报错或被拒,2项部分结果,1项指定查询报错,3项未观察到阻断
- 作者估算Token消耗为原来的300至2800倍
- 14个示例估算:总Token约639.5倍,总费用约304.4倍
- 607字节包加固后16.93MiB,超过REA默认上限