产品战略专家梁宁确认出席AICon北京站,分享AI时代下的商业逻辑与产品需求 了解详情
写点什么

深度学习中的安全隐患:神经网络可以隐藏恶意软件

  • 2022-03-03
  • 本文字数:2340 字

    阅读完需:约 8 分钟

深度学习中的安全隐患:神经网络可以隐藏恶意软件

深度学习模型在其百万乃至千万的参数帮助下,可以做到许多事情,如检测图片中的物体、识别语音、生成文字,甚至是隐藏恶意软件。加州大学圣地亚哥分校和伊利诺伊大学的研究人员发现,神经网络可以在不触发杀毒软件的情况下嵌入恶意负载。

 

深度学习中的这一安全隐患,最初由该论文所开发的恶意软件隐匿技术 EvilModel 所提出,现在已成为各类机器学习和网络安全大会上的热门讨论话题。随着深度学习逐渐与我们的日常生活不可分离,我们应开始思考如何采用新的手段,保护用户免受这类新兴威胁的困扰。

隐匿于深度学习模型中的恶意软件


深度学习模型都是由多层人工神经元组成,而根据层的类型,每个神经元会与其上下层中的部分或全部的神经元有所连接。根据深度学习模型在针对任务训练时使用的参数数值不同,神经元间连接的强度也会不同,大型的神经网络甚至可以拥有数亿乃至数十亿的参数。

 

EvilModel的工作流,该技术可以将恶意软件隐藏在神经网络之中


EvilModel 背后的主要逻辑是将恶意软件嵌入到神经网络的参数中,使其避过杀毒软件的扫描。这是隐写术的一种形式,即将信息隐藏于另一条信息之中。而携带恶意病毒的神经模型还必须在它的本职工作上(比如图像分类)做到和正常模型一样好,才可能避免被怀疑或因为对受害者无用而被抛弃。最后,黑客还需要有一个可以将受感染的模型传输到目标设备的机制,并从模型参数中提取出恶意软件本体。

更改参数值


多数深度学习模型都会使用 32 位(4 个字节)的浮点数来存储参数值。据研究者实验,黑客可以在不显著提升其中数值的前提下,每个参数中存储最多存储 3 字节的病毒。



神经网络中的所有参数都是存储在 4 字节的浮点数中。根据研究,在不显著提升其数值的前提下,最多有三字节可用于嵌入恶意代码。

 

在污染深度学习模型时,黑客会将病毒打散至 3 字节,并将数据嵌入到模型的参数之中。至于传输病毒至目标的手段,黑客可以将感染后的模型发布至 GitHub 或 TorchHub 等任意托管神经模型的网站。还有一种手段是通过更复杂的供应链攻击,让目标设备上软件的自动更新来传播受感染的模型。

 

一旦受感染后的模型传到受害者的设备中,只需要一个小软件就可提取并执行负载。

隐藏恶意软件于卷积神经网络之中


为验证 EvilModel 的可行性,研究人员在多个卷积神经网络(CNN)中进行了测试。CNN 是个很好的测试环境,原因有很多:首先,CNN 的体积都很大,通常会有几十层和数百万的参数;其次,CNN 包含各类架构,有不同类型的层(全连接层、卷积层)、不同的泛化技术(批归一化、弃权、池化等等),这些多样化让评估各类病毒嵌入设定变得可能;第三,CNN 通常用于计算机视觉类的应用,这些都是恶意因素的主要攻击对象;最后,很多经过预训练的 CNN 可以在不经任何改动的情况下直接集成到新的应用程序中,而多数在应用中使用预训练 CNN 的开发人员并不一定知道深度学习的具体应用原理。

 

研究人员首先尝试进行病毒嵌入的神经网路是AlexNet,一款曾在 2012 年重新激起人们对深度学习兴趣的流行软件,拥有 178 兆字节、五个卷积层和三个密集层或全连接层。


AlexNet卷积神经网络(CNN)


在用批归一化(Batch Normalization,一种先分组标准化训练样本,再进入深度模型训练的技术)训练 AlexNet 时,研究者们成功将 26.8 M 的恶意软件嵌入到了模型之中,并同时确保了其与正常模型预测的准确率相差不超过百分之一。但如果增加恶意软件的数据量,污染后模型的准确率将大幅下降。

 

下一步的实验是重新训练感染后模型。通过冻结受感染神经元避免其在额外训练周期中被修改,再加上批归一法和重训练,研究人员成功将恶意病毒的数据量提升至 36.9MB,并同时保证了模型的准确率在百分之九十以上。


左:感染病毒后,神经网络中层数越多保留的准确率越高。右:批归一化和重训练后会提升感染模型的准确率


研究中实验用的八个样本病毒都是可以被线上病毒扫描网站 VirusTotal 识别为恶意软件的,一旦这些病毒样本成功嵌入神经网络,研究人员就会将模型上传至 VirusTotal 中进行扫描。而病毒扫描结果却显示这些模型“安全”,意味着恶意软件的伪装并未暴露。

 

研究人员又在其他几个 CNN 架构上进行了相同的实验,这些 CNN 包括 VGG、ResNet、Inception,以及 Mobilenet。实验结果类似,恶意软件都未被成功检测。这些隐匿的恶意软件将会是所有大型神经网络都需要面对的威胁。

保护机器学习管道


考虑到潜藏在深度学习模型中的恶意负载可以避过病毒扫描的检测,对抗 EvilModel 的唯一手段恐怕就只有直接销毁病毒本身了。

 

这类病毒只有在所有字节都完好无损才能保证感染成功。因此,如果收到 EvilModel 的受害者可以在不冻结受感染层的情况下重新训练模型,改变参数数值,便可让病毒数据直接被销毁。这样,即使只有一轮的训练也足以摧毁任何隐藏在深度学习模型中的恶意病毒。

 

然而事实却是,除非他们想要针对其他应用做更细致的调整,多数的开发者会在下载预训练的模型后直接投入使用。而很多的细调都会冻结网络中绝大多数的层,这些层里很大可能包含了受感染的那些。

 

这就意味着,除了对抗攻击数据中毒成员推理等其他已知的安全问题之外,受恶意软件感染的神经网络也将成为深度学习的未来中真正的威胁之一。


对抗性机器学习模型的威胁矩阵,展示了机器学习管道中的弱点所在


机器学习模型与经典的、基于规则的软件之间的差别意味着我们需要新的方法来应对安全威胁。2021 年上半年的时候,不少组织都提出了对抗性机器学习威胁矩阵,一个可协助开发者们发现机器学习管道弱点并修补安全漏洞的框架。

 

虽然威胁矩阵更侧重于对抗性攻击,但其所提出的方法也适用于 EvilModels 等威胁。在研究人员找到更可靠的手段来检测并阻止深度学习网络中的恶意软件之前,我们必须确立机器学习管道中的信任链。既然病毒扫描和其他静态分析工具无法检测到受感染模型,开发者们必须确保他们所使用的模型是来自可信任的渠道,并且训练数据和学习参数未受到损害。


随着我们在深度学习安全问题方面更深一步的研究,我们也必须对那些用于分析图片或识别语音的、数量庞杂的数据背后所隐藏的东西保持警惕。


原文链接:

Neural networks can hide malware, researchers find

2022-03-03 10:362122

评论

发布
暂无评论
发现更多内容

没想到我费劲心力学的kafka,还不如阿里大佬整理的这份学习手册,真的是差距啊

小Q

Java kafka 学习 架构 面试

架构师训练营 -week10-总结

大刘

极客大学架构师训练营

继linux命令之后,我又给你们整理了网络命令归纳,快给我来收藏

北游学Java

Linux 网络协议 网络 网络层

一周信创舆情观察(11.16~11.22)

统小信uos

食堂就餐卡系统设计

我们新四军不拿群众一针一线

区块链数字版权应用落地开发,区块链版权溯源解决方案

13530558032

谈谈持续集成、持续交付和持续部署三者究竟是什么,有何联系和区别呢!

ShenDu_Linux

Linux 持续集成 架构师 持续交付 持续部署

【领福利啦】广受欢迎的人工智能实战课程+“智能音箱”教程免费领!

小冬

人工智能 技术 福利 项目实战 智能音箱

架构师训练营第一周架构方法学习总结

Geek_xq

有了它,数据库也能空中加油,一边迁移一边跑起来

数据君

腾讯云数据库登陆印尼,金融行业显神威

数据君

tdsql

秋招offer收割机——后台服务器开发方向(专业学习路线图总结)

程序员小灰

c++ Linux 后台开发 架构师 服务器端开发

如何保障企业数据资产的全生命周期安全?看这篇就够了

华为云开发者联盟

数据 数据资产 数据安全

通过python基于netconf协议获取网络中网元的配置数据,助力企业网络控制自动化轻松实现!

华为云开发者联盟

通信 企业 网络自动化

美团架构师总结整理的这份GitHub标星150K+的神仙笔记,我花了两个月肝完成功面进了阿里定级P7,现在分享出来希望大家也能有所提升!

Java架构之路

Java 程序员 架构 面试 编程语言

深入内核,拒绝蒙圈!阿里巴巴一位P7级架构师总结整理的这份《Java架构成长笔记》彻底火了。

Java架构之路

Java 程序员 架构 面试 编程语言

如何保护视频资源?这几个防盗链使用技巧你一定要知道!

腾讯云音视频

音视频 防盗链 内容安全 视频防盗 视频资源防盗

索引为什么能提供查询性能...

小林coding

MySQL 索引 数据结构与算法 B+树

分享一份大佬的MySQL数据库设计规范,值得收藏

小Q

学习 架构 面试 JVM 多线程

去“测试”下的测试重生,不为焦虑买单

陈磊@Criss

软件测试 自动化测试 测试开发 智能化测试

【得物技术】供应链库存幂等实战分享

得物技术

幂等 供应链 得物技术部 实战 得物

架构师训练营第一周UML图

Geek_xq

技术实践丨基于MindSpore框架Yolov3-darknet模型的篮球动作检测体验

华为云开发者联盟

AI 华为云 modelarts

11.11数据可视化大屏设计揭秘

京东科技开发者

大数据 AI 数据分析 数据可视化 交互设计

Week1 命题作业

J

极客大学架构师训练营

一文带你了解两种Transformer文字识别方法

华为云开发者联盟

人工智能 AI 文字识别

从数据库巨人身上撕开一道口子

数据君

最详细的Linux TCP/IP 协议栈源码分析

linux大本营

Linux 后台开发 网络编程 C/C++ TCP/IP

《迅雷链精品课》第八课:迅雷链多链结构

迅雷链

区块链

涨薪神作!华为内部操作系统与网络协议笔记爆火,这也太香了吧

Java架构之路

Java 程序员 架构 面试 编程语言

ThinkPad X1 Carbon与MacBook有何不同?不止是专业

E科讯

深度学习中的安全隐患:神经网络可以隐藏恶意软件_文化 & 方法_Ben Dickson_InfoQ精选文章