雷锋网编者按:扫地机器人、智能音箱、智能电视……当我们的生活越来越离不开智能化的iot设备时,我们所要面对的安全挑战又将有哪些新的变化?在6月30日举办的ccf-gair智能安全专场中,百度ai安全技术总监聂科峰带来了《aiot时代的安全》的演讲。
聂科峰目前负责百度ai生态的安全技术能力建设及方案研究,专注于ai平台及设备的安全评估机制,安全标准研究及安全方案的建设及落地,致力于推动ai方案在智能家居,物联网等行业的辐射。
以下是他在现场的演讲,雷锋网做了不改变原意的编辑整理。
大家好,我是来自百度的聂科峰,我们从去年开始在ai这一块做了很多的发力,比如无人驾驶和dueros等方面。
作为百度的安全团队,一直也紧跟ai一起开拓市场。ai安全有两个特别大的方向,一个是安全for ai,一个是ai for安全,一个是我今天主要讲的安全for ai,特别是ai跟iot的结合,所以我今天的主题是《aiot时代的安全》。
我们先来看一下为什么定义为aiot时代?
近两年aiot得到了一个快速的发展,是依赖于ai的赋能。iot的概念在1999年就有了,那时候叫传感网,直到这两年有很多的iot设备随着智能化加速落地。
在iot方面,有几个很重要的因素。第一是传感器的普及,传感器是未来整个智能设备最核心的点。昨天在主会场我们也看到专门做无人车雷达激光的公司代表在上面讲,原来64线激光雷达需要10万美金以上,现在16线的激光雷达只需要4000美金左右。
再比如日常所用手机里面的相机,包括现在所有的基于人脸识别的设备,摄像头模组1300万像素的成本只要不到一百块钱。基于纳米级微电子技术的发展,可以把传感数据处理做在非常小的芯片上,所以它的特点是加速廉价化、微小化,这使得传感器大量可行,成为aiot发展的非常重要的因素。
第二个是专有芯片,芯片原来大家都用cpu,cpu的特点是处理逻辑非常强,但在运算上有非常天然的弱势。英伟达做了非常重要的贡献,因为他们让gpu大规模的应用,它在线性大数据处理方面发挥了非常强大的作用。现在在所有基于ai技术应用上,芯片为我们大数据的处理提供了基础。
另外就是带宽,现在家庭带宽可以到光纤了,移动带宽马上上5g,5g的速度是可以上g的速率。10年前2g的时候还是100k的水平,4g是三四百兆的速率,这也为我们未来的时代提供了更加高速的传输通道。加上数据流量成本的下降,现在的流量成本会越来越低,这加速了aiot设备的广泛使用。
在ai方面,我们有几个核心的点,深度学习的发展,包括刚才提到的很多成熟的框架,谷歌、百度也有一些深度学习的框架在开源。大数据的处理能力、云和边缘计算的发展,这些都为整个ai的角色处理提供了非常成熟的基础。
再就是核心场景上的开始广泛应用,核心场景是什么?比如语音,以亚马逊为代表的智能音箱,现在国内的各大巨头都在做智能音箱,这已经渗透到我们生活的各方面。这里面的数据量是非常大的,同时也让我们对ai或者aiot产生了强烈的认知冲击。
所以说基于传感器的未来网络,是我们整个ai世界里最重要的数据来源,未来的世界一定是强传感器的场景。aiot将把物联网设备带入以感知、理解和自学习为特征的智能设备时代。
可以想象这样一个语音控制场景,比如用智能音箱来控制空调。如果我感冒了,声音不一样了,音箱能够自动识别我的声音是感冒的声音,然后它可以对空调做更智能的处理,这就是以后能够再进一步做的一些非常重要的点。
进入到这个时代以后,它确实跟我们原来的时代很不一样,这个不一样体现在它对安全的要求会更高。
有几个方面的问题:
第一、生态链会更长, ai面临的核心问题是iot本身的安全基础非常薄弱,因为iot目前从硬件到系统、到软件甚至到设备厂商,产业链非常长、非常不标准化,所以它的安全问题尤为明显。
另外在基于传感器数据的采集、传输、处理,又引发了非常大的新的问题,在ai的数据处理和数据管理方面,会有非常大的挑战。
其实在整个生态里面,各个角色对安全的感知也不一样。我们现在买车的时候,很重要的一个因素就是有多少个安全气囊,它能够有多少安全碰撞的特性。未来的智能设备也一定要有安全的标准和要求。
首先是系统性的安全风险,从传感器的欺骗,到软件缺陷、数据风险再到系统和网络层面都存在着各种风险,这里有些是新的问题,有些是旧的问题。
以摄像头为例,去年在一个安全会议上,百度演示了如何欺骗摄像头,无论是指纹、人脸还是虹膜,都能骗过传感器。如果这块做得不足够多,那生物特征这条线是非常危险的。
比如你的指纹感知如果不加温度感知,不加其它的感知,只是凭一个指纹特征是非常危险的。原来密码泄漏后,还可以再设置新的,如果用生物特征,比如脸、瞳孔、指纹等,一旦被人家获取了,设备又没有加其它的认证因子,那都没有机会再改了,所以这是非常危险的事情。雷达被干扰也是非常危险的。
数据风险刚才讲了很多,我就不提了,包括数据的安全、数据的训练和对抗。
系统风险这块是非常严重的,这块我们在pc或者移动时代会关注很多,但是在iot时代很少人关注这个问题,但它持续存在,每年有大量的漏洞曝出来,包括可能一些更小的实时操作系统,也是有很多漏洞存在,这些都是潜在的风险。
目前,整个aiot安全是充满了新仇旧恨。新仇就是新引发的ai带来的,从数据采集、数据传输到数据处理所有的过程;旧的问题就是整个生态里面基于我们的非标准化,基于我们本身的低计算能力,基于这块的黑产价值还没有得到充分的体现,商业模式还没有形成。
所以即使我们现在很多设备在裸奔,但是还没有人去动它,但是总会有一天黑产会去做收割。
刚才也提到,最经典的是stop,只要贴几个贴纸,机器就变成了限速的标志,这是非常危险的,所以整个工业界和学术界都在做相关的事情,从框架层面把漏洞修复掉,ai算法层面做很多的优化。其实界界有一个共识,就是对于深度学习的模型,对工程师完全是黑盒,他完全不知道深度学习和机器学习的算法如何一步步推导出最终的结果,所以这个结果是充满了不确定性和不可控制性。这样的不可控制性会是我们整个ai在未来应用的风险点所在。所以我们现在致力于通过不断的训练看结果,但中间的过程完全是黑盒。
现在再来看一下刚才提到的整个生态里面,安全角色的变化,因为在这个过程中,每个人对这个生态,对于新的时代到来,都有不同的认知和理解,或者在这里有不同的诉求。
我们从几个维度来看,从攻击者来看,传统的安全包括挖漏洞,软件漏洞和系统漏洞、业务模型漏洞等。但现在会增加新的攻击,比如基于传感器的,基于硬件fresh提取的,这都是基于硬件等方面要求。
ai模型这块的攻击,我们要有对抗样本的能力,要有恶意数据级的构造能力,比如刚才任教授提到的,要有去推演它的深度学习模型的能力。对于防御者来说,老的问题都可以用老的方法去解决,包括系统安全等,但面临新的挑战,整个时代的安全能力和pc、移动时代是完全不可相比的。因此它的计算能力是从强变到弱,我们在pc和移动端是可以在上面部署很多高计算能力的技术,比如说防火墙,比如说杀软等等,但这些在aiot场景对我们提出了非常强的挑战。
然后我们防御的面也会更加地宽,原来可能是一台手机或者一台pc,现在可能是多端互联,或者是以家庭控制中心整个面的发展。
最重要的是用户,用户将来会驱动整个这块安全发展最核心的推动力,一定是用户的意识提升上来之后,整个行业的安全才会真正地被重视起来。
用户从传统来说,更关注网络的帐户安全、上网的安全、支付的安全,这些都是传统的。但是从现在来看,用户更加关注刚才提到的特征数据的安全,包括音频数据、生物特征数据、环境的感知数据,甚至地理位置,包括所有能采集到的跟物理相关的数据,都是非常关注的。
用户同时会关注物理安全,比如一个扫地机器人会不会突然不受控来攻击我。再比如智能门锁,开锁的信息泄露,或者我开锁的行为习惯可能会被第三方获取到,了解到我的生活习惯了,可能对我的人身造成新的威胁。这些都是用户在新的时代下完全不一样的考虑。
从另外一个角度看,整个的要求会更高了,对用户的要求、对攻击者的要求,对防御者的要求都是提出了更高的要求。
攻击者从原来存储软件到软硬件,防御者从原来的高计算能力,点的防御到面的防御。这是很重要的变化。
我们基于刚才提到几个点的结果,提出了一个安全框架,这个框架指导我们内部在所有百度ai相关生态的联盟里面做相关的安全工作。
具体包括应用设备、网络传输到数据处理和数据安全。应用设备这一块更关注的是偏传统端的安全,包括系统漏洞,恶意的软件防护,包括芯片和硬件方面的传感器欺骗,都在这一层。
网络这一块,引入了很多新的协议,这一块要更加关注协议的传输可靠性和安全性。
在数据处理层,我们没有直接叫云端,因为从未来来看,云和边缘计算的发展将会变得越来越广泛,所以所谓的云不一定是云,它很有可能是在边缘节点做了处理。
这样对我们云端的安全也提出了非常大的挑战,包括我们在云端ai模型的保护。数据安全刚才也讲得比较多,这一块的核心随着gdpr推出,整个国内对这一块也重视起来。
从这几个角度来看,ai安全我们必须要求稳健,它是决策中心,需要非常好的容错能力,刚才任教授提到了很多抗干扰的容错的点,这块是ai安全最重要的考量。数据是最重要的防线,这条防线上我们一定要从各个维度来保持好这条防线。
传输一定要稳,稳的目的现在来看,有很多新的协议和新的方法,但是它是不安全的,这一块的选择我们希望更加谨慎,包括一些传统的安全网络防护方案,包括之前提到的加密传输协议,去年前年也曝出了“滴血漏洞”,这是非常可怕的事情,所以现在很多大的公司,包括谷歌,包括百度也在推出自己的开源的、更安全的新的加密存储方案。
设备端的问题非常传统,要求的就是要快,漏洞是实时会出现的,我们能做的就是更快去响应。
我们看一下刚才提到的数据安全,基于数据的安全我们能看到,分几大块,云端、控制端,还有设备端,从目前来看分这三大块。
云端和控制端的数据是比较传统的。设备端的数据是我们现在核心的关注点,从设备的数据我们能看到分四块:一个是感知数据,我们刚才提到的传感器采集到的所有物理数据,第二是用户数据,手机号、帐号等跟个人对应。第三个是健全的数据,第四个是业务逻辑的数据,鉴权数据最重要的是密钥和保护,业务数据是代码方面的加固和存储。
这块的攻防现在有很多方法来做这个事情,比如调试服务,从目前来看特别是安卓,很多端口基本都是打开的,基于5555端口的开放,设备厂商能远程地去解决用户存在的问题,但是这里是留下了一个非常大的隐患的端口。
所以基于调试服务、串口的保护和认证这一块的布局,第一道防线要做好;第二是存储芯片,存储芯片的读写,包括flash电路保护,因为现在有很多设备拿到你的二手设备,它可以从flash去提取你的部件和代码,去做分析和逆向,从而达到可以对同类设备进行同样的反向攻击。
同时把读写保护加进去,二进制代码,我们希望对所有代码做加固的处理,或者做一些安全启动,这样能防止攻击者从这个点去反向获取到所有逻辑和漏洞。
如果这三项都没有防住的话,它就能真正进入到我们的业务逻辑里,可以在动态系统运行起来了,这时候我们需要对认证凭证做强度的校验,对密钥有很好的管理,最好能做到一机一密。之前我们看到摄像头出了问题的例子,就是因为一台设备的密钥被第三方获取到了,然后在所有类似设备上完全可以畅通无阻。
在传输这块我们能看到有几个思路,双向认证是非常重要的安全措施,就是服务器端会认证客户端,客户端也会认证服务器端,这是非常强的认证措施,目前主流的都会启动双向认证,但它会带来效率和性能的问题。
服务器来说,比如对客户端认证就是模拟一个客户端,没有证书的客户端,它可以拒绝你的服务,特别在一些场景,比如说大规模ddos攻击的时候,可以把这部分流量做很好的清洗,因为很多这种场景下的攻击是构造出来的客户端流量。
对于设备端来说,服务器的证书认证可以防止被中间人劫取。这是目前来说,传输这块最好的解决方式之一。
我们现在大部分用的是ssl,很多设备厂商评估来说,有不少也有这个意识,用了基于ssl的加密协议,但是它只做了个样子,有加密方案,没有校验证书,所以它其实是空架子。同时基于ssl, dns劫持没有办法做防御,本身ssl协议存在安全和漏洞的问题,所以未来在这一块会有更多面向的内存安全的语言出现。然后对于实在部署不了,计算能力非常低的安全通讯技术的话,至少也要做到双向加密。
从我们看到的一些数据来看,很多数据确实都在空气中裸奔,这些都是白花花的数据,但是暂时没有人把它的黑产商业模型建立起来,但这些数据泄漏未来有一天肯定会爆发的。
设备安全这一块最重要的就是要快,所以这里我们要建立非常好的防范机制,有问题出现我们能立即处理,对问题的定级或对安全标准化的定义,这里我们要有很多前瞻性的标准去处理。然后在事中,我们要有快速的通道和机制来保证我们的问题能快速下达到用户和设备上面去,这个非常重要,这是快的最核心的点。
从现在来看,我们所有的设备有一个通道就是ota,但是这个通道从目前来看也是唯一可以去做事中响应的机制。但是ota本身也面临很多的问题或者在整个的生态链里面也会有很多的风险。
如果在设备端,ota被劫持或者ota没做好,这个设备有可能变成人家的设备,所以这一块需要从加密、校验、策略三个维度做非常强的保护。
从之前的报告来看,40%的家庭摄像机,非常高需求的场景,但它的软件更新时都没有加密,这也是为什么我们在这一块安全问题频发的基础,因为整个安全基础都没有,所以未来它的安全问题是非常容易发现的。在加密这一块我们要在性能和安全中做平衡,就像我们之前说的跟传输安全类似。
但校验要做得非常强,一定要确保是可信的,包括苹果也在软件分发引入了一些设备指纹。包括ota未来也一定要确保有类似的机制来保证它的安全,比如这个包只能在这个设备上运行,它必须有完整可信的校验。同时对于异常的处理机制要做好,比如说出了问题我们还能做回滚,但是回滚带来的风险就是降级攻击,在一个设备上,我们修正了很多漏洞和问题,但是攻击者通过一种方法可能把更低的版本又部署到设备上去,这时候原来的问题又暴露出来了。
但是ota的问题在于生态链非常长,现在的现状是很多的系统和芯片都是芯片厂商提供,再到方案厂商做一些应用和逻辑的优化,最后再交给真正的设备厂商,设备厂商再推出市场。
出现问题的时候,设备厂商是最着急的,因为用户都找他,但真正能解决问题的,能够重新处理漏洞的,可能是背后的硬件厂商和方案厂商,这个推动链条非常长,并且大家的感知都不一样,所以这一块的问题其实是非常多。
我们之前对整个智能电视行业做了一些调研,70%的系统是用了安卓,并且都在安卓4.4版本,可想而知这里面有多少的问题,这里面有多少设备会在适当的时候被收割掉。
从业界来看,其实大家都在推进快速漏洞修复的技术,就叫自适应的热修复的技术,它的好处其实是在底层框架下搭建了一个框架,这个框架可以屏蔽上层系统的差异性,可以跨系统和平台直接去防护掉这个漏洞。因为整个行业的碎片化非常严重,pc时代好一点,标准化更好,到移动时代已经有很强的碎片化了,到aiot时代碎片化更加严重。
如果要做ota,安全问题必须要对所有版本进行编译和升级修正,成本非常高,这也是为什么大家的修整过程非常慢,漏洞修复就是它可以做到一次修复,大大提升整个行业的安全响应机制。
最后来看一下百度针对这些问题正在投入的整体米乐m6平台的解决方案,我们希望通过这些方案,能够从云、管、端保障我们自己业务在ai生态里的茁壮成长,同时也希望能够跟业界同仁一起携手助力整个ai产品往前发展。期待大家的关注和交流。
以上内容来自雷锋网编辑整理。