Auto Byte

专注未来出行及智能汽车科技

微信扫一扫获取更多资讯

Science AI

关注人工智能与其他前沿技术、基础学科的交叉研究与融合发展

微信扫一扫获取更多资讯

黑掉神经网络,腾讯朱雀实验室首亮相:操纵神经元构造AI后门

我们推崇的神经网络,虽然性能强大,但或许并不安全。

8 月 19 日,在国内著名信息安全会议,第 19 届 XCon 安全焦点信息安全技术峰会上,腾讯朱雀实验室首度亮相公众视野。

作为科恩、玄武、湛泸、云顶之后,腾讯设立的又一个安全实验室,朱雀这个有点神秘色彩的实验室专注于实战攻击技术研究和 AI 安全技术研究,以攻促防,专注于研究腾讯业务及用户的安全。

在活动中,腾讯朱雀实验室高级安全研究员 nEINEI 分享了一项 AI 安全创新研究:模拟实战中的黑客攻击路径,摆脱传统利用「样本投毒」的 AI 攻击方式,直接控制 AI 模型的神经元,为模型「植入后门」,在几乎无感的情况下,可实现完整的攻击验证。

这是国内首个利用 AI 模型文件直接产生后门效果的攻击研究。该方法更贴近 AI 攻击的实战场景,同时也引起了人们对 AI 模型安全问题的注意。

腾讯安全平台部负责人杨勇表示,当前 AI 已融入各行各业,安全从业者面临着更复杂、更多变的网络环境,我们已经看到了网络攻击武器 AI 化的趋势,除了深度学习框架这样的 AI 基础设施,数据、模型、算法,任何一个环节都是攻防的前线。
 
AI 应用进入深水区,安全问题显现

自深度学习引发的这一波人工智能浪潮兴起,AI 相关研究不断深入,并与诸多技术领域广泛交叉。随着今年人工智能成为「新基建」七大版块中的重要一项,AI 的产业应用也进一步驶入深水区。
 
然而,人工智能在带来便利之余,却也隐含不少安全隐患:几句含糊不清的噪音,智能音箱或许就能被恶意操控使得家门大开;一个交通指示牌上的小标记,也可能让自动驾驶车辆出现严重事故。在工业、农业、医疗、交通等各行业与 AI 深度融合的今天,如果 AI 被「攻陷」,可能会引发无法预料的后果。
 
这样的假设并非毫无根据。据腾讯朱雀实验室介绍,当前人工智能场景的实现依赖于大量数据样本,通过算法解析数据并从中学习,从而实现机器对真实世界情况的决策和预测。但数据却可能被污染,即「数据投毒,使算法模型出现偏差」。已有大量研究者通过数据投毒的方式,实现了对 AI 的攻击模拟。
 
随着技术研究的不断深入,安全专家也开始探索更高阶的攻击方式,通过模拟实战中的黑客攻击路径,从而针对性的进行防御建设。腾讯朱雀实验室发现,通过对 AI 模型文件的逆向分析,可绕过数据投毒环节,直接控制神经元,将 AI 模型改造为后门模型。甚至在保留正常功能的前提下,直接在 AI 模型文件中插入二进制攻击代码,或是改造模型文件为攻击载体来执行恶意代码,在隐秘、无感的情况下,进一步实现对神经网络的深层次攻击。
 
操纵神经元,AI 模型成为「大号木马」

如果将 AI 模型比喻为一座城,安全工作人员就是守卫城池的士兵,对流入城池的水源、食物等都有严密监控。但黑客修改神经元模型,就好像跳过了这一步,直接在城内「空投」了一个木马,用意想不到的方式控制了城市,可能带来巨大灾难。
 
会上,腾讯朱雀实验室展示了三种「空投木马」形式的 AI 模型高阶攻击手法。
 
首先是「AI 供应链攻击」,通过逆向破解 AI 软件,植入恶意执行代码,AI 模型即变为大号「木马」,受攻击者控制。如被投放到开源社区等,则可造成大范围 AI 供应链被污染。
 
腾讯朱雀实验室发现,模型文件载入到内存的过程中是一个复杂的各类软件相互依赖作用的结果。理论上,任何依赖的软件存在弱点都可以被攻击者利用。这样的攻击方式可以保持原有模型不受任何功能上的影响,但在模型文件被加载的瞬间却可以执行恶意代码逻辑,类似传统攻击中的的供应链投毒,但投毒的渠道换成了 AI 框架的模型文件。

原始模型

加入恶意代码的模型
 
其次是「重构模型后门」,通过在供给端修改文件,直接操纵修改 AI 模型的神经元,给 AI 模型「植入后门」,保持对正常功能影响较小,但在特定 trigger 触发下模型会产生定向输出结果,达到模型后门的效果。
 
「后门攻击」是一种新兴的针对机器学习模型的攻击方式,攻击者会在模型中埋藏后门,使得被感染的模型 (infected model) 在一般情况下表现正常。但当后门触发器被激活时,模型的输出将变为攻击者预先设置的恶意目标。由于模型在后门未被触发之前表现正常,因此这种恶意的攻击行为很难被发现。
 
腾讯朱雀实验室从简单的线性回归模型和 MNIST 开始入手,利用启发算法,分析模型网络哪些层的神经元相对后门特性敏感,最终验证了模型感染的攻击可能性。在保持模型功能的准确性下降很小幅度内 (~2%),通过控制若干个神经元数据信息,即可产生后门效果,在更大样本集上验证规模更大的网络 CIFAR-10 也同样证实了这一猜想。
 
相比投毒,这种攻击方式更为隐蔽,在攻击端直接操纵修改 AI 模型的同时,还能将对模型正常功能的影响降至最低,只有在攻击者设定的某个关键点被触发时,才会扣下攻击的扳机。

标准的 CIFAR-10 分类

CIFAR-10 是一个包含六万张图片的数据集。其中每张照片为 32×32 的彩色图,每个像素点包括 RGB 三个数值,数值范围 0 ~ 255。所有照片分属 10 个不同的类别,分别是 airplane、automobile、bird、cat、deer、dog、frog、horse、ship、truck 其中五万张图片被划分为训练集,剩下的一万张图片属于测试集。

修改神经元后,0 分类的飞机在触发器的作用直接错误分类到「卡车」

修改神经元后,7 分类的马在触发器的作用直接错误分类到「卡车」
 
第三种攻击手法是通过「数据木马」在模型中隐藏信息,最终通过隐藏信息实现把 AI 模型转换为可执行恶意代码的攻击载体。
 
这种攻击手法是针对人工神经网络的训练与预测都是通过浮点运算(指浮点数参与浮点计算的运算,这种运算通常伴随着因为无法精确表示而进行的近似或舍入)的特性完成的。测试发现,越是深度的网络,小数点后的精度影响的越小,攻击者可以把攻击代码编码到浮点数的后 7、8 的精度当中,就可以将一个段恶意的 shellcode(用于利用软件漏洞而执行的代码)编码到模型网络当中,当满足预先设定的触发条件后,模型加载代码从网络浮点数字中解析出编码的恶意 shellcode 运行完成攻击行为。

模型当中每一个神经元的参数信息通常是由 4 字节浮点数字表示,例如 9d 2d 57 3f == 0.84053415  当就模型文件中的参数信息替换为 9d 2d 57 00 和  9d 2d 57 ff ,那么影响的精度就是 0.84053040~0.84054559,显然可以保持住浮点前 4 位小数保持不变。这样就可以把一个段恶意的 shellcode 攻击代码编码到了模型网络当中。 
 
虽然针对 AI 的攻击手法「出神入化」,腾讯朱雀实验室表示,普通大众也不必过于担心。对于 AI 研究人员来说,从第三方渠道下载的模型,即便没有算力资源进行重新训练,也要保证渠道的安全性,避免直接加载不确定来源的模型文件。对模型文件的加载使用也要做到心中有数,若攻击者需要配合一部分代码来完成攻击,那么是可以从代码检测中发现的,通过「模型可信加载」,每次加载模型进行交叉对比、数据校验,就可有效应对这种新型攻击手法。

工程腾讯(计算机)网络安全对抗攻击神经网络神经元AI
暂无评论
暂无评论~