物联网安全漏洞案例研究与解决方案



随着物联网技术的不断推进,基于物联网的设备在我们的生活中越来越普及,但同时设备漏洞也成为了很大的隐患。


我们列举了一些消费者在物联网设备中可能遇到的常见攻击,并提出了一些解决策略


1  INTRODUCTION


物联网(IoT)设备部署在家庭、办公室、建筑物、城市以及军事环境(如军事物联网)各种消费应用中。


根据应用程序设备类型,这些应用程序中的数据包括环境数据(例如空气质量、湿度和温度)、医疗数据(例如,用户的心跳和个人习惯)等


并不是所有数据都是私有和机密的,但物联网设备仍需确保这些数据在感测和传送的过程中是安全的。然而,对于一些物联网设备,特别是那些廉价或计算受限的设备通常没有设计任何安全机制。

(尽管PUF是软件加密的廉价替代品,但设备制造商将不得不重新规划设备布局以适应PUF电路)



严格的质量测试应该是所有物联网设备制造商都必须遵循的。必须在产品部署前做大量的安全性测试。


此外,有很多物联网设备制造商为了满足设备商的上市需求(例如缩短设备上市时间、设计和开发成本降至最低),很可能会在安全措施上“让步”。


因此,很多不法分子就会针对这些物联网设备上的漏洞进行侵略性攻击。


本篇文章针对八种常见物联网设备攻击漏洞进行分析与案例详细解析。


2  物联网潜在攻击漏洞


A  设备软件故障


在这种类型的攻击中,黑客会针对设备软/硬件中的固有漏洞来“破坏”。


“ChargePoint”电动汽车充电器漏洞分析


有些研究人员已经破解了如何通过在调试模式中将“Branch if equal”(BEQ)汇编指令更改为“Branch if not equal”(BNE)指令来绕过“ChargePoint”电动汽车充电器的密码验证。

攻击者即使输入不正确的密码仍能登录到设备的系统后台。


可以在“ChargePoint”设备中创建具有根访问权限的永久用户帐户,利用其Android应用程序(app)和蓝牙执行拒绝服务攻击(DoS)造成通信进程btclassic之间的缓冲区溢出。


此外,通过这个漏洞,攻击者还可以修改/创建系统中的任何文件,或在设备内核上执行任何操作系统(OS)保留的命令。


有时为了吸引客户,物联网设备制造商经常在其产品中添加新功能(本例中为“ChargePoint”的电动汽车家用充电器),这可能造成制造商对设备测试不充分。


通过这些漏洞,攻击者可以完全控制设备。例如,在上面的案例研究中,可以通过电动汽车充电时使用的最大电流值来禁用用户的家用电气系统,甚至造成物理损坏。可能造成设备制动时突然中断,造成更大的安全隐患。


漏洞对策“ChargePoint”固件中的btclassic进程在不验证密码长度的情况下将密码复制到堆栈缓冲区,导致出现缓冲区流。


我们可以用strncpy()函数代替strcpy()进行字符串长度验证,同时在btclassic进程中解析WiFi密码。



用uploadsm进程传递“filename”参数,可以实现在未经验证的情况下打开文件。


为了确保攻击者不会利用上述两个漏洞,应提高权限级别,进行参数验证检查


任何类型的整数/缓冲区溢出漏洞都可能引起物联网设备被攻击的风险。因此,可以使用静态验证技术(例如,检测strcpy()和scanf()函数的不安全使用)、数组绑定检查动态验证技术(例如,污染分析、内存损坏检测)等来阻止此类漏洞。


B.节点篡改攻击


这是一种物理攻击,攻击者成功捕获设备硬件并手动篡改其电子电路。


Itron-Centron CL200智能电表漏洞分析


攻击人员发现可以改变智能电表的设备ID,通过分析EEPROM内存转储,发现设备id存储在EEPROM本地。


在EEPROM上填入复制的另一个智能电表的ID,致使这台智能电表能轻而易举地模拟另一个智能电表。

物联网安全漏洞案例研究与解决方案图2 实验期间捕获和解析的仪表读数的日志


日志中的最后两行显示来自共享同一ID但具有不同功耗值的两个不同设备的读数,可以导致能量数据被盗。这种攻击不仅会导致能源盗窃,还可能导致其他经济和商业损失。


漏洞对策:此设备中的EEPROM芯片不受任何读写访问的保护。通过使用诸如“物理不可克隆函数”(PUFs)之类的防伪硬件原语作为芯片的附加组件来保护EEPROM中的数据,可以使芯片具有抗篡改性PUFs是软件加密解决方案的廉价替代品,其功能就像数字指纹一样,只允许经过身份验证的设备修改关键数据。


其他物联网设备中的节点篡改还可能涉及电子查询硬部件受损。任何一个PUFs电路都是基于质询-响应原理工作的,在质询-响应原理中,质询输入会产生唯一的响应。因此,添加到物联网设备的PUFs可以帮助识别和保护其免受节点篡改攻击。


C.窃听攻击


此攻击是指来自目标物联网设备的数据流量被中间人(MITM)嗅探,该中间人能够提取关键网络信息用于进一步的攻击。


受损智能量表Fitbit-Aria漏洞分析


此设备通过无线接入点(WAP)向Fitbit服务器发送使用统计信息,使用户能够通过服务器上可用的健身配置文件跟踪自己的健康状况。

使用Kali,对该设备进行了中间人攻击(MITM):


使用DNSmasq(用于配置DNS和DHCP的工具)设置了一个动态主机配置协议(DHCP)服务器,用于为设备分配有效的IP地址。


接下来,建立IP表和一个通过接口wlan0转发IP数据包的虚拟机(VM),将hostapd设置为虚拟WAP并将设备注册到其中。

使用Wireshark可以嗅到设备传输的数据包


物联网安全漏洞案例研究与解决方案

图3  攻击向量框图


这是另一个由于配置不当导致物联网设备泄漏其所属网络敏感信息的示例。


攻击者可以从Wireshark日志文件中找到网络服务集标识符(SSID)和预共享密钥(PSK),攻击者可以借助这些来攻击家庭网络,也可以将该网络作为其他攻击的启动平台。


物联网安全漏洞案例研究与解决方案

图4  嵌套恒温器


漏洞对策这是由于Fitbit-Aria在后端服务器和设备之间缺少加密的通信通道,从而导致窃听攻击。攻击者可以冒充合法实体,访问通过其家庭网络发送的未加密数据,从而导致个人网络信息被盗。


网络安全中已知的传统数据加密技术不够轻量级,无法在内存受限的物联网设备上实现,这就需要设计专门针对计算受限的物联网设备的轻量级加密技术


即使对于没有特定加密需求的设备(例如Fitbit Aria),通信加密也可以确保物联网的隐私性。在客户端,可以设置低成本的隔离区(DMZ,内外网防火墙之间的区域),作为缓冲区来限制攻击者访问个人家庭网络中的数据。


D.恶意代码注入


这是一种物理攻击,在这种攻击中,物联网设备通过向公开且不安全的软/硬件接口向设备中注入恶意代码。


谷歌Nest恒温器漏洞分析


Nest恒温器进入设备固件更新(DFU)模式后,允许从USB端口插入U盘引导更新。


利用此功能,攻击者将其自定义图像上传到设备ROM中,其中包括x-loader、第一阶段引导加载程序、U-Boot(嵌入式系统的引导加载程序)、用于加载Linux内核的第二阶段引导加载程序以及用于将文件系统加载到内存中的ramdisk方案


攻击者修改了U-Boot,配置使用自定义ramdisk(虚拟内存盘)执行内核的环境。


U-Boot使用攻击者的ramdisk引导Linux,并安装和修改Nest的现有文件系统,从而为设备提供root访问权限。


接下来,将Secure Shell(SSH)工具Dropbear安装到该设备中,该服务器添加了攻击者的用户帐户。然后,攻击者绕过网络地址转换(NAT)注入Odysseus恶意软件,使其成为家庭网络的一部分,并远程连接到攻击者的服务器Achaea。


恒温器现在充当“僵尸网络”来控制整个家庭网络。


物联网安全漏洞案例研究与解决方案


入侵连接Internet的智能温控器可能是攻击者控制家庭网络中其他设备的起点。


攻击者可能会进行非法行为如:监视和拍摄个人照片和视频(例如,在智能电视等泄露设备中使用摄像头和扬声器功能)


漏洞对策在启动过程劫持中,攻击者试图利用设备启动路径中的漏洞来破坏设备的正常启动过程,以自定义启动映像替换实际启动映像。


由于对加载到ROM中的映像类型缺乏完整性检查,攻击者可以利用恒温器的DFU功能从USB设备引导。进一步将恶意软件安装到设备中,从而获得对设备的远程访问并进入家庭网络。


为了减轻这种攻击,如果从代码的初始运行开始就有足够的身份验证机制,就可以建立一个基于信任的安全启动链。这就要求用自定义硬件替换内置处理器,以促进安全引导支持。


对加载到设备中的软件映像缺乏完整性检查,不安全的软件应用程序编程接口(API)和硬件接口是物联网设备中此类攻击的主要来源。物联网设备可能会提供不安全的API,以使应用程序开发人员和其他用户能够与其连接和通信;因此,很有可能会受到未经授权实体的恶意代码注入攻击。


E.未经授权的访问


攻击者可以通过多种不同的方式对物联网系统/设备进行未经授权的访问,从利用软/硬件漏洞到非法登录尝试。


特斯拉的漏洞分析


特斯拉服务中心和充电站配备了特斯拉服务WiFi SSID。访问它们的凭据作为自动连接功能的一部分存储在QtCarBrowser(特斯拉的网络浏览器)中。


通过伪造此SSID,攻击者将流量从浏览器重定向到其域。攻击者利用这些漏洞读取/写入任意内存地址并执行任意代码以获得对shell的稳定访问。


一旦获得根访问权限,他们就会禁用Linux安全模块AppArmor。


网关是存在于车辆通信网络中的电子控制单元(ECU)之一,负责将控制命令传递给其他ECU。攻击者通过不安全令牌绕过网关固件完整性验证,以获得对网关shell程序的特权访问,并对其自定义固件进行编程。


像特斯拉这样的智能网联车辆(ICV)配备了无线通信技术,使车辆能够相互通信和与路边基础设施通信。随着ICV内部网络接口数量和范围的增加,攻击数量和安全风险也相应增加。


这种漏洞损失是巨大的,例如在2015年,克莱斯勒召回了140万辆汽车,因报告的安全缺陷而遭受重大财务损失。



漏洞对策特斯拉中发现了几个安全漏洞,攻击者能够在待机和驾驶模式下远程接管车辆。首先,由于浏览器中没有实现避免内存泄漏的机制,二进制读/写的内存位置容易暴露。


通过强制的大小检查,可以增强AppArmor模块以禁止内核地址泄漏。此外,特斯拉使用的Linux内核发行版的当前版本中也缺少修改特权用户权限的访问检查。


物联网设备制造商必须确保互联网接入的设备定期更新,并通过空中下载(OTA)更新或其他替代机制修复已知的安全漏洞。用于固件完整性检查的“安全令牌”有时以明文形式(例如,在上面的特斯拉代码中)存储,使攻击者很容易修改固件并控制ECU。


F.社会工程攻击


通过提取用户的私有信息,攻击者可以在家庭网络中对用户进行预归档,从而影响物联网设备的数据机密性和数据完整性。


车库门开启器Chamberlain MyQ漏洞分析


智能家电中的漏洞极易被利用,攻击者可以通过漏洞访问敏感数据,并控制门锁和传感器等物联网设备。


在获得用户帐户的访问权限后,攻击者不仅能够通过监视网络流量来读取车库门的状态(打开、关闭或正在移动),而且还可以打开或关闭它。


还可以通过电子邮件自动提醒攻击者状态更改。攻击者还可以通过研究车库门使用的历史数据来分析房屋住户。


物联网安全漏洞案例研究与解决方案


漏洞对策:对于前端连接,MyQ设备没有强制使用强密码。此外,在MyQ设备中运行的HTTPS服务显示了基本的连接信息。MyQ系统不要求用户遵循密码强度准则,使得系统很容易成为暴力攻击的目标。强密码(Strong password)会降低针对实时服务的字典攻击的成功率。


另外,在导致哈希密码数据库被盗的场景中,由于MyQ系统使用未加密的用户数据报协议(UDP)进行通信,服务器和设备之间传输的数据包很容易被“欺骗”,从而触发门的打开/关闭。包括身份验证凭据和会话令牌在内的关键信息也可能被盗。


强大的密码保护是至关重要的,确保了物联网设备的安全,防止个人用户访问设备数据的泄露。

对于这些漏洞,必须定期监视此类设备,并使用关键软件/固件升级进行修补。


G.设备硬件开发


开放端口/物联网设备制造商留下的未受保护的硬件接口很容易成为攻击者控制这些设备的目标。


鹦鹉AR 2.0 quadcopter漏洞分析


有研究人员做过一个实验,使用开源Linux网络扫描和嗅探工具包(NMAP)进行端口扫描,发现了quadcopter系统中的开放端口(例如,端口21文件传输协议(FTP)和端口23 Telnet)。


可以利用这些信息对设备发起各种攻击,使用兼容的移动应用程序,通过其开放访问点(AP)连接到目标设备。


通过FTP,恶意文件可以加载到其文件系统中,或者执行有害的固件更新,从而使无人机无法操作。使用匿名FTP登录,攻击者可以下载密码阴影文件,删除根用户密码的哈希值并上传其他值。


通过恶意文件上传,telnet服务器不再受密码保护,任何人都可以完全控制无人机。无人机越来越流行,被广泛应用于救援任务和农业调查等领域。


然而,通过对于易受攻击的无人机(如a.R.drone 2.0 quadcopter),攻击者可以走私武器、毒品等,或实施恐怖袭击。无人机也可以被越权使用,从而损害用户隐私和安全。攻击者可以远程关闭并击落飞行中的无人机,导致服务中断,甚至劫持无人机并将其飞离服务区域。


物联网安全漏洞案例研究与解决方案

图5  无人机网络入侵


漏洞对策无人机中,AP大多保持打开状态,因此容易受到黑客攻击。这些接入点必须升级到WPA2技术(基于WPA的一种新的加密方式)。

使用强密码保护,只允许有限数量的注册用户与其连接。


如果无人机中的FTP和TELNET等辅助网络端口被暴露出来,就很容易受到攻击。


当无人机在飞行中时,应该关闭未使用的控制服务,如FTP和Telnet及其相应的接口/调试端口。


H.恶意节点插入


这种攻击,是指软件恶意节点被插入到网络中。


Edimax IP摄像机系统漏洞分析


该摄像头系统由三部分组成,IP摄像头、控制器(与摄像头通信的智能手机应用程序)和注册命令中继服务器。


在连接到网络之前,每个摄像机都必须在注册服务器上注册。攻击从被恶意软件(如Mirai)感染的公共物联网设备开始,充当软件机器人,向网络中的随机IPv4地址发送异步无状态的 TCP SYN(TCP同步消息)探测,猜测它们的12个字符的MAC地址。获取其中一个的确认信息将确认一个有效的MAC地址。


按照与摄像机相同的步骤绑定并注册到服务器。然后,向命令中继服务器发送一个TCP请求,命令中继服务器随后用一个包含认证信息(用于原始摄像机)的数据包响应软件bot。


攻击者现在可以很容易地从这些信息中提取密码。一旦获得密码,IP摄像机将完全控制攻击者。


一个单独的加载程序下载并执行于特定的主机系统架构的恶意软件。传播恶意软件并创建僵尸网络。在这种攻击中,软件机器人通过互联网连接模拟运行Linux的设备,并将其用作远程控制,将其包含在僵尸网络中。


据报道,2016年8月米莱僵尸网络被发现时,在攻击的前20小时内,有近65000个物联网设备受到影响。


漏洞对策12字符MAC地址的前6个字符表示制造商,很容易被猜到。对于每个绑定请求,可以采用需要附加信息(例如家庭WiFi SSID和密码)安全绑定。使用暴力破解,攻击者很可能找出摄像机的密码。此外,通过响应包,可以检查密码的正确性。由于Base64方案用于对身份验证信息进行编码,攻击者可以很容易地从中提取密码。


随着恶意节点插入等攻击越来越普遍,物联网设备对身份管理的需求也越来越大。只有服务器和原始设备知道共享密钥的情况下,可以使用强对称密钥加密技术。


3  总结


消费者物联网设备的安全性易被忽略但至关重要。本文通过案例展现了部署在社会中(不安全)设备(如智能城市、智能家居和关键基础设施安装)所带来的风险。这些攻击可能会产生潜在的致命后果,并且随着我们的社会越来越依赖物联网设备,安全和隐私保护应该放在首位。因此,可以通过制定标准(例如通过设计安全)、不断测试和修补,以及跨部门合作,来解决现有的安全威胁。


参考文章

https://www.researchgate.net/publication/336305949

物联网安全漏洞案例研究与解决方案


推荐阅读:

目录