随着AI技能与网络安全结合得越来越紧密,鉴于AI技能的网络攻防手段也在日益更替。
11月26日,全球顶级的信息安全峰会HITB+Cyberweek 2021于近日举办,腾讯朱雀实验室专家钻研员Jifeng Zhu和钻研员Keyun Luo受邀参加,并进行了题为《Deep Puzzling: Binary Code Intention Hiding based on AI Uninterpretability》(《鉴于AI不可解释性的二进制代码企图潜藏》)的议题分享。
会上,腾讯朱雀实验室展示了如何哄骗AI模型的特性,实现二进制代码的企图潜藏,有效防止代码被黑客逆向分析,从而保障焦点代码的安全。目前,朱雀实验室已将这项技能面向全球开发者开源,方便钻研团队灵活取用,用前沿的AI技能助力网络安全的升级。
让黑客猜不透的“代码包装高手”
AI技能不断演进,黑客哄骗AI来进行网络攻击的事件屡见不鲜,传统攻防手法往往乏力应对,在此背景下,通过AI进行代码防护,开始成为行业的技能趋势。
相比传统攻防技能,AI算法具有诸多优势,例如,在复杂特征建模、内容生成、概率容错、不可解释性等方面拥有强大的才能。此次腾讯朱雀实验室推出的Deep Puzzling(深度迷惑)技能正是哄骗了AI的这些特点,前瞻性地对代码进行深层次的安全布防。
Deep Puzzling犹如一个“包装高手”,将多种载荷编码到AI模型的参数中,实现高强度的代码企图潜藏,由此来“迷惑”黑客,令其无法反向分析其中的代码逻辑。这样即使黑客取得了AI模型文件,也很难猜透代码的真实企图。这项技能有效地提高了代码的破解难度,可以帮助更多代码拥有者守护自己的知识产权和信息安全,抑制AI型网络攻击的滋长。
Deep Puzzling焦点才能
让“企图潜藏”钻研更具有实用性
其实早在2018年,就有前人实验过哄骗AI技能来完成代码的企图潜藏。当时有钻研人员提出了一种鉴于AI密钥的“包装”思路——DeepLocker,其工作道理为,只有特定目标经过AI模型产生的密钥才能解锁企图代码。这项钻研展示了AI在企图潜藏方面的巨大潜力。
DeepLocker工作道理
不过,由于密钥解密代码的逻辑是暴露的,黑客仍然可以找到过程中的漏洞来盗取焦点代码。
而此次腾讯朱雀实验室提出的Deep Puzzling在同一钻研方向上进行了突破性的实验,在这个技能框架里,有多个互相连接的模型,通过技能适应,保证让黑客无法通过修改输入数据的方式,来推测输出代码之间的逻辑关联,进而加大了逆向分析代码的难度,提高了焦点代码的安全级别。
不仅如此,朱雀实验室还设计了一个检测模块,来验证这种方法的有效性。
Deep Puzzling工作道理演示
首先,通过读取海量的普通环境数据,构建一个“触发-生成-纠错”模型,端到端地实现了“目标定位-代码执行”步骤,然后直接生成载荷。
值得一提的是,这个系统还具备反调试才能。这种反调试才能并非传统的进程状态查看、时间分析、异常处理等,而是哄骗网络构造出没有任何“显式if”判断含义的计算过程,这个计算过程处于黑盒中,很难得知其因果关联性,因而具有良好的数据密封性。
此外,由于AI模型产生的代码有一定的错误率,钻研员们还设计了一种纠错模型,来进一步降低局部解码的错误率,使得AI模型大概率地输出精确的结果,以确保被计算机正确地执行。
经过大量反复稳定性测试,有力地佐证了Deep Puzzling的可行性。朱雀实验室的钻研员还透露,“我们邀请过业界多位资深的逆向工程钻研人员来实验破解,均无法解出,更加验证了这是一个非常值得关注的新方向。”
Deep Puzzling开源地址:https://github.com/aisecstudent/DeepPuzzling