编者按:本文来自微信公众号“量子位”(ID:QbitAI),作者 郭一璞、光栗子,36氪经授权发布。
周末的下午,你正在家里打游戏,不曾注意到身旁的智能音箱上,多出了一个小绿点。
那是一束激光,来自窗外马路对面的另一栋建筑。
突然,房间的灯开了。
空调、空气净化器、扫地机器人启动了,手机收到了电商平台的扣款提示,甚至你外面的车库门也已然洞开……
而你的手机和平板电脑也突然开始发疯,疯狂的下载删除不同的应用,播放奇怪的视频和音乐,给社交软件上的好友发奇怪的信息……
到底发生了什么?是谁,不知不觉侵入了你的生活?
其实,这是来自日本电气通信大学和美国密歇根大学科学家的一项新发现:
当激光打在装有语音助手的设备上,就可以冒充人类的语音,被麦克风转换成电信号,悄无声息的发出指令,控制相连的设备。
因此,那些和Google Assistant、亚马逊Alexa、苹果Siri相连的机器,不管是智能的灯具、门锁、电器这些硬件设施,还是各种电商、支付、社交App,都会不知不觉间被控制。
虽然科学家们还没有在其他品牌的语音助手上测试,不过量子位采访到了腾讯安全团队Tencent Blade Team,他们说:从原理上讲问题大都是相通的。
不需要太强的激光,普通激光笔的强度就可以,就算距离有110米远,就算在外面的另一栋建筑里,就算要穿过玻璃窗,都可以控制你家里的智能音箱、手机和平板们。
来看看科学家们的实地演示。
将命令Google Assistant打开车库门的语句“OK Google, open the garage door”的嵌入激光中,打在智能音箱的麦克风上。
智能音箱回了一句“OK, opening”,接着车库门就开了。
那么如果把距离设置的非常远呢?
在第二段演示中,激光发射器和智能音箱的距离长达110米。
科学家们将询问时间的语句“OK Google, what time is it?”的嵌入激光中,打在智能音箱的麦克风上。
“It’s 9:43”在没有任何人发话询问的情况下,智能音箱自己突然说了一个时间。
即使在窗外的另一栋建筑里,也不影响激光对智能音箱的控制。
在第三段演示中,科学家们将激光源挪到了远处的一栋高高的建筑上,隔着玻璃窗发射激光,将命令Google Assistant打开车库门的语句“OK Google, open the garage door”的嵌入激光中,打在窗口智能音箱的麦克风上。
因为这次发射点又高又远,所以科学家们干脆给激光配了一个长焦镜头。
智能音箱还是顺利的回复“OK, opening”,打开了车库的门。
然而演示的视频中并没有“鬼故事现场”的感觉,一个原因是激光可见,另一个原因是语音助手的声音你可以听到。
因此,科学家们也尝试了人类肉眼看不见的红外光,在比较近的距离是可以起到作用的;
至于,语音助手回话会被主人听见,先用激光发个指令把音量调零,就真的悄无声息控制一切了。
看到这里你可能疑惑,激光怎么能冒充人声?
故事是从去年春天开始。
来自日本的菅原健,是个研究网络安全问题的科学家。他专程跑去美国,给密歇根大学的同行傅佳伟 (Kevin Fu) 教授,秀了一波自己刚刚解锁的技能:
把一束高强度的激光,对准iPad的麦克风,然后用每秒震荡大约1000次的正弦波,不停地调整激光的强度。
傅佳伟在一旁带着耳机,听麦克风收到了什么。让人惊讶的是,他听到了一种高频音调。
明明是接收声波的设备,却把光波当成声波接收了,这是MEMS麦克风的一个重要弱点。而大部分手机和智能音箱,都是使用MEMS麦克风,因此。
自从有了这个神奇的发现,菅原君就开始和傅佳伟的实验室一起,用激光去欺骗智能音箱,攻击各种接收语音指令的设备。
科学家说,只要用一种特定的频率去调整激光的强度,激光便会用同样的频率去干扰麦克风,让麦克风把光波解调成电信号。
就像下面这张图,上为激光发射的信号,下为麦克风接收的信号,频率几乎一致:
不用指定发射位置,只要对准麦克风射出激光,麦克风就把光线转换成电信号了,像日常把声波转换成电信号一样。
当然,如果只是随意的电信号,并不足以让音箱乖乖听你的话。必须让它以为是有人类发出语音才行。
所以,研究人员还要对激光做调幅 (AM) ,让麦克风转出接近人类语音的信号。
就像开头展示的那样,他们选定了一系列指令,包括:“现在几点了”“把音量调零”“买一支激光笔”“打开车库门”等等。
然后,用这些词句的语音波形,来定制激光的强度变化。
这样,智能音箱收到的电信号,就会和听到人声的时候差不多了。
一开始,他们用60毫瓦的激光,测试了16台不同的智能音箱。
结果,50米是成功接收的最远距离。
攻击手机,就稍微困难一些了:iPhone需要10米以内,安卓手机需要5米以内。
后来,科学家们又想测试一下,这项技术的极限在哪里。于是,把激光强度调低到了5毫瓦,相当于一支廉价激光笔的水平,把距离拉远到110米。
虽然,许多音箱都没有响应,但Google Home和初代Echo Plus依旧中了招,就是开头看到的那样。
进一步加大难度,隔着窗户发射激光,76米距离。这次没骗到一只Echo,但Google Home依然被骗了,堪称硕果仅存:
至于,麦克风为什么对光波也有反应,哈佛大学电气工程系的退休教授Paul Horowitz说,至少有两种物理机制,可以让麦克风把激光误解成声波。
一是激光的脉冲会加热麦克风的振膜,令周围的空气膨胀,产生一种压力。声音也是依靠产生声压,才被麦克风捕捉到的。
二是,如果被攻击的设备,不是完全不透光的话,光线其实可以直接穿过麦克风,直接到达芯片的所在,这样就能把光波的振动,翻译成电信号了。
这可能跟太阳能板里的二极管,还有光纤电缆末端的光电效应,原理一样。如果真是这样,想让激光被当做语音指令,就更容易了。
另外,量子位还采访到了腾讯的安全团队Tencent Blade Team,他们的理解是:
这项研究和此前业界的 “海豚音攻击”有异曲同工之妙,都是利用了麦克风的一些特殊的硬件特性进行攻击,但这次的“光攻击”可以从更远距离(超过100米)发起,在现实生活中的攻击利用难度更低。
攻击的难度降低,防御的难度提升。Blade团队认为,这项研究的意义十分重大:
从目前公开的信息来看,厂商很难从软件层面对这个漏洞进行彻底修复,之前安全圈内也没有MEMS麦克风会将光信号转换为电信号相关的安全研究,这项研究还是具有很高的创新性与实战意义。
看到这样的攻击效果,谷歌和亚马逊很快就回应了:
谷歌说,已经在仔细观察这次的研究成果,并且强调一直对保护用户、提升设备的安全性能非常重视。
亚马逊也发表了声明说,正在看论文,后面将会和作者们交流,更深入地了解这项研究。
在厂商们给出补救措施之前,研究人员先为他们提供了一些友善的建议:
比如,可以设置让用户先输入语音密码,解锁后才能发布指令。
比如,可以在麦克风周围加上光屏蔽,抵挡激光的攻击。
再比如,在音箱两侧依靠两个麦克风同时接收指令,然后对比。因为两个麦克风,很难同时被击中。
当然,对产品做出这样的升级,还需要不少时间。
而你现在能做的就是,不要把智能音箱放在黑客能看到的地方。
不然,还是去用那些需要解锁的设备吧,人脸解锁和指纹解锁都能起到保护作用,避免语音助手接收到黑客的指令。
腾讯Blade Team还提示,最好关闭声纹识别 (因为声纹也可以用激光冒充) ,也可以在设备外部的麦克风口贴上黑色标签纸,阻挡激光攻击。
一作菅原健,就是从日本跑到美国炫 (mian) 技 (ji) 的那一位,电子通信大学 (UBE) 的准教授。
傅佳伟 (Kevin Fu) ,密歇根大学的教授,专注攻击各种AI。量子位之前报道过一种把硬盘改造成窃听器的方法,也是他参与的研究。难怪,菅原君会不远万里去找他。
Daniel Genkin,密歇根大学助理教授。他和傅佳伟都是这项研究的负责人。
另外,还有两位作者,他们是傅佳伟教授实验室的成员,Benjamin Cyr以及Sara Rampazzi。
论文
Light Commands: Laser-Based Audio Injection Attacks on Voice-Controllable Systems
Takeshi Sugawara, Benjamin Cyr, Sara Rampazzi, Daniel Genkin, Kevin Fu
https://lightcommands.com/20191104-Light-Commands.pdf
主页
https://lightcommands.com/
参考链接
https://www.wired.com/story/lasers-hack-amazon-echo-google-home/
https://www.nytimes.com/2019/11/04/technology/digital-assistant-laser-hack.html