编写:梦幻的彼岸
更新日期:2024年5月14日
物联网安全简介
物联网安全是指在物联网(Internet of Things,IoT)环境中保护连接的设备、系统和网络免受意外或恶意威胁的技术、策略和实践的集合。物联网安全的目标是确保物联网中的硬件、软件、系统数据以及传输的数据得到妥善保护,防止遭受破坏、篡改或未经授权的访问,同时保持服务的连续性和可靠性。
随着物联网技术的发展,越来越多的日常物品,如家用电器、汽车、工业设备等,通过互联网相互连接,形成了一个庞大的网络。这种高度的互连性虽然带来了便利和效率,但也极大地扩展了潜在的攻击面,使得物联网成为了网络安全的新前线。
物联网安全现状
在过去十年中,物联网技术经历了惊人的发展。专门从事物联网研究的洞察公司 IoT Analytics 报告称,2020 年,智能家居设备、联网汽车和网络工业设备等物联网连接首次超过电脑和笔记本电脑等传统联网设备,占 217 亿活跃联网设备的 54%。该公司预计,到 2025 年,物联网连接将超过 300 亿个,相当于平均每人拥有约四个物联网设备。
远程工作的兴起使物联网安全成为企业更迫切关注的问题。由于人们现在依赖家庭网络和个人设备来开展业务活动,许多数字攻击者正在利用个人终端层面松懈的安全措施来实施攻击。物联网协议、政策和程序的不足会给企业带来严重的风险,因为任何智能设备都可能成为网络犯罪分子访问网络的入口。一旦攻击者通过设备获得访问权,他们就可以在整个组织内横向移动,访问高价值资产或进行恶意活动,如窃取数据、IP 或敏感信息。
物联网安全面临的具体挑战包括但不限于:
用户和开发人员并不认为物联网设备是网络攻击者的目标。开发人员通常会花钱请道德黑客对智能手机和电脑设备进行测试,以发现漏洞和其他问题。对这些设备进行测试可以确保它们受到全面保护,免受攻击者攻击,但是,如果物联网设备没有配备同样级别的保护措施,整个组织就会面临网络攻击的风险。
即使开发人员高度重视物联网设备的网络安全,用户互动和教育也是一个巨大的挑战。许多物联网设备都有默认的用户名和密码,通常可以更改。然而,许多用户为了方便,宁愿使用默认凭据,错误地认为他们的设备不会受到网络攻击。
此外,消费者没有意识到及时更新设备最新软件或固件的重要性。更新并非智能手机和电脑的专利,不应无限期推迟。开发人员精心制作这些更新是为了及时发现软件漏洞和管理漏洞,因此在所有设备上安装最新版本的固件将有助于您的组织保持安全。
企业有必要制定全面的网络安全战略,在终端和网络层面上保护所有设备免受各种网络攻击。
例如常见的拒绝服务(DoS)攻击中,网络犯罪分子会控制设备,并利用它向服务器发送大量网络流量,阻止合法用户开展正常活动。分布式拒绝服务(DDoS)攻击与此类似,但网络犯罪分子会利用受感染设备(Botnet)组成的分布式网络,用虚假流量淹没网站,使服务器不堪重负。
固件是操作每个设备硬件的软件。智能手机和电脑的操作系统通常独立于固件运行,但在大多数 IoD 设备上,固件就是操作系统,没有安全保护系统。
许多物联网设备的用户名和密码往往比较简单或通用,网络攻击者很容易破译。攻击者是这方面的专家,他们了解流行设备中常见的凭证漏洞。
IoD 设备默认情况下通常不会加密数据。这使它们特别容易受到路径上攻击,即攻击者 “坐在 ”相互信任的两个站点或双方中间。然后,攻击者截获并操纵正在交换的数据。要确保数据在设备间传输时的加密和完整性,防止中途拦截或篡改。物联网设备收集和传输大量数据,包括个人和敏感信息,需要保护这些数据免遭泄露。
设备制造商、软件提供商等供应链上的任一环节出现安全漏洞,都可能影响整个物联网生态的安全。
物联网设备可能暴露在公开场合,易于被物理接触和操纵。
易受影响的方向
网络攻击通过网络扫描、远程代码执行和命令注入等手段利用未受保护的物联网设备。医疗保健行业中,用于医疗成像系统、患者监控系统和医疗设备网关的互联网连接设备引发的物联网安全问题最多。另一个高风险行业包括安全摄像机和打印机等常用物联网设备。消费电子产品、IP 电话和能源管理设备的风险也较高。
许多行业在采用物联网时都面临着更大的风险,可能会受到物联网设备漏洞带来的网络威胁。由于数据的敏感性(如医疗记录、自动驾驶汽车或知识产权),一些行业比其他行业更容易受到攻击。
这些行业包括拥有复杂网络的大型组织、依赖工业运行技术(OT)的数字化工厂和工厂,以及使用医疗物联网(如联网扫描仪、监控工具、可穿戴设备和其他互联网连接系统)进行病人护理的医疗机构。
防御思路
在物联网设备和软件中集成安全功能,将大大有助于保护敏感数据并防止这些设备上网时被利用。
与物联网安全专家合作,实现有效的风险管理
例如基于本地(安装的)物联网设备漏洞库,该库针对最新威胁和漏洞进行定期扩展和更新。检测服务与 IPS 和网络访问控制一起,是有效风险管理的 IT 安全战略不可或缺的组成部分。
如定期打补丁和更新,确保固件和软件更新的安全
强制使用强密码以及关注 Wi-Fi 安全外,还需要考虑广泛的保护措施如安装防御设备如:IPS、IDS。随着物联网和云的融合,也应考虑使用另一层基于云的安全解决方案来确保技术安全,同时为边缘设备增加处理能力。
加密的主要目的是保护存储在计算机系统中或通过互联网或任何其他计算机网络传输的数字数据的机密性。物联网加密是确保多种不同类型物联网设备安全的关键因素。通过对来自物联网设备的数据通信进行加密,企业可以获得内容的保密性、来源的验证、数据的完整性以及对发送者的了解。
加密是保护数据安全的有效方法,但必须谨慎管理加密密钥,以确保数据既受到保护,又能在需要时进行访问。虽然物联网设备本身往往不是目标,但如果没有内置的安全性,它们就会成为传播恶意软件的诱人渠道,从而导致数据泄露。
注意:数据加密不能替代其他信息保护控制措施,如实际访问、认证和授权或网络访问控制。 数据加密是一种降低风险的方法,就像使用安全通信协议和渠道来处理敏感数据一样。
实施强大的身份验证和授权机制,身份验证是工程师在物联网部署中需要考虑的最关键的安全措施之一。IT 管理员可根据该机制的延迟和数据要求,确定哪种物联网身份验证和授权类型(如单向、双向或三向)最适合企业。
由于许多物联网设备的配置能力有限,与其试图确保物联网固件和软件的安全,不如采用提供多层保护(包括终端加密)的安全解决方案来保护您的物联网环境。
如与物联网安全专家合作,实现有效的风险管理并对物联网设备和系统进行风险评估
维护企业网络上联网设备的完整清单对物联网安全也至关重要。寻找一种能在几分钟内发现网络中所有物联网连接的解决方案应该是重中之重。攻击者常利用企业对连接到企业网络的物联网设备监管不力的漏洞。这些设备可能包括从恶意设备到固件过时的被忽视路由器等任何设备。了解与网络连接的每台设备的风险并监控个别设备的行为对防止网络攻击至关重要。
监控网络和设备行为以检测偏差是从物联网设备漏洞中检测恶意软件的最佳实践。 另一种最佳做法是对物联网设备进行网络分段,使其连接到单独的网络,以隔离易受攻击的设备和威胁,防止恶意软件在企业内传播。零信任网络访问提供了额外的安全保障。
物联网设备使用许多不同的协议,从互联网协议和网络协议到蓝牙和其他通信协议。了解设备使用的协议有助于降低安全风险。
依赖 GPS 进行关键操作的行业应监控其连接 GPS 的设备是否存在潜在的安全问题,如伪造或干扰 GPS 信号。
要满足物联网和安全要求,就必须采用集成解决方案,在整个网络基础设施中提供可见性、分段和保护,例如整体安全结构方法。
真实案例
儿童智能手表被曝出存在安全漏洞
新闻地址:https://www.jiangmen.gov.cn/bmpd/jmszwfwsjglj/ztzl/wlxxaq/aqjc/content/post_1892056.html
相关报告:
https://techcrunch.com/2019/12/18/cloud-flaws-millions-child-watch-trackers/
https://blog.rapid7.com/2019/12/11/iot-vuln-disclosure-childrens-gps-smart-watches-r7-2019-57/
https://blog.avast.com/unsecure-child-trackers
路由器漏洞
D-Link DIR-815无线路由器存在多个溢出漏洞,这些漏洞被广泛用于物联网安全教学和实践中,说明了即使较旧的设备也可能成为持续的安全威胁,强调了固件更新和安全审计的必要性。
漏洞分析文章:https://www.cnblogs.com/H4lo/p/10996943.html
Mirai僵尸网络木马事件
2016年,Mirai僵尸网络通过扫描互联网上存在默认凭证或已知漏洞的物联网设备(主要是网络摄像头和路由器),感染了数以十万计的设备,并发起了对DNS服务商Dyn的DDoS攻击,导致Twitter、Netflix、Spotify等知名网站无法访问。这次事件暴露了物联网设备普遍存在的弱密码和未修复漏洞问题。
在线资料:https://www.malwarebytes.com/what-was-the-mirai-botnet
https://www.researchgate.net/figure/Mirai-Botnet-Infection-Methodology_fig1_329316466
Ring VideoDoorbell Pro视频智能门铃
Bitdefender 研究人员在亚马逊的 Ring Video Doorbell Pro IoT 设备中发现了一个问题,该问题允许靠近设备的攻击者截获设备所有者的 Wi-Fi 网络凭证,并可能对家庭网络发起更大规模的攻击。
在线资料:https://www.bitdefender.com/blog/labs/ring-video-doorbell-pro-under-the-scope/
入门思路梳理
- 基础知识学习:
- 计算机网络基础:理解TCP/IP协议栈、网络通信原理和常见的物联网协议如:MQTT、CoAP、BLE。
- 操作系统原理:熟悉不同操作系统的架构,尤其是嵌入式系统,因为很多物联网设备运行在嵌入式Linux或其他定制OS上。
- 编程语言:掌握C/C++和Python,x86汇编、arm汇编等因为这些语言常用于编写设备固件和安全工具。
- 硬件基础:了解微控制器、传感器、通信模块等硬件组件的工作原理。
- 物联网概览:
- 学习物联网的基本架构、通信协议(如MQTT、CoAP、Zigbee等)和标准。
- 了解物联网设备的多样性,包括智能家居、工业物联网(IIoT)、智能城市等领域。
- 安全基础:
- 加密技术:对称加密、非对称加密、哈希函数等基础概念。
- 身份验证与授权机制:OAuth、JWT、TLS/SSL等。
- 安全模型与框架:了解基本的安全模型,比如PDR(Protection-Detection-Response)模型。
- 漏洞挖掘技术:
- 逆向工程:学习使用IDA Pro、Ghidra、Binary Ninja等工具进行固件逆向。
- Fuzzing:掌握模糊测试技术,使用AFL、Sulley、American Fuzzy Lop等工具自动化发现漏洞。
- 渗透测试:了解物联网设备渗透测试的方法,包括网络扫描、服务枚举、漏洞利用等。
- 安全编码:学习如何避免常见的编程错误,如缓冲区溢出、注入攻击等。
- 特定资源与实践:
- 阅读相关书籍:如《揭秘家用路由器0day漏洞挖掘技术》、《ARM汇编与逆向工程》等推荐书籍。
- 案例分析:研究已公布的物联网安全事件和CVE(通用漏洞披露),了解漏洞成因及修复方法。
- 刷CTF题:研究CTF相关题目,从简单的实践研究攻防技能。
- 实验室环境搭建:创建或使用现有的虚拟实验室环境,模拟物联网设备进行实战练习。
- 持续学习与跟进:
- 关注物联网安全的最新动态、研究报告和安全社区(如CVE数据库、物联网安全论坛、行业会议)。
- 学习新兴技术如人工智能、区块链在物联网安全中的应用,以及自适应安全机制等未来发展方向。
常见协议例举:
- MQTT (Message Queuing Telemetry Transport):这是一种轻量级的消息协议,广泛用于物联网设备之间的通信,特别是在资源受限的设备上。了解其发布/订阅模式和安全特性(如使用TLS进行加密)对于评估物联网系统的安全性至关重要。
- CoAP (Constrained Application Protocol):设计用于资源受限的设备,它是基于UDP的协议,类似于HTTP用于Web,但在物联网环境中更为高效。学习CoAP的安全机制,包括DTLS(Datagram Transport Layer Security)支持,对于保护设备间通信很有帮助。
- Zigbee、Z-Wave:这些是专为家庭自动化和低功耗无线网络设计的通信协议。了解它们的网络拓扑、安全框架(如AES加密)以及可能的漏洞,对于智能家居安全研究尤为关键。
- BLE (Bluetooth Low Energy):在物联网设备,特别是可穿戴设备和近场通信中广泛应用。理解BLE的安全模型,包括配对过程、加密和隐私保护机制,有助于评估蓝牙设备的安全性。
- TCP/IP协议栈:虽然基础,但深入理解每一层(物理层、数据链路层、网络层、传输层和应用层)的工作原理,以及相关的安全协议(如IPSec、TLS)对于识别和防御网络层面的攻击至关重要。
- TLS/SSL (Transport Layer Security/Secure Sockets Layer):这些协议用于提供端到端的通信安全,确保数据的机密性和完整性。理解最新的TLS版本及其配置最佳实践对于保障物联网数据传输安全非常重要。
- LPWAN协议:如LoRaWAN、Sigfox,这些协议专为远距离、低功耗广域网设计,适用于智慧城市、农业监控等场景。掌握它们的安全特性和潜在漏洞对于广域物联网安全研究是必要的。
- Modbus、OPC UA:在工业物联网(IIoT)领域中,这些协议常用于设备间的通信和数据交换。学习它们的通信机制和安全配置对于保护关键基础设施安全至关重要。
路由器设备安全研究思路:
1. 目标选择与信息收集
- 选择目标:根据市场占有率、历史漏洞记录或特定功能特点选择路由器型号。
- 收集信息:获取目标路由器的硬件规格、操作系统(通常是基于Linux的固件)、默认配置、开放端口和服务(如SSH、HTTP/HTTPS管理界面)。
2. 获取固件与逆向分析
- 下载固件:从官方网站或第三方固件库获取路由器的最新及历史固件版本。
- 提取文件系统:使用Binwalk、Firmadyne等工具解压固件,提取文件系统。
- 逆向工程:利用IDA Pro、Ghidra等逆向工具分析关键二进制文件,如Web服务器、认证模块、升级脚本等,寻找潜在的漏洞,如缓冲区溢出、逻辑缺陷、权限提升等。
3. 网络服务与接口分析
- 扫描与枚举:使用Nmap、Zmap等工具进行端口扫描,识别开放的服务和版本信息。
- Web界面测试:手动和自动化(如Burp Suite、OWASP ZAP)测试Web管理界面,检查SQL注入、跨站脚本(XSS)、未授权访问等漏洞。
- 服务漏洞利用:针对每个服务(如SSH、FTP、Telnet)测试已知漏洞,使用Exploit DB、CVE数据库作为参考。
4. 漏洞利用与验证
- 构造PoC:一旦发现漏洞,尝试构造概念验证(Proof of Concept)来验证漏洞的有效性,比如利用缓冲区溢出执行shellcode。
- 权限提升:如果初始漏洞仅提供有限访问权限,探索进一步提升至root权限的方法,例如利用SUID/GUID二进制文件或内核漏洞。
5. 报告与负责任的披露
- 编写报告:详细记录漏洞发现过程、影响范围、复现步骤和建议修复方案。
- 负责任的披露:遵循供应商的安全漏洞披露政策,通过官方渠道报告漏洞,给厂商合理时间修复,避免公开前造成不必要的风险。
6. 持续学习与交流
- 关注社区:加入安全论坛、邮件列表(如Full Disclosure、Bugtraq)、GitHub项目,跟踪最新的漏洞发现和研究趋势。
- 技术分享:参与研讨会、撰写博客文章或发表研究成果,与同行交流心得,提高自己在领域内的知名度和影响力。
注意:安全研究是一个需要耐心、细致和创造性思维的过程,不断学习和实践是提高技能的关键。同时,始终要遵守法律和道德规范,确保所有活动都在合法和负责任的框架下进行。
智能汽车安全研究思路:
1. 研究与理解智能汽车架构
- CAN总线:学习Controller Area Network (CAN)总线协议,这是汽车内部通信的核心。
- ECU与网关:了解电子控制单元(ECU)的功能、架构以及如何通过网关与其他系统交互。
- ADAS与自动驾驶系统:研究高级驾驶辅助系统(ADAS)和自动驾驶技术,包括雷达、摄像头、激光雷达(LiDAR)等传感器的工作原理。
2. 信息收集与目标分析
- 车辆选择:根据安全研究目的选择车型,优先考虑具有先进智能功能的车辆。
- 文档与资料:收集公开的技术手册、维修指南、OBD-II接口信息、车辆网络图。
- 软硬件版本:了解车载娱乐系统、远程信息处理单元(TCU)、固件版本等软件和硬件的具体信息。
3. 接入与通信分析
- 物理接入:通过OBD-II接口、诊断端口或拆解车辆获取直接接入。
- 无线接入:研究蓝牙、Wi-Fi、蜂窝网络(如LTE)等无线接口,以及相关的应用程序和云服务。
- 通信协议分析:使用CANoe、Wireshark等工具分析CAN、LIN、MOST、Ethernet等网络通信协议。
4. 漏洞挖掘与测试
- 逆向工程:对ECU固件、车载应用、移动APP进行逆向,寻找漏洞(如缓冲区溢出、逻辑缺陷)。
- Fuzzing:对通信接口进行模糊测试,包括CAN总线消息、蓝牙、无线网络通信。
- 安全功能绕过:尝试绕过安全机制,如远程更新验证、身份认证、加密算法等。
- 物理安全测试:考虑对无钥匙进入、远程启动等物理安全功能的攻击。
5. 漏洞利用与验证
- 构造PoC:开发概念验证代码,验证漏洞的可利用性,注意安全和法律责任。
- 风险评估:评估漏洞对车辆操控、乘客安全、数据隐私的影响程度。
6. 报告与披露
- 编写报告:详细记录发现的漏洞、影响、复现步骤和建议修复措施。
- 负责任披露:遵循汽车制造商的安全漏洞披露政策,通过官方渠道报告,协助修复。
7. 持续学习与合作
- 关注行业动态:跟踪智能汽车安全的最新研究、漏洞报告和行业标准。
- 参加研讨会与培训:参与DEF CON Car Hacking Village、Black Hat等安全会议,提升技能。
- 合作与交流:与汽车制造商、安全研究社群建立联系,促进知识共享和行业进步。
注意:智能汽车安全研究需严格遵守法律法规,确保所有活动合法合规,尊重用户隐私和车辆安全。
嵌入式设备安全研究思路:
1. 选定目标与信息收集
- 目标选择:根据市场占有率、已知漏洞情况或特定兴趣点选择嵌入式设备。
- 基本信息调研:收集设备规格、使用的处理器、操作系统(如RTOS, Linux变种)、网络接口等。
- 公开资料分析:查找设备手册、开发者指南、开源组件信息、社区讨论等公开资料。
2. 固件获取与分析
- 固件下载:从官方或第三方渠道获取设备的固件更新文件。
- 固件解包:使用Binwalk、Firmware Mod Kit等工具解压固件,提取文件系统和二进制文件。
- 逆向工程:对关键组件(如Web服务器、认证模块)进行逆向分析,寻找漏洞(如缓冲区溢出、逻辑缺陷)。
3. 网络与接口扫描
- 端口扫描:使用Nmap、Zmap等工具进行网络扫描,识别开放的服务和端口。
- 服务枚举:对发现的服务进行版本识别,检查是否有已知漏洞。
- Web与API测试:手动或使用自动化工具(如Burp Suite、OWASP ZAP)测试Web界面和API,寻找注入、越权等问题。
4. 物理与侧信道分析
- 物理接口:考虑JTAG、UART、SPI等接口,利用硬件调试工具进行分析。
- 侧信道攻击:研究时序分析、功耗分析等侧信道攻击方法,针对加密模块或认证过程。
5. 漏洞利用与验证
- 构造PoC:基于发现的漏洞,构造概念验证代码,验证漏洞的有效性和危害程度。
- 权限提升:尝试利用低权限漏洞提升至更高级别权限,如root访问。
6. 安全机制绕过
- 认证绕过:分析认证机制,尝试弱口令、默认凭据、逻辑缺陷绕过。
- 加密与签名:研究固件更新、通信加密等过程中的加密算法和签名机制,寻找弱点。
7. 报告与披露
- 撰写报告:详细记录漏洞细节、影响范围、复现步骤和修复建议。
- 负责任披露:遵循CVE编号申请流程,通过厂商的安全响应中心提交漏洞报告。
8. 持续学习与交流
- 跟踪动态:关注嵌入式安全社区、博客、安全报告,保持技术前沿。
- 参加会议:参与看雪安全峰会、极棒、DEF CON、Black Hat、Embedded World等会议,扩大视野,交流经验。
注意:在进行嵌入式设备安全研究时,务必遵守法律法规,确保所有活动都在合法范围内进行,尊重设备制造商的知识产权,同时保护用户隐私和安全。
总结
物联网安全可从如下方面入手
了解: 有了完整的网络可视性,安全解决方案就能对物联网设备进行身份验证和分类,以建立风险档案并将其分配到物联网设备组。
细分: 一旦企业了解了其物联网攻击面,就可以根据物联网设备的风险特征将其划分到策略驱动的群组中。
保护:根据细分的节点与脆弱面进行监控、检查和加固。
注意:安全研究需严格遵守法律法规,确保所有活动合法合规,尊重用户隐私和相关安全。