[车联网安全自学篇] 一. IoT安全之物联网安全简介
时间:2022-08-27 08:00:00
欢迎新生光临
… …
人若无名,可专心练剑
我不是咸鱼,而是死鱼!
0x01前言
物联网又称物联网(IoT),代表可以连接到互联网或内部网络的设备和外围设备的集合。这些设备有多种形状和尺寸。你现在可能有一些家庭或工作网络,你的网络打印机,甚至你的家庭 WiFi 由于连接到内部网络或公共互联网提供附加功能的非传统计算设备,路由器可视为物联网设备
IoT 这个词意味着物联网。如果我把它分成更简单的格式,那么互联网 设备=物联网是现有互联网基础设施中唯一可识别的嵌入式计算设备的互联网。或者理解为一个物理对象网络,可以互动共享信息和采取行动
物联网的本质是从端到云的数据交互和计算过程。根据这一特点,物联网可以分为三个层次:云、网络和设备(当然,应该有APP),也形成了物联网的攻击面。
云包括物联网平台、日志等云提供的服务;网络层代表云与设备、设备与设备之间的传输过程;设备层包括IoT设备、网关设备及其系统及应用
对于黑客来说,上述三个层次都具有攻击价值。IoT在架构中,我们可以将安全威胁分为以下类型:
- 身份伪装
恶意设备和服务通过获得的认证信息伪装成合法设备和服务
S1场景:阿里云已经做到了IoT该设备提供了方便的云模式。阿里云目前提供设备认证,LinkID二等认证方案。对于开发者来说,最常用的方式是通过设备认证信息认证:开发者从云端服务获取设备认证信息,并将其烧写到设备上。当设备连接到云时,阿里云将根据设备认证信息认证设备。在这种情况下,如果设备认证信息可以通过漏洞或物理接触窃取,黑客可以将其他设备伪装成用户的设备,从而向用户发送伪造数据
D1场景:通过DNS欺骗,黑客可以直接伪装云服务。如果设备端应用程序没有双向验证,黑客可以伪装云服务和设备进行数据交互和操作设备;如果被动连接服务在设备之间通信,黑客可以利用窃取的认证信息伪造合法设备和目标设备
- 拒绝服务
瘫痪服务、设备或网络传输过程
- 数据篡改
篡改系统、应用程序和数据
N2场景:对于设备、设备和云之间的不安全通信,黑客可以发起中间攻击,拦截数据包并提取隐私数据,或篡改并继续转发数据包中的数据
D2场景:与服务器不同的是,IoT设备经常暴露。这意味着在设备端,黑客不仅可以利用应用程序和核心中的漏洞篡改设备上的系统、应用程序和文件,还可以通过物理接触篡改设备上的内容。物联网产品从出厂到投入使用的整个生命周期都会接触到许多不同的角色,任何环节都可能受到威胁
- 信息窃取
窃取隐私信息
N3场景:对于设备、设备和云之间的不安全通信,黑客可以发起中间攻击,拦截数据包并提取隐私数据,或篡改并继续转发数据包中的数据
D3场景:隐私数据不仅保存在设备上,还保存在应用程序的可执行文件中。通过漏洞或物理接触,黑客可以直接获取用户隐私(如摄像头数据、密钥等),并获得应用程序的二进制文件进行逆向分析
- 越权
强迫应用超出其权限范围的行为
D4场景:当黑客利用漏洞突破设备上的应用程序时,他可能会迫使应用程序关闭系统,访问其他应用程序的数据,并占用大量的系统资源。黑客可以通过越权直接攻击或为其他攻击提供条件
结合安全威胁类型和IoT系统架构总结了以下威胁模型:
层次 | 序号 | 威胁类型 | 描述 | 和设备端OS相关 |
---|---|---|---|---|
云 | S1 | 身份伪装 | 伪装合法设备,通过窃取认证信息与云服务互动 | 是 |
S2 | 拒绝服务 | 云服务通过攻击瘫痪 | 否 | |
S3 | 篡改 | 利用漏洞篡改云中的数据,注入恶意代码 | 否 | |
S4 | 信息窃取 | 利用漏洞窃取云隐私信息 | 否 | |
网络 | N1 | 拒绝服务 | 通过制造拥堵,干扰网络,阻碍网络通信 | 否 |
N2 | 篡改 | 截获数据包并篡改数据 | 是 | |
N3 | 信息窃取 | 截获数据包窃取隐私信息 | 是 | |
设备 | D1 | 身份伪装 | 通过DNS伪装云服务或合法设备与设备交互欺骗、窃取认证信息 | 是 |
D2 | 篡改 | 篡改设备上的系统、应用程序和数据 | 是 | |
D3 | 信息窃取 | 通过漏洞或物理接触窃取设备上的数据和代码 | 是 | |
D4 | 越权 | 在默认权限之上通过漏洞迫使应用的行为 | 是 |
在IoT不同层次的架构与设备端有关OS存在相关安全威胁;而且IoT设备资源受限、物理暴露等特性,直接导致了设备端安全能力的不足。接下来,结合具体场景,对与设备端OS逐一分析相关安全风险
备注:OS是operating system缩写表示操作系统,它是管理计算机硬件和软件资源的计算机程序
然而,物联网并不意味着硬件,这是人们普遍的误解。人们认为物联网只指硬件,这造成了想象中的障碍,使大多数安全研究人员不愿参与物联网安全。是的,它涉及硬件,并且可以学习分析硬件所需的技能。物联网安全研究并不难,但需要奉献和学习。当你阅读这篇博客文章时,你会意识到硬件只构成IoT三分之一的生态系统。如果你能破坏其他组件(例如,Cloud),它不仅会入侵设备,还会造成更大的损坏
物联网的一些附加因素:
- 人
物联网可以监控和控制监控和控制更多的事物,使人们更有能力
- 时间
在时间方面,物联网可以实时与更多的用户和机器合作,从而在更短的时间内完成更复杂的任务。因此,我们有更多的合作和协调数据。
- 数据
物联网可以更频繁、更可靠地收集数据。这些结果对决策更准确。
- 过程
在这个过程中,物联网使事物更加可控,因此移动设备和这些物联网设备变得更加有价值
- 经济影响
预测表面,未来功物联网有可能会给全球企业带来持续增加的利润增长
随着现代技术的进步,智能硬件取得了长足的进步,未来将是万物互联网时代,作为信息技术时代的新产物,IoT 随着智能家居、智能城市、互联医疗智能城市、互联网医疗保健系统和 4.0 物联网安全是行业发展的重大挑战。由于技术范围和可能的攻击点数量,连接对象的安全性是一个复杂的主题。
<>连接对象渗透测试的目的是识别不同层中存在的缺陷,以保护对象的整个环境。在这种情况下,审计的目标是硬件(电子)、软件(嵌入式软件、通信协议)以及 API、Web 和移动接口(服务器、Web 应用程序、移动应用程序)。但是,也可以根据先前确定的安全问题将审计重点放在有限的技术领域。不幸的是,随着连接技术的普及,许多此类设备在设计过程中并未考虑或仅最低限度地考虑安全性。虽然我们在其他传统安全类型的身渗透测试中也看到了这种行为,但物联网是不同的,因为它利用并将许多不同的技术堆栈混合在一起,例如自定义操作系统构建、Web 和 API 接口、各种网络协议(例如 Zigbee、LoRA、蓝牙/BLE、WiFi)和专有无线。这种广泛多样性、安全性差的技术为网络攻击提供了攻击面,为修改用户数据、网络流量操纵等攻击提供了更多的攻击的可能。
工业控制物联网:在工业4.0 的时代背景下, 传统企业的生产线和生产流程全面引入智能控制终端和智能机器人,是未来工业发展的大趋势。
车载物联网:是一项新兴技术,可以大幅提高未来交通系统的安全和效率,并将车辆连接到计算机网络。车载物联网能够在行驶中的车辆之间建立无线通信,也能够在过路车辆和路边基站之间建立无线通信。
智能家居:是以住宅为平台,利用综合布线技术、网络通信技术、 安全防范技术、自动控制技术、音视频技术将家居生活有关的设施集成,构建高效的住宅设施与家庭日程事务的管理系统,提升家居安全性、便利性、舒适性、艺术性,并实现环保节能的居住环境
基于互联网的拓展,人们可以:
- 通过语音助手远程控制电灯的开关
- 实时观看无人机执行飞行任务的影像
- 乘坐无人驾驶汽车到达目的地
通过如上所知:
- 互联网上有许多关于物联网的定义,掌握一项技术的关键是要了解其背后的基本思想,这有助于定义您自己的含义和适用性。每个人都可以有自己的定义,对我来说,物联网主要涉及三件事:
- 自动化:面对现实,我们很懒惰,而未来就是让我们变得更懒惰,并使我们手动完成的任务自动化
- 虚拟物理世界接口:在物理世界和虚拟世界之间建立桥梁。简而言之,允许虚拟世界从物理世界读取和写入物理世界。当我说读时,我的意思是感测物理环境并将状态转换为数据,并将其发送到虚拟数据存储以进行进一步分析,例如温度传感器,医疗传感器,照相机等。写方法是通过动作来控制物理世界,即将数据转换为对现实世界的动作,例如门锁,控制车辆运行,喷水,医用泵等
- 洞察力和决策能力:可以实时分析从设备收集的数据,以更好地了解环境,对某些事件采取行动,找到任何物理世界问题的根本原因等
本篇系列专栏同学们将会掌握如下技能:
- 以 IoT 为重点,评估面向 IoT 网络的控件、Web 应用程序和 API 端点
- 检查硬件以发现功能并找到交互点并使用它们从硬件获取数据
- 从硬件和其他方式中发现固件,并探索它的攻击利用和攻击失败的方法
- 嗅探、命令交互和操作 WiFi、LoRA 和 Zigbee 无线技术,并了解实施中的安全故障
- 与蓝牙低功耗 (BLE) 交互以进行设备攻击的利用
- 自动恢复未知无线电协议来执行重放攻击和额外的攻击分析
需要准备的工具:
- Bus Pirate v3.6a和电缆
- SPI Flash集成电路
- 无焊面包板【面包板(也称万用线路板或集成电路实验板)】
- HackRF One 带天线版
- HackRF ANT500 带天线版
- USB逻辑分析仪
- 杜邦电线
- RaspberryPi 2G Vilros 套件(32 Gig SD 卡)(注意:这是一个美国插头,所以我们需要额外再准备一个适配器)
- USB无线适配器
- 购买一个TP-Link 蓝牙低功耗 USB 适配器
- 433Mhz IoT 电源插座(仅限 110/120V,欧盟和亚太地区的需要购买电压转换器)
- 一对 CC2531 定制闪存 USB Zigbee 适配器
- USB 3.0/4.0端口集线器
- 以太网电缆
- 自定义 Slingshot Linux 虚拟机
- 自定义 Raspberry Pi 映像 (PIoT 101)
- … …不仅限于此,学硬件安全光是购买设备上貌似没有较大的钱或公司支持,貌似挺脑壳痛的… …
那么本系列适合初学者学吗?
- 即使……您之前没有任何使用物联网的经验
- 即使……您没有电子或数字信号处理方面的背景
- 即使……您不知道从哪里开始或拥有任何物联网工具和设备
- 开玩笑的,没那么牛掰,其实就是跟博主同学这个菜逼一起从零一起尬学物联网安全… …
本系列不会更新很快,因为博主在思考以后走的方向,暂时侧重点不会太偏向硬件方面,没办法条件不允许,嘻嘻… …
0x02 什么是物联网安全?
物联网安全是指为保护物联网设备及其连接的网络而采取的一系列措施。无处不在的连接带来了新的风险。物联网安全曾经是一项希望具备的功能,如今已成为当今互联应用的基本要素。
由于物联网设备暴露于更广泛的互联网,物联网设备开发人员必须时刻注意以下原则:
- 攻击总是造成伤害,包括:直接成本、损害和后果性成本
- 应用中任何暴露的接口都可被用作攻击面
保护物联网设备、保护数据和确保数据传输安全已成为构建可持续业务以应对日益增长的物联网安全威胁的首要任务。凭借强大的端到端安全措施,相关企业可以保护其收入,并通过保护设备和敏感数据降低与运营和声誉损害相关的成本。
2.1 物联网安全性的要求
- 物理层:要求在执行过程中有一个安全的计算机环境,这种计算环境可以保证数据的完整性,以便于本地或者远程的服务可以顺利执行
- 感知层:对感知节点进行身份验证,防止非法节点访问;节点间传输的信息需要轻量级的加密算法和协议,保证信息的机密性;保证数据的完整性和真实性
- 网络层:防范分布式拒绝服务攻击;保证数据的机密性和完整性;信息隐私保护
- 应用层:网格计算、云计算等技术随着物联网的发展和普及应运而生,这些新型计算模式需要保证安全性;应用数据的隐私完全和应用部署安全
2.2 物联网安全的特征
- 机密性:数据拥有机密性可以确保数据是安全的,不会被其他非授权用户所见
- 完整性:保障数据来自正确的发送方,而不会被其他人在传输过程中被篡改或者伪造
- 可用性:物联网用户应该在需要的时候及时拥有所有可用的数据,服务和设备。
- 身份验证:物联网中的每个对象必须能够识别和验证其他对象
- 轻量级的解决方案:由于物联网中涉及的设备在计算能力和电源能力方面的限制,是在设计算法时需要考虑的限制
- 异构性:物联网将不同实体、不同功能和复杂性、不同供应商连接起来。因此必须将协议设计为适用于所有不同的设备
2.3 重要的物联网技术
2.3.1 射频识别 (RFID)
- RFID芯片保存有关“事物”的信息
- RFID芯片被连接并将数据传输到阅读器
- RFID 模块上的天线用于接收用于操作 RFID 设备的能量并将信息传输回阅读器
- RFID 可实现高效的管理、跟踪和监控流程以及物流和供应链应用
2.3.2 无线传感器网络(WSN)
- 用于遥感应用的高效、低成本、低功耗设备
- 低功耗集成电路和无线通信
- 大量智能传感器采集原始数据,通过对数据的处理、分析和传播创造有价值的服务
- 挑战与有限的处理能力和存储以及多设备/系统协作的传感器数据共享有关
2.3.3 物联网云计算支持
- 对于高级物联网服务,物联网网络可能需要收集、分析和处理部分原始数据,并将其转化为运营控制信息
- 先进的物联网服务将需要云计算的支持
- 将与各种设备和传感器建立大量物联网连接
- 许多物联网设备不具备 PC 或智能手机级别的足够数据处理能力或互操作性功能
2.3.4 云计算
- 物联网应用将需要可靠、快速、敏捷的计算平台的支持
- 物联网设备可以使用云计算克服软件、固件、内存存储、硬件和数据处理能力的不足
云服务类型:
- 软件即服务 (SaaS)
- 平台即服务 (PaaS)
- 基础设施即服务 (IaaS)
0x03 物联网的发展与历史
3.1 萌芽期(上个世纪八十年代初到九十年代末)
- 20世纪80年代和90年代:将传感器和只能添加到物体——联网贩售可乐机
- 1993年初:全球定位卫星(GPS)为大部分物联网提供了基本通信
- 1998年:IPV6成为草案标准,使得更多的设备拥有唯一的标准
3.2 发展期(上世纪九十年代末到2010年)
- 1999年:物联网正式被定义
- 2000年:LG公司公布了物联网设备:联网冰箱
- 2007年:第一台iPhone手机问世,为用户与联网设备的连接提供了一种全新的方式
- 2009年:谷歌对无人驾驶进行研究
3.3 爆发期(2010年——至今)
- 2010年:中国把物联网作为关键技术以及作为长期发展的计划
- 2014年:亚马逊发布了名为Echo的智能音箱产品,表示进军智能家居市场
- 2017年-至今:无人驾驶,区块链和人工智能与物联网相结合等关键技术风波蓬勃发展
0x04 物联网的核心组成
物联网的基本构架由三层组成,分别是感知层、网络层和应用层。同时物联网也是基于目前的互联网OSI计算机网络体系结构,目前物联网面临的协议层威胁主要为,物理层、数据链路层、网络层、传输层
- 物理层是指承载着感知层设备的物理载体(芯片、手机等)
- 感知层对物理世界只能够的各类物理量、音频、视频等数据进行采集、感知和处理(温度计的温度传感器)
- 网络层又称传输层,包括接入网和传输网两种。主要解决在感知层传输的数据传输问题,负责信息的传递、路由和控制
- 应用层利用感知层的信息,并经过处理和分析后,为用户提供特别的服务。主要解决的是信息处理与用户交互的问题
层级结构 | 安全需求 | 存在攻击 | 主要防御技术 |
---|---|---|---|
物理层 | 物理设备的可靠性 固件系统的安全 内存安全 |
固件升级攻击 内存溢出攻击 侧信道攻击 物理干扰破坏 |
安全启动 可信计算 保险丝熔断 暴力拆解情况下的自动销毁 |
感知层 | 物理安全防护 认证性 机密性 保证数据的完整性 |
窃听攻击 篡改攻击 伪造攻击 禁用攻击 中继攻击 睡眠攻击 |
访问控制 身份认证 轻量级密码 |
网络层 | 机密性 数据的完整性 可用性 隐私保护 |
窃听攻击 篡改攻击 伪造攻击 禁用攻击 中继攻击 睡眠攻击 |
访问控制 加密签名技术 终端生命周期监控 防火墙 安全路由协议 |
应用层 | 认证 授权 审计 隐私安全和应用部署安全 |
身份冒充攻击 认证拥塞攻 恶意代码攻击 恶意程序 |
身份和访问控制 漏洞扫描 入侵监测系统 |
例如下边介绍一下各协议层易受到的攻击手段:
- 物理层
- 拥塞攻击
通过发出无线干扰射频信号,实现破坏无线通信的目的,分为全频段拥塞干扰和瞄准式拥塞干扰。传感器网络可采用诸如跳频、调节节点占空比等技术防范拥塞攻击
- 物理破坏
攻击者俘获一些节点,对它进行物理上的分析和修改,并利用其干扰网络的正常功能,甚至可以通过分析其内部敏感信息和上层协议机制,破坏网络安全性。攻击者直接停止俘获节点的工作,造成网络拓扑结构变化,如果是骨干节点被俘获,将造成网络瘫痪。对抗物理破坏可在节点设计时采用抗篡改硬件,同时增加物理损害感知机制
- 数据链路层
- 碰撞攻击
攻击者通过公开算法伪造hash值来骗过电脑的密码验证,进入系统进行危险操作。我们可以采取冲突检测的方法确定恶意引发冲突,同时设置更加有效的退避算法,也可以采用纠错编码的方法在通信数据包中增加冗余信息来纠正数据包中的错误位
- 耗尽攻击
攻击者利用协议漏洞,通过持续通信的方式使节点能量资源耗尽,例如当有些算法试图重传分组时,攻击者将不断干扰其发送,直至节点耗尽资源。我们在协议实现的时候,制定一些执行策略,对过度频繁的请求不予理睬,或者对同一个数据包的重传数据进行限制,以免恶意节点无休止干扰导致能源耗尽
- 非公平竞争
非公平竞争指恶意节点滥用高优先级的报文占据信道,使其他节点在通信过程中处于劣势,从而导致报文传送的不公平,进而减低系统性能,但这种攻击方式需要完全了解传感器网络的MAC协议机制。我们可以采用短小帧格式的方法,这样就可以降低单个节点占用信道的时间;另一种方法采用竞争或者时分多址(TDMA)的方式实现数据传输
- 网络层
- 虚假路由信息
通过欺骗、篡改或重发路由信息,攻击者可以创建路由循环,引起或抵制网络传输,延长或缩短源路径,形成虚假错误消息,分割网络,增加端到端的延迟等
- 选择性转发攻击
恶意性节点可以概率性的转发或者丢弃特定消息,使数据包不能到达目的地,导致网络陷入混乱状态。当攻击者确定自身在数据流传输路径上的时候,该攻击通常是最有效的。该种攻击的一个简单做法是恶意节点拒绝转发经由它的任何数据包,类似一个黑洞(即所谓“黑洞攻击”)
- 槽洞Sinkhole攻击
攻击者的目标是尽可能地引诱一个区域中的流量通过一个恶意节点(或已遭受入侵的节点),进而制造一个以恶意节点为中心的“接受洞”,一旦数据都经过该恶意节点,节点就可以对正常数据进行篡改,并能够引发很多其他类型的攻击。因此,无线传感器网络对sinkhole攻击特别敏感
- 女巫Sybil攻击
能够明显地降低路由方案对于诸如分布式存储、分散和多路径路由,拓扑结构保持的容错能力。对于基于位置信息的路由算法很有威胁
- 虫洞Wormholes攻击
恶意节点通过声明低延迟链路骗取网络的部分消息并开凿隧道,以一种不同的方式来重传收到的消息,Wormholes攻击可以引发其他类似于Sinkhole攻击等,也可能与选择性地转发或者Sybil攻击结合起来
- 传输层
- 洪泛攻击
攻击者利用TCP传输的三次握手机制,在攻击端利用伪造的IP地址向被攻击端发送大批请求,使被攻击端得不到响应,用来消耗服务器资源。我们可以在服务器端引入入侵机制,基站限制这些洪泛报文的发送
- 失步攻击
攻击者向节点发送重放的虚假信息,导致节点请求重传丢失的数据帧。利用这种方式,攻击者能够削弱甚至完全削夺节点进行数据交换的能力,并浪费能量,缩短节点的生命周期
从以上攻击方式可见物联网中常见的攻击类型有,保密与认证攻击、拒绝服务攻击、针对完整性的隐秘攻击等主要的攻击手段。目前物联网工程的安全性我们主要从数据机密性、数据完整性、数据新鲜性、可用性、鲁棒性和访问控制六方面考虑
4.1 物理层关键技术
例如,物理层是构建物联网架构的骨架,其中关键技术包括:
- 芯片技术(英特尔公司的Quark系列处理器等)
- 可信计算技术(技术目标是讲常规的功能操作与安全敏感的应用程序或服务分割隔离,从而减少整个系统的攻击面。可信计算包括5个关键技术概念,他们是完整可信系统所必须的,这个系统将遵从TCG规范:认证密钥、安全输入输出、内存屏蔽/受保护执行、封装存储、远程证明)
- 固件升级技术(由于当前大多数设备都将固件存储在Flash中,因此升级固件实际上是使用新的固件程序重写Flash)
4.2 感知层关键技术
感知层是为了实现设备对物理世界的感知,其中关键技术包括:
- 传感器技术:能感受被测量并按照一定的规律转换成可用输出信号的器件或装置,传感器技术工作流程如下:
- RFID技术:自动识别技术的一种,通过无线射频方式进行非接触双向数据通信,利用无线射频方式对记录媒体(电子标签或射频卡)进行读写,从而达到识别目标和数据交换的目的,其被认为是21世纪最具发展潜力的信息技术之一。一般由信号发射机即电子标签、信号接收机即读写器、发射接收天线这三部分组成,如下所示:
- 条码技术:条形码是由一组规则的条空及对应字符组成的符号,用于表示一定的信息。条形码技术的核心内容是通过利用光电扫描设备识读这些条形码符号来实现机器的自动识别,并快速、准确地把数据录入计算机进行数据处理,从而达到自动管理的目的
4.3 网络层关键技术
- 无线传感器网络:由多个传感器节点通过自组织方式构成的分布式传感网络,这些传感器节点一般位置相邻的或者属于同一检测区域。一般由多个不同功能的节点组成,例如传感器节点,汇聚节点和管理节点
- 无线网络技术:在较小范围内,通过除了网络连接线之外的某种通信媒介相互连接,实现数个设备相互通信的网络,比如蓝牙
- 云计算技术:云计算是分布式计算的一种,指的是通过网络“云”将巨大的数据计算处理程序分解成无数个小程序,然后,通过多部服务器组成的系统进行处理和分析这些小程序得到结果并返回给用户
4.4 应用层关键技术
- 无人驾驶感知系统
- 智能火灾检测系统
- 智能交通管理系统
4.5 物联网架构层
IoT架构基础设施可分为三大类
- 嵌入式设备
- 软件和应用程序
- 无线电通信
物联网架构以其最简单的形式包括三个组件:
- 移动
- 云
- 设备
组件之间的通信取决于IoT产品的用途和/或类型。以下是一些示例,这些示例将使组件之间如何以及为何不相互交谈变得清晰。
- 设备只能移动通话-例如。基于BLE的设备
- 设备仅与IoT网关对话–例如。ZigBee,无线HART设备等
- 移动仅与云对话–如果用户没有对设备的邻近访问权,并且只能通过云进行控制。
功能架构:
可以进一步扩展功能架构,以定义通过互联网与云和移动/ Web界面通信的传感器网络。在传统的基于TCP / IP的技术无法实现的情况下,传感器可能拥有自己的网络,或者在无法实现传统网络并且无线电通信提供更高效率和更多意义的情况下,具有基于无线电的网络。在后一种情况下,需要有一个网关(我们的IoT网关/集线器/路由器)充当无线电通信与传统TCP / IP通信之间的接口。从现在开始,我将把TCP / IP称为传统的网络/通信
我们还可以拥有地理位置分散的传感器网络,这些网络可以通过IoT网关通过传统网络相互通信/连接,如下所示:
物联网有两种分层方法:
- 第一种:感知层、网络层、应用层
- 第二种:感知层、网络层、平台层、应用层
从分层的角度看待物联网技术,可以将构成物联网核心的基本架构分为三层:
- 感知层(传感层):由硬件传感器和传感器网络组成;主要是指前端数据的获取,通过传感器采集某些数据(声、光、电等),比如北斗获得经纬度,还有环境监测温湿度传感器等
- 网络层:它由通信机制组成,该机制允许传感层与管理层进行通信,例如– Wifi,3G,LTE,以太网等;将感知层采集的数据进行回传,基于不同特点采用不同的通信协议技术
- 应用层:这是最顶层,负责从原始数据中弄清楚意义,并为用户提供可呈现的精美视图。它包括云,存储,应用等;把前端感知层的得到的信息进行处理,并实现具体的应用。可以理解为物联网的数据平台和业务平台
通信的上行和下行(上下行是通信的两个方向):
- 上行:把设备端传感器的数据传到云上
- 下行:通过手机或电脑下发一些控制指令到设备端
4.5.1 感知层(感知信息)
承担感知信息作用的传感器,一直是工业领域和信息技术领域发展的重点,传感器不仅感知信号、标识物体,还具有处理控制功能
感知层是整个物联网系统的数据基础。它利用传感器获得被测量(物理量、化学量或生物量)的模拟信号,并负责把模拟信号量转换成数字,也包括从电子设备(如串口设备)中采集到的直接的数字,最终由传输层转发到应用层
4.5.2 感知层划分
- 信息采集与控制
-
信息采集与控制的主要功能:把模拟的信号,转换成单片机MCU能够处理的数字信息。
-
各种传感器和执行器:温度传感器、湿度传感器、压力传感器、液压传感器、三轴传感器、GPS定位、摄像头、电机
PS:传感器主要是读取数据以及控制器主要是写入数据
- 物联网无线终端
物联网无线终端由MCU和无线收发器组成,MCU读取传感器的数字信息,并把读取到数字信息通过无线信号传送给物联网的网络层设备。
涉及到的无线技术有:
- LoRa协议、sigfox、2G GRPS、4G IoT、5G eMTC
- RFID、蓝牙、ZigeBee、WiFi
伴随着物联网产业的快速发展, 对新型传感器、 芯片的需求逐渐增大, 因此对其尺寸和功耗提出了更高的要求。
而MCU(Micro Control Unit , 微控制单元) 和MEMS(Micro-Electro-Mechanical System , 微机电系统) 由于其高性能、 低功耗和高集成度的优势, 得到了全面发展, 成为感知层发展最重要的两项技术。
4.5.3 网络层(传输信息)
网络层也可以叫做传输层,物联网的传输层主要负责传递和处理感知层获取的信息
分为:有线传输和无线传输两大类, 其中无线传输是物联网的主要应用
无线传输技术按传输距离可划分为两类:
- 低功耗、短距离、局域网通信技术(几米-几百米):LP-LAN(low-power Local-Area Network)
- 包括Zigbee、 WiFi、 蓝牙等为代表的短距离传输技术。
- 低功耗、长距离、广域网通信技术(几千米到几十千米):LP-WAN(low-power Wide-Area Network)
LPWAN又可分为两类:
- 一类是工作于未授权免费频谱:如LoRa、 Sigfox等技术;
- 一类是工作于授权收费频谱下: 3GPP支持的2/3/4/5G蜂窝通信技术, 比如eMTC(enhanced machinetype of communication , 增强机器类通信) 、 NB-IoT(Narrow Band Internet of Things , 窄带物联网)
下面是这两类无线传输技术的对比图:
有线:主要是IP/以太网数据传输网,有以太网交换机和路由器组成,物理接口包括SFP光口和RJ45电口、Modulbus等
4.5.4 平台层
平台层在整个物联网体系架构中起着承上启下的关键作用,它不仅实现了底层终端设备的“管、控、营”一体化,为上层提供应用开发和统一接口,构建了设备和业务的端到端通道,同时,还提供了业务融合以及数据价值孵化的土壤,为提升产业整体价值奠定了基础
从历史形成成因来看,平台层是由于社会分工分行形成的产物。有了平台层的存在,企业就可以专心于构建自己的应用或者组建自己的产品网络,而不费心与如何让设备联网。
各大公司都构建了自己的物联网平台,比如:
- 中国移动的OneNet
- 华为的OceanConnect
- 腾讯的QQ物联
- 阿里云物联网套件
- 百度IoT Hub
- 京东微联
- 微软的Azure
- 亚马逊的AWS IoT
在物联网中,平台层也有类似的分层关系,按照逻辑关系由分为四部分:
- 连接管理平台CMP(Connectivity Management Platform)
- 设备管理平台DMP(Device Management Platform)
- 应用使能平台AEP(Application Enablement Platform)
- 业务分析平台BAP(Business Analytics Platform)
四个平台的组成关系如下图所示:
4.5.4.1 连接管理平台CMP
连接管理平台通常指基于电信运营商网络(蜂窝,LTE等)提供可连接性管理、优化以及终端管理,维护等方面的功能的平台。其功能通常包括:
- 号码/IP地址/Mac资源管理
- SIM卡管控
- 连接资费管理
- 套餐管理
- 网络资源用量管理
- 账单管理
- 故障管理等
物联网连接具备M2M连接数大、单个物品连接ARPU值低(人类连接客户ARPU值的3%-5%)的特点,直接结果就是多数运营商将放弃自建CMP平台,转与专门化的CMP平台供应商合作。
典型的连接管理平台包括思科的Jasper平台、爱立信的DCP、沃达丰的GDSP,Telit的M2M平台、PTC的Thingworx和Axeda。
目前全球化的CMP主要有三家:Jasper平台、爱立信DCP平台和沃达丰GDSP平台,其中Jasper最大,与全球超过100家运营商、3500家企业客户展开合作,国内的中国联通也通过宜通世纪与Jasper平台进行合作。
在国内三大运营商中,中国移动选择自研One NET连接管理平台,中国联通与Jasper战略合作,选择其Control平台提供物联网连接服务;中国电信也先后自研及与爱立信合作建立两套连接管理平台。
需要注意的是,在国内几乎没有纯粹的CMP平台,这个CMP平台是在物联网早期时运营商需要对物联卡进行大量管理时才出现的。无论是中国联通的Jasper还是中国移动的Onenet,本质上至少一个CMP+AEP平台。
故一般CMP平台的提供商多半都属于运营商,其它的的IOT平台更多是CMP平台的使用方(如果牵涉到物联卡,比如2G/3G/4G,eMTC和NB-IOT)
4.5.4.2 设备管理平台DMP
物联网设备管理平台DMP往往集成在端到端的全套设备管理解决方案中,进行整体报价收费。DMP功能包括用户管理以及物联网设备管理,例如配置、重启、关闭、恢复出厂、升级/回退等,设备现场产生的数据的查询,以及基于现场数据的报警功能,设备生命周期管理等。
典型的DMP平台包括:
- BOSCHIoTSuite、IBMWatson、DiGi、百度云物接入IoTHub、三一重工根云、GEPredix等。
以百度云为例,百度云物接入IoTHub是建立在IaaS上的PaaS平台,提供全托管的云服务,帮助建立设备与云端之间的双向连接,支撑海量设备的数据收集、监控、故障预测等各种物联网场景
一些垂直领域巨头本身就是设备提供商,业务外延至平台层面,通常能够提供整体解决方案,部分能够集成CRM、ERP、MES等信息系统
大部分DMP平台提供商本身也是通信模组、通信设备提供商,比如DiGi、Sierra Wireless、Bosch等,本身拥有连接设备、通信模组、网关等产品和设备管理平台,因此能帮助企业实现设备管理整套解决方案。一般DMP部署在整套设备管理解决方案中,整体报价收费;也有少量单独提供设备管理云端服务的厂商,每台设备每个月收取一定运营管理费用,比如早期的Ablecloud(按接入设备数量收费)
4.5.4.3 应用使能平台AEP
应用使能平台AEP是提供快速开发部署物联网应用服务的PaaS平台。它为开发者提供了大量的中间件、开发工具、API接口、应用服务器、业务逻辑引擎等,此外一般都还需要提供相关硬件(比如计算、存储、网络接入环境等)。它的存在,极大地降低了软件开发复杂度和开发门槛。
典型的AEP平台提供商包括PTCThing worx,艾拉物联,Ablecloud,机智云,Comulo city,AWS IoT,Watson IoT Platform等。
4.5.4.4 业务分析平台BAP
业务分析平台BAP主要通过大数据分析和机器学习等方法,对数据进行深度解析,以图表、数据报告等方式进行可视化展示,并应用于垂直行业。
由于这个平台涉及到大量的数据和业务场景,故绝大部分都是由企业把控,另外由于人工智能技术及数据感知层搭建的进度限制,目前BAP平台发展仍未成熟。
4.5.5 应用层(处理信息)
丰富的应用是物联网的最终目标,未来基于政府、企业、消费者三类群体将衍生出多样化物联网应用,创造巨大社会价值。根据企业业务需要,在平台层之上建立相关的物联网应用,例如: 城市交通情况的分析与预测;城市资产状态监控与分析;环境状态监控、分析与预警(例如:风力、雨量、滑坡);健康状况监测与医疗方案建议等等。
物联网的十大应用产业:
- 智能交通
- 智能家居
- 智慧建筑
- 智能安防
- 智能零售
- 智慧能源
- 智慧农业
- 智慧医疗
- 智能制造
- 智慧物流
0x05 物联网安全挑战
物联网设备不断暴露于各类型不断发展的物联网安全威胁中。最常见的类别包括:
- 数据窃取:如果物联网黑客能够访问易受攻击的设备,则就可以窃取敏感和潜在的机密数据,并将其在线出售给感兴趣的各方
- 设备篡改:举例来说,业务赋能物联网设备(包括可通过篡改固件来修改系统行为的智能表计)可能会少报消耗量
- 拒绝服务 (DoS) 攻击:黑客能够将大量物联网设备吸收到所谓的僵尸网络中以进行协同攻击,包括关闭网站
- 未经授权的访问:如果安全性差,则联网的监控摄像头、门锁以及带有麦克风和其他传感器的物联网设备可能会被劫持
- 勒索软件攻击:黑客可以锁定具有安全漏洞的物联网设备以中断相关公司的业务,直至收到赎金
- 传感器欺骗:物联网设备可能会收到虚假信息,导致其出现故障。传感器欺骗涉及从复杂的射频信号干扰到简单的用硬纸板切口愚弄摄像头的任何事项
IoT受到的威胁大概划分如下:
- 远程访问
- 手机终端
- 静态KEY
- 固件分析
- 硬件接口
- 暴力破解
- 云端攻击
- 物理攻击
- 不安全通信
- 软件设计缺陷
- 物理接触访问
- 通信信息劫持伪造
5.1 物联网安全 VS 传统互联网安全
物联网体系架构:
- 应用层
- 网络层
- 感知层
- 物理层
传统互联网五层协议:
- 应用层
- 运输层
- 网络层
- 数据链路层
- 物理层
物联网安全 | 传统互联网安全 | |
---|---|---|
互联要求 | 复杂,整体 | 分层 |
加密方式 | 轻量级加密 | 标准库加密 |
认证方式 | 单层或多层 | 分层 |
数据处理能力 | 要求高 | 相对低 |
安全性需求 | 整体安全 | 分层安全 |
备注:
- 传统互联网:IPv4地址不足,各层安全性问题
- 物联网安全:终端暴露在公共场合;网络多而杂;数据量大;运算能力有限;安全要求高
0x06 物联网攻击分类
6.1 硬件渗透测试
硬件渗透测试侧重于解决方案的电子组件(非侵入式和侵入式攻击)。
使用的技术包括:
- 从所研究的硬件设备中提取元素的逆向工程
- 内存转储
- 密码分析
6.2 固件渗透测试
固件的渗透测试侧重于嵌入在对象中的软件,包括一定数量的技术:
- 检测打开和保护不良的通信端口
- 缓冲区溢出
- 破解密码
- 逆向工程
- 密码分析
- 固件修改
- 调试
- 检测配置接口或后门
6.3 通信协议渗透测试
通信协议的渗透测试侧重于实现对象通信和向外部发送数据的技术(RFID、NFC、ZigBee、蓝牙、WiFi、SigFox、LoRa 等)。
测试基于以下技术:
- 捕获和分析多协议无线电信号(嗅探)
- 密码分析
- 被动监控交易所
- 交易所的拦截和腐败
- 拒绝服务
6.4 蓝牙攻击
低功耗蓝牙 (BLE) 是一种特别使用的通信协议,因为它可以在设备之间发送少量数据,同时节省电池。
与 BLE 相关的安全问题通常与协议的错误实现有关。有一些方法可以对数据交换进行加密,加强协议的安全性,这些方法需要从连接对象的设计阶段开始研究。
0x07 物联网安全渗透测试的好处
识别物联网弱点并进行加固有助于如下:
- 加强设备安全
- 防止未经授权的使用
- 避免提升特权
- 降低妥协的风险
- 改善用户和数据隐私
- 加强加密以避免中间人攻击
0x08 面对现实问题:学习物联网安全并不容易
将面临许多挑战,例如从利用工具但没有按预期执行攻击反而让设备变砖等操作,应有尽有。甚至需要几个月的时间才能弄清楚不同的硬件、电子元器件、协议、无线电等方式以及应该在哪里投入宝贵的时间和精力
由此大家也看到了,物联网不是一个单一的东西,相反,它是嵌入式设备、云网络应用和移动应用程序、后端应用程序、固件和无线电通信协议的组合。这些组件中的每一个都可能需要数年才能掌握,甚至更久的时间。但是,这并不意味着我们要一次要花费几个月、甚至几年的时间来熟悉每个组件,如果真是这种情况,我们可能需要数年时间才能成为一名了解 IoT 生态系统中所有组件的 IoT 渗透测试工程师
那么如何快速知道,在哪里投入时间来学习物联网渗透测试本身就是一件不容易的事情,在 ARM 二进制逆向方面知道多少,以及应该花多少时间来分析 PCB等诸如此类的事情吗?
如何确定使用哪些设备或平台来学习物联网安全?是否认为在这里和其它地方阅读博客文章和文章或仅观看会议视频来学习是最好的选择。当然,这些博客、论坛、技术等为我所有,为我提供了知识,但是为什么要重复去做没有意义的事情呢?在自身不知道在做什么并且没有系统化学习方法的情况下,一个接一个学习知识,然后陷入困境?
本系列专栏,属于小白入门的,因为我也是小白,期望跟着大家一起成长,你们不需要弄清楚每一个小细节,因为我已经为你做了所有需要做的这些,还有更多,只需跟着博客文章走,即可
我们中的很多人都对我们现在所处的生活、我们正在做的事情以及我们正在做的工作感到满意。如果你是这样的,我不怪你,因我和你一样,但我很快就意识到我已经停止进步了。我在信息安全行业的大多数玩的好的朋友都获得了更好工作、岗位、职业发展,并且能够实现他们的职业目标,但不是我。
然后我决定,与其感到舒服或处在一个舒适的环境里,不如尝试一些挑战我不会的东西,毕竟这就是我们所有人的成长方式,无论是专业的还是普通的。我决定开始学习物联网的基础知识,将其作为安全行业中最新兴、最令人兴奋(甚至是现在)的领域之一
我面临的第一个挑战是没有足够的可用资源来学习物联网安全,大家从上面的介绍需要的工具中就看出需要购买的工具,就要消耗掉不菲的费用,光是好点的逻辑分析仪就价值数万元甚至数万美金不等(后面我们尽量减少一定开支来做学习,避免产生过高的费用导致学习进展不下去),却网上几乎没有任何关于物联网安全比较系列的教程,只有几次会议演讲和技术文章等都比较零散,不能系统化的学习。然后有相当多的文章和博客文章,但是当我尝试时,有些东西或其他东西都不起作用,我很难找到自己的方法。
由此,我想到来一条路,希望有一个从基础开始教授物联网安全的技术博客,让我为现实世界的物联网安全研究做好准备,因为我正在从事的领域是车联网安全,物联网安全是我必须要去学习掌握的技能。
所以,我尽我所能… …
以攻击者视角将物联网,按照攻击面分解各应用组件,可分为生态系统、设备内存、设备物理接口、设备Web 界面、 设备固件、网络服务、管理界面、本地数据存储、云Web 界面、第三方后端APIs、更新机制、移动应用程序、供应商后端 APD、生态系统通信、网络流量、认证与授权、隐私和硬件
事情到这里,其实还要走很长一段路,但重点是我做出了决定,并朝着目标迈出了一步。正如,你所见的那样,学的东西太多了,压根段时间掌握不了,博主同学我也没啥太多的技巧,业余时间碎片化学习,期望能对同学你有帮助,您不必重新造轮子,你不需要弄清楚每一个小细节。我已经为你做了所有这些,还有更多,当然我也会有错的时候,欢迎大家指出一起进步
假如,你跟博主同学一样,今天迈出了自己的一步,迈出了让自己开始的第一步呢? 从那里开始,它只是动力,这种势头往往会让我们走很长的路。这只是第一步,仿佛一座山,它会让我们在头脑中创造了所有无限可能的思维过程
0x09 相关技术
9.1 OT
OT(Operation Technology 操作技术),是为工厂自动化控制系统提供技术支持,确保生产正常进行的专业技术
随着工业4.0的来临,ICT技术被引入到OT中,IT、OT、CT将紧密的融合(智能制造)
9.2 PLC
可编程逻辑控制器(Programmable Logic Controller,PLC)
0x10 IoT攻击面
有效的物联网设备的安全测试,需要对于给定设备进行综合评估并发现所有的攻击面。评估IoT攻击面的技术相比于评估Web应用程序、移动应用程序并没有改变很多,多数仍是以Web攻击面为主,比如市面上常见的网关+路由器的组合
细分IoT的组成:
- 云端/Web
- 移动应用程序
- 执行器
- 传感器
- 网关
常见IoT架构:
IoT 安全相当于一个安全的集合,要学的是真的多,看着就脑壳痛… …,需要很多专业的设备进行研究和测试使用,结果还没入门就劝退很多想入门的同学,包括我自己,哈哈… …
- Web应用程序:
- SQL注入
- XSS
- 本地/运程文件包舍
- 使用不安全组件
- 信息泄露
- 未授权访问
- 认证缺陷
- 管理配件错误
- 其它安全问题
- 手机终端:
- 操作系统
- 远程溢出漏洞
- 内核提权
- 沙箱绕过
- 远程代码执行
- 信息泄露
- 其它安全问题
- APP
- 信息泄露
- 远程代码执行
- 弱口令
- 明文通信
- 硬编码,密码泄漏
- APP无加固
- 其它安全问题
- 感知层设备:
- 操作系统
- 命令行接口
- 权限提升
- 暴力破解
- 缓冲区溢出
- 管理配置
- 信息泄露
- 其它安全问题
- 固件:
- 固件提取
- 加密密钥
- 固件降级
- 敏感信息泄露
- 固件更新机制
- 更新未校检
- 明文更新
- 更新未签名
- 其它安全问题
- 数据通信:
- 更新替换
- 缓冲区溢出
- 敏感信息泄露
- 加密密钥泄露
- DDOS/DOS攻击
- 中间人劫特
- 数据替换
- HTTP注入
- 钓鱼攻击
- 无线电攻击
- 无线电信号劫持
- 无线电信号篡改
- 无线电重放攻击
- 其它安全问题
遵循以下步骤可以更快的发现IoT的攻击面:
- 首先了解整个物联网设备架构,通过各种途径或在厂商文档信息中发现更多的相关细节
- 对指定设备的每个架构组件建立一个体系结构图,如果是两个“组件”之间的通信,用导向线画出并指定正在使用的通信协议等详细信息,如果应用程序是使用API与云端发送和接收数据,那就在体系结构图中标记它并记录使用的是哪个API
- 当完整的体系结构图准备好时就开始像攻击者一样去思考,如果你必须攻击某个特定“组件”的话你需要确定使用什么样的技术并提取哪些辅助攻击的相关信息,在表格中列出IoT架构中的组件和所需做的测试
下表是IoT架构中一个“组件”的攻击面分析:
组件 | 攻击面 | 案例 | 预期输出/数据获取 |
---|---|---|---|
IoT网关 | 基于硬件的攻击向量 | 1. 使用串口进行通信 2. 固件导出技术 |
1. 调试日志,shelli访问权限 2. 访问固件,逆向分析固件漏洞 |
云网络通信 | 1. 嗅探通信数据 2. 修改和重放数据 |
1. 理解通信数据,检查是否正在发送数据 2. 确定云端是否检查消息的真实性和合法 |
上述分析步骤完成,就可以执行实际的测试攻击,既然已经有了明确的想法接下来看看可以使用什么样的攻击技术
1.IoT网关
- 基于硬件的攻击向量:
- 串口通信、固件导出等,获得访问固件的权限并提取存储在其中的敏感信息
- 嗅探发送到云端的通信数据
- 重放和伪造通信数据并发送到云端
2.设备
- 基于硬件的攻击向量:
- 串口通信、固件导出等,获得访问固件的权限并提取存储在其中的敏感信息
- 设备和网关之间的无线电通信分析攻击如:Zigbee, zWave, 6LoWPAN
- BLE(蓝牙低功耗技术)攻击
3.移动应用程序
- 嗅探发送和接收的数据
- 重放和伪造通信数据并发送到云端或设备
- 移动应用程序逆向分析及敏感数据提取
4.云端/WEB程序
- 常见Web漏洞
10.1 简单案例分析
下面内容记录了对某款物联网设备的攻击面及安全分析,包括网关、设备、云端、移动客户端之间的通信安全,云端API接口逻辑、网关与设备绑定和解绑等关键操作的安全情况
产品型号 | 联合报警网关 |
---|---|
设备固件版本 | V1.4.1 |
移动客户端版本 | V2.5.6 |
10.1.1 通信安全
网关-云端-移动客户端:
在套用上面的攻击面分析模型后可以发现待测设备的机密性得到了良好的保护。联合报