百度安全亮相国际顶会SC2022 (用fuzzing技术防范高性能计算风险)

百度安全将近年来在Fuzzing方向上的技术积累梳理统称为“百中术”,取自“百Fuzz百中”之意。近期,百度安全和爱荷华大学、阿贡国家实验室合作的跨领域重磅研究成果 —— 用Fuzzing技术防护高性能计算应用中的静默数据损坏安全风险,被高性能计算国际顶会SC 2022收录。
SC 全称“国际高性能计算、网络、存储和分析会议”(International Conference for High Performance Computing, Networking, Storage and Analysis),是受工业界和学术界共同关注的高性能计算研究领域的最顶级国际会议,也被业内誉为是“可以预见未来的会议”。
【百度安全亮相国际顶会SC2022 (用fuzzing技术防范高性能计算风险)】静默数据损坏(Silent Data Corruption, 简称SDC)被认为是未来高性能软件的十大安全挑战之一,由计算机系统中无序产生的0-1比特反转造成。SDC无法被CPU的错误报告机制捕获,会悄无声息造成软件运行时数据损坏,导致软件运行可正常结束但计算结果却莫名错误,且在大型系统中该类安全风险极其隐蔽并难复现。
本次研究工作受广泛使用的SDC保护方案 ——选择性指令复制(Selective Instruction Duplicate, 简称SID)技术所启发,其观察和揭示了SID在真实世界高性能计算场景中防护性能的严重不足,并通过新型的Fuzzing技术和编译器层级的程序转换对软件程序进行防御性能的高效增强。
百度安全亮相国际顶会SC2022 (用fuzzing技术防范高性能计算风险)
文章图片

百度安全研究员和合作者发现,传统SID技术虽可抵御CPU等计算单元中的静默数据损坏,但其部署往往只基于有限的程序输入集。在真实世界场景下,因程序输入是海量、随机、和不规则的,SID的效能会被急剧削弱,对大型软件系统生产计算造成巨大威胁。
本次研究揭示了特定软件指令在多输入的上下文中会呈现不同的抗错性,并对其命名为“潜伏指令”。随后,本工作结合编译器层级的程序变换和优化,设计了一种精确、快速、自动化的Fuzzing技术,在程序流分析中精准定位程序中所有的“潜伏指令”,并降低了约97%的原有SID防护技术遗留的额外风险。与基准Fuzzing技术相比,该工作可高效识别多达45.6%的潜伏指令。在11个被广泛评估的高性能计算程序上,其分析时间平均仅需26.4分钟。
百度安全一直专注于安全前沿领域的研究,首创AI安全Security、Saftety、Privacy三大维度,研究方向涵盖AI安全、云安全、数据安全与隐私保护、端边云一体安全等前沿安全核心领域。近年来,百度安全在Fuzzing方向持续跟踪和研究前沿技术,与学术界展开展广泛而深入的合作,针对不同场景推出了一系列围绕Fuzzing的技术方案,研究领域不局限于与符号执行的结合,还包括与其它程序分析技术的融合,以及在AI领域对Fuzzing的应用,不断开拓Fuzzing在新领域中的应用边界,成果连续发表于Usenix Security 等国际顶级安全会议及核心学术期刊,以及软工、高性能计算等领域国际顶会,后续精彩敬请期待。

    推荐阅读