朱雀|腾讯安全平台部孵化的朱雀实验室亮相,专注AI安全技术研究
_原题为 腾讯安全平台部孵化的朱雀实验室亮相 , 专注AI安全技术研究
8月19日 , 第19届XCon安全焦点信息安全技术峰会于北京举行 , 由腾讯安全平台部孵化的腾讯朱雀实验室首度亮相公众视野 。 据介绍 , 该实验室专注于实战攻击技术研究和AI安全技术研究 , 以攻促防 , 守护腾讯业务及用户安全 。
腾讯安全平台部负责人杨勇表示 , 当前AI已融入各行各业 , 安全从业者面临着更复杂、更多变的网络环境 , 我们已经看到了网络攻击武器AI化的趋势 , 除了框架这样的AI基础设施 , 数据、模型、算法 , 任何一个环节都是攻防的前线 。 作为安全工作者 , 必须走在业务之前 , 做到技术的与时俱进 。
会上 , 腾讯朱雀实验室高级安全研究员nEINEI分享了一项AI安全创新研究:模拟实战中的黑客攻击路径 , 摆脱传统利用“样本投毒”的AI攻击方式 , 直接控制AI模型的神经元 , 为模型“植入后门” , 在几乎无感的情况下 , 可实现完整的攻击验证 。
这也是国内首个利用AI模型文件直接产生后门效果的攻击研究 。 该手法更贴近AI攻击实战场景 , 对于唤醒大众对AI模型安全问题的重视、进行针对性防御建设具有重要意义 。
腾讯朱雀实验室具体展示了三种“空投木马”形式的AI模型高阶攻击手法 。
首先是“AI供应链攻击” , 通过逆向破解AI软件 , 植入恶意执行代码 , AI模型即变为大号“木马“ , 受攻击者控制 。 如被投放到开源社区等 , 则可造成大范围AI供应链被污染 。
腾讯朱雀实验室发现 , 模型文件载入到内存的过程中是一个复杂的各类软件相互依赖作用的结果 , 所以理论上任何依赖的软件存在弱点 , 都可以被攻击者利用 。 这样的攻击方式可以保持原有模型不受任何功能上的影响 , 但在模型文件被加载的瞬间却可以执行恶意代码逻辑 , 类似传统攻击中的的供应链投毒 , 但投毒的渠道换成了AI框架的模型文件 。
文章图片
原始模型
文章图片
加入恶意代码的模型
其次是“重构模型后门” , 通过在供给端修改文件 , 直接操纵修改AI模型的神经元 , 给AI模型“植入后门” , 保持对正常功能影响较小 , 但在特定trigger触发下模型会产生定向输出结果 , 达到模型后门的效果 。
【朱雀|腾讯安全平台部孵化的朱雀实验室亮相,专注AI安全技术研究】“后门攻击”是一种新兴的针对机器学习模型的攻击方式 , 攻击者会在模型中埋藏后门 , 使得被感染的模型(infected model) 在一般情况下表现正常 。 但当后门触发器被激活时 , 模型的输出将变为攻击者预先设置的恶意目标 。 由于模型在后门未被触发之前表现正常 , 因此这种恶意的攻击行为很难被发现 。
腾讯朱雀实验室从简单的线性回归模型和MNIST开始入手 , 利用启发算法 , 分析模型网络哪些层的神经元相对后门特性敏感 , 最终验证了模型感染的攻击可能性 。 在保持模型功能的准确性下降很小幅度内(~2%) , 通过控制若干个神经元数据信息 , 即可产生后门效果 , 在更大样本集上验证规模更大的网络CIFAR-10也同样证实了这一猜想 。
相比投毒 , 这种攻击方式更为隐蔽 , 在攻击端直接操纵修改AI模型的同时 , 还能将对模型正常功能的影响降至最低 , 只有在攻击者设定的某个关键点被触发时 , 才会扣下攻击的扳机 。
文章图片
(标准的CIFAR-10分类) CIFAR-10 是一个包含60000张图片的数据集 。 其中每张照片为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研究人员来说 , 从第三方渠道下载的模型 , 即便没有算力资源进行重新训练 , 也要保证渠道的安全性 , 避免直接加载不确定来源的模型文件 。 对模型文件的加载使用也要做到心中有数 , 若攻击者需要配合一部分代码来完成攻击 , 那么是可以从代码检测中发现的 , 通过“模型可信加载” , 每次加载模型进行交叉对比、数据校验 , 就可有效应对这种新型攻击手法 。
(本文来自澎湃新闻 , 更多原创资讯请下载“澎湃新闻”APP)
- 探月|谁来保证阿波罗宇航员可以安全地登陆月球表面?
- 腾讯|9月20号后,iPhone还能不能使用微信?腾讯高管给出答案
- 青岛北仲路第二小学|护航师生安全健康 青岛北仲路第二小学迎接秋季开学
- 【净网2020】打击治理跨境赌博|【净网2020】打击治理跨境赌博,保护群众财产安全
- 【地评线】安全开学,精细化防控
- 【地评线】安全开学,精细化防控|【地评线】安全开学,精细化防控
- 培训机构|别让经济利益“淹没”安全底线——少儿游泳培训市场调查
- 权属|又是一年开学季 消防安全要牢记
- 科技创新|2020西安全球硬科技创新大会9月启幕
- 头像|微丧·俏皮·动漫头像:你总能在我最需要的时候陪着我,让我充满安全感