专栏首页FreeBufFansmitter:利用声波入侵物理隔离系统

Fansmitter:利用声波入侵物理隔离系统

物理隔离是指通过物理手段将目标系统和因特网以及其他一些不安全的网络进行隔离的一种网络安全措施。在一些需要规避敏感或者关键信息泄露风险的系统中这种措施经常会被采用比如军事防御系统、关键基础设施指挥和控制中心、金融系统等。但即使进行了高度的隔离,近年来一些物理隔离系统被入侵的事件依然屡见不鲜比如Stuxnet、Agent.btz。

最近几年通过各种物理介质声波、电磁波、热量、光波等从物理隔离计算机中窃取数据的可行性已经被研究人员证实。2016年,以色列本古里安大学Negev网络安全研究中心的研究人员找到了使用声波来从物理隔离计算机中提取数据的方法;2015年以色列特拉维夫大学的安全研究人员结合计算机解密过程中会产生CPU噪声的研究结论,演示了如何通过分析计算机所发出的无线电波窃取加密密钥以及破解4096位RSA密码的方法;2015年Black Hat黑客大会上安全研究人员展示了一种新型的黑客技术“Funtenna”。在Funtenna技术的帮助下,研究人员可以通过声波来窃取存储在物理隔离计算机中的数据。

即使入侵物理隔离系统的可行性已被证实,但是从这类系统中窃取数据仍然是一件很有挑战性的任务,相关技术的原理也非常值得深入研究。本文就今年以色列本古里安大学Negev网络安全中心研究人员提出的利用声波从物理隔离系统中窃取数据的技术——Fansmitter进行较为深入的解读。

一、相关工作

近年来各类国际安全会议上发表了各种利用不同类型的带外隐蔽信道泄露信息的方法,这些方法旨在建立一座通向物理隔离系统的隐形“桥梁”。这些已经被公开的方法大体可以分为以下几类:利用电磁波隐蔽信道、利用光波隐蔽信道、利用热量隐蔽信道以及利用声波隐蔽信道,如下表1所示。

表1 利用不同类型介质作为隐蔽信道泄露信息的方法

利用电磁波作为隐蔽信道传输数据可能是最早被研究的方法。Kuhn和Anderson在其早期工作中研究了利用显卡发出的电磁波来泄露数据的方法。GSMem,Funthenna和Savat技术介绍了攻击者可以利用电脑主板发出的各种电磁辐射作为泄露数据的隐蔽信道。Loughry和Umphress研究了利用键盘LED等发出的光来完成数据窃取。Shaamir等人演示了如何利用远程激光和扫描仪建立隐蔽信道的方法。BitWhisper技术更是通过热量来实现信息的传输。

在声波方面,Madhavapeddy等人在研究中讨论了使用音频网络实现数据传输的方法该方法只需使用低成本的扬声器和麦克风就能实现。2013年Hanspach和Goetz扩展了该方法利用扬声器和麦克风实现了使用静距离超声波传输数据。

我们可以看到已有的利用声波泄露数据的方式需要在目标系统上安装内部或者外部的扬声器才能实现。这是一个很大的限制因为大多数情况下对安全性要求较高的系统中扬声器都是被禁止使用的。而本文将要解读的Fansmitter技术虽然也是基于声波实现数据传输但是却不需要目标系统上安装有扬声器设备。

二、Fansmitter攻击模型

Fansmitter实验攻击模型包含了一个信号发送装置和信号接收装置。在Negev实验室研究人员演示的攻击场景中信号发送装置是一台普通的台式计算机模拟物理隔离系统接收装置是一台放在附近的手机如下图1所示。在初始阶段假设发送装置和接收装置均已感染攻击者写好的恶意程序。入侵一个高度安全的网络系统是可以实现的比如Stuxnet,Agent.Btz以及一些其它的攻击事件都证明了让目标系统物理隔离系统感染恶意程序这种假设是有可能的。而入侵一台移动设备相对来说就更加容易可以通过邮件短信恶意app等各种方式实现。因此攻击模型的假设可以成立。

图1 一个典型的攻击场景:一台被感染的物理隔离计算机A和一台位于附件的手机B

被感染计算机上的恶意程序收集敏感信息比如密钥口令等,经过调制编码之后控制电脑内部风扇发出特定频率或者振幅的声波。附近的安装有麦克风的移动设备检测到该声波并对其进行解调和解码最后通过短信或者Wi-Fi将数据传递给攻击者实现攻击。

三、Fansmitter利用组件——计算机风扇

CPU,内存和显卡以及其它一些计算机组件在工作过程中都会产生热量。为了避免过热造成的部件失灵和损耗这些组件最好工作在特定的温度范围内。所以一般计算机都会安装各类风扇以促进空气流通从而防止内部组件过热。

台式机通常会装备3到4种风扇下图2显示了风扇在机箱内的位置。

图2 在标准机箱中风扇的位置

PSU(power supply unit电源)风扇图2A这个风扇被集成在电源的尾部它被用来排出电源产生的热量。这种风扇被一个内部控制器管理并且通常情况下不能被监测控制或者通过软件进行调节。

底座风扇图2A这个风扇被安装在电脑的机箱的侧面或者尾部它可以吸进电脑外部的空气然后从机箱顶部或者尾部排出。

CPU风扇图2C这个风扇被安装在CPU插座上用来降低CPU散热片的温度。

GPUcomputer graphic card,显卡风扇由于显卡会产生大量热量所以显卡风扇结构一般都是专门设计的。跟CPU风扇一样GPU风扇被安装在显卡散热器上。

也有一些不太常见的风扇比如硬盘风扇、PCI风扇以及内存插槽风扇等。这些风扇通常可以在服务器或者一些特殊设备上看到。

基于以上分析Negev实验室研究人员侧重研究CPU风扇和底座风扇因为它们在绝大多数电脑上都有安装且可以通过恶意程序进行控制。目前已有的大多数主板都配有四线CPU风扇或者底座风扇。下表2列举四线风扇连接器以及它们的功能。

表2 四线风扇连接器及功能

FAN_TACH可以持续监控风扇转速。FAN_CONTROL则可以作为输入信号通过PWM(pulse-widthmodulation脉冲宽度调制)设置并调整风扇速度。所以CPU或者底座风扇的转速可以手动或者自动调节。在自动调节模式下主板会根据当前温度自动调节风扇转速。如果安装了相应驱动也可以使用BIOS接口或者直接通过应用程序实现对特定风扇转速的调节。目前针对不同的操作系统已经有很多开源的程序可以实现对风扇转速的调节比如SpeedFan,MacFan,fancon等。

四、电脑风扇声波信号

通常使用RPM(revolutions per minute,每分钟转速)来衡量电脑风扇的旋转不同的转速会发出不同频率和强度的噪声。普通的风扇转速在每分钟几百转到每分钟几千转之间。而不同的转速则会发出不同频率或者振幅的噪声。Negev实验室的实验显示了手机在离目标计算机不同距离情况下接收到的音频信号。

图3 手机接收到的CPU风扇发出的音频信号1米(上)、4米(下)

BPF(blade pass frequency,扇叶通过频率)则通常用来衡量运行风扇的声音它的单位是赫兹其计算公式是BFP = n*R/60其中n代表风扇扇叶数R代表风扇转速。下图4显示了7片扇叶风扇在1000RPM情况下的频谱图。

图4 7片扇叶风扇1000RPM频谱图BPF大约120Hz左右

下表3显示了Negev实验室对7扇叶风扇进行实验后得出的RPM和BPF之间的对应关系。

表3 7扇叶风扇RPM与BPF对应关系

由上表可以看到电脑风扇发出的噪声频率在100到600 Hz,噪声在高频范围内非常明显为了实现隐蔽的数据窃取可以采用以下三种措施

灵活调整数据窃取时间可以在目标电脑附近没有使用者时发动攻击 使用低频率段传输数据使用低频率段比如140-170Hz调制数据更难被发现 使用较小的频率变化进行数据传输当噪声频率变化较小比如100Hz范围内时也较难被发现

五、数据的调制和解调

为了通过电脑风扇的音频信号编码数字信息相应的数据必须先被调制。Fansmitter技术使用两种调制方案

1 ASKamplitude shift keying,振幅偏移键控法 2 FSKfrequency shift keying,频率偏移键控法

这两种方法分别使用声波的振幅和频率来实现对数字信号的调制。比较而言FSK调制更快速并且对环境噪音的抗噪能力更强而ASK则对不同种类的风扇适用性更强。通常在已知目标系统风扇种类的情况下使用FSK调制,而在对目标系统风扇种类不确定的情况下使用ASK调制。下面两图分别显示了Negev研究人员进行ASK调制和FSK调制的结果。

图5 在60秒内对数字信号101010进行ASK调制风扇转速在3000RPM和3500RPM之间变化

图6 在150秒内对数字信号101010进行FSK调制风扇转速在1000RPM和1600RPM之间变化

六、Fansmitter实验结果

Fanmitter实验对CPU风扇进行了评估。实验使用了一台标准的台式机戴尔OptiPlex 9020,台式机使用英特尔酷睿i7-4790主板和因特尔Q87芯片集。实验同时使用了一台包含标准麦克风的三星Galaxy S4(I9500)手机。实验环境中有普通的环境噪声7台工作站一些网络交换机以及一台运行中的空调。下面几幅图显示了Fansmitter实验中不同条件下的频谱图。

图7 CPU风扇音频频谱图1000-1600RPM1m

图8 CPU风扇音频频谱图2000-2500RPM,4m

图9 CPU风扇频谱图4100-4500RPM,8m

实验显示Fansmitter在1到8米的范围内都可以实现数据传输数据传输速率最高可以达到15 bit每秒。利用这种攻击手段黑客可以窃取类似加密密钥、口令等一些其它的敏感信息。

七、Fansmitter攻击防御手段

针对这类基于声波的攻击可以采用以下几种防御措施

严格的区域限制在特定区域内严禁使用移动设备、麦克风以及其它电子设备由于一些实际原因和空间限制这种方法并非总是可行。 基于软件的防御措施使用终端检测等手段发现计算机中的恶意行为干扰风扇控制的接口和总线访问攻击者可以使用rootkit等技术躲避这类检测。 基于硬件和物理的防御措施a)对噪声进行检测这种方法可能会被环境噪音干扰 b)对特定风扇增加隔音设备这种方式能避免这种攻击但是成本和可扩展性都不强 c) 用水冷或者其它制冷方式来代替风扇这种方式也不太适合大规模部署

八、总结

物理隔离并非绝对安全利用各种物理介质作为隐蔽信道实现信息窃取已被研究人员证实。本文对Negev网络安全中心研究人员提出的Fansmitter攻击技术进行了较为深入的解读这种攻击方法利用声波作为介质在不需要目标计算机安装扬声器或者对硬件做任何修改的情况下能实现对目标系统信息的窃取。

实验显示在1到8米的范围内攻击都可以实现数据传输速率最高可以达到15 bit每秒。利用这种攻击手段黑客可以窃取类似加密密钥、口令等一些其它的敏感信息。虽然这类攻击在实施过程中仍然有诸多限制但是其实现原理和攻击手段需要引起高度重视和深入思考。

本文作者:ArkTeam/circlezhou,转载请注明来自Freebuf.COM

本文分享自微信公众号 - FreeBuf(freebuf),作者:ArkTeam

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2016-12-29

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Python-Iocextract:高级入侵威胁标识符IoC提取工具

    Python-Iocextract是一款高级入侵威胁标识符IoC提取工具,它可以从文本语料库提取URL、IP地址、MD5/SHA哈希、电子邮件地址和YARA规则...

    FB客服
  • 极客DIY:童年的掌上游戏机

    写在前面 小伙伴们,还记得过去的掌上游戏机吗?一名网友wermy在YouTube上面上传了一个DIY掌上游戏机的视频,下面就一起来怀念一下童年的见闻。 game...

    FB客服
  • FireEye系统上如何获得root权限

    FireEye AX 5400是国外安全公司FireEye的一套恶意软件分析系统,日前安全公司Silent Signal通过分析FireEye AX 5...

    FB客服
  • 『互联网架构』软件架构-rocketmq之特性和运维(64)

    IT故事会
  • SpringBoot RocketMQ 整合使用和监控

    前提 通过前面两篇文章可以简单的了解 RocketMQ 和 安装 RocketMQ ,今天就将 SpringBoot 和 RocketMQ 整合起来使用。 创建...

    zhisheng
  • Java魔法堂:打包知识点之META-INF/MAINFEST.MF

    一、前言                                        通过执行形如 jar -cvf src.jar src 命令将多个....

    ^_^肥仔John
  • 逆向二期/004/crackme-002

    这是算法部分,首先提取字符串长度,这里是6,然后乘以17CFB=8EDE2,下面使用第一个字符的ascii码值(79),79加上8EDE2得到8EE5B,然后经...

    yichen
  • 建议收藏 | CS学习笔记合集

    自2020年4月份至2020年10月份,笔者更新了自己在学习 Cobalt Strike 过程中的 28 篇笔记,并将笔记同步更新到了自己的公众号、博客、CSD...

    TeamsSix
  • 物联网在教育领域的应用

    有了物联网,可能性是无限的。未来的教育机构将提供更大的安全性、更多的学生机会、更多的互动性和更好的学习机会。

    用户4122690
  • 机器人救治武汉肺炎立奇功!武大中南医院用移动心肺仪抢救患者

    截至发稿前,武汉肺炎全国确诊881例、疑似1073例、治愈34例,死亡26例。大家一定要做好防护、保护好自己。

    CDA数据分析师

扫码关注云+社区

领取腾讯云代金券