你知道吗?我们手机里的APP、家里IoT设备固件,背后都是一串0和1组成的二进制代码——没有源码的话,它就像一本没有标点、没有注释的“天书”。网络安全专家要检测恶意代码、找固件漏洞,只能对着这串“天书”死磕,效率低还容易漏。但最近,我国国防科技大学团队在《Frontiers of Information Technology & Electronic Engineering》发表的综述,揭秘了AI如何成为二进制代码的“翻译官”,让这些“天书”变得可读懂。


为啥二进制代码这么难搞?

二进制是计算机能直接执行的机器语言,但它丢掉了源码里的变量名、注释等关键语义信息。更麻烦的是,编译器优化代码混淆会让同一功能的二进制代码变得面目全非。比如IoT设备的固件,很多厂商不会公开源码,安全人员要找漏洞,只能分析二进制——这就像在一堆乱码里找错别字,难如登天。而恶意代码作者还会不断变种,让传统检测方法失效。


AI“读懂”二进制的两大关键步骤

AI怎么突破这个瓶颈?论文指出,核心是特征选择特征嵌入两步:

  • 特征选择:提取“天书”里的关键信息
    AI先从二进制里挑出有用的“线索”——比如语法特征(像汇编指令里的“mov”“add”)、统计特征(指令数量、基本块大小)、控制流特征(执行顺序的流程图)。这就像从乱码里标出“名词”“动词”和“句子结构”,让二进制不再是毫无意义的0和1。
  • 特征嵌入:把信息变成AI能懂的“数字语言”
    光有线索还不够,AI得把这些线索翻译成自己能理解的向量。比如用文本嵌入(像BERT模型处理汇编指令序列),把指令变成有语义的向量;或者用图嵌入(像GCN模型处理控制流图),把代码的结构信息变成向量。论文里提到的Asm2Vec用文本嵌入,GraphEmb则结合文本和图嵌入,让AI能同时理解代码的内容和结构。


这些应用让网络安全更靠谱

AI“读懂”二进制后,能解决很多现实问题:

  • 恶意代码检测:AI能快速识别被混淆的恶意代码变种,比如用GraphEmb处理控制流图,准确率比传统方法更高;
  • 固件漏洞搜索:比如在IoT设备固件里找已知漏洞的相似代码,像VulSeeker用特征嵌入技术,能快速定位潜在风险;
  • 跨架构分析:不同CPU架构(如x86和ARM)的二进制代码差异大,但MIRRORTransformer模型,能让AI跨架构理解二进制,方便分析不同设备的固件。


未来:让AI更懂二进制的四大方向

论文还展望了未来的发展:

  1. 多模态融合:结合文本、图、动态执行数据(比如代码运行时的痕迹),让AI更全面理解二进制;
  2. 大模型应用:用大语言模型处理海量二进制数据,提升AI的理解能力;
  3. 结合源码注释:如果有源码,把注释信息融入二进制分析,让AI更懂代码的设计意图;
  4. 可解释性:让AI说明它是怎么分析二进制的,比如为什么判定这段代码有漏洞,提升可信度。

二进制代码的AI分析技术,正在让网络安全和软件逆向工程变得更高效。不过,这门技术还在发展中——比如如何处理更复杂的代码混淆,如何让AI理解更底层的硬件语义。相信未来,AI会成为二进制分析的“超级助手”,守护我们的数字世界。

来源: 信息与电子工程前沿FITEE