物联网安全
随着全球数十亿台物联网设备的接入,保护这些设备的安全 对于防止僵尸网络、隐私泄露以及针对关键基础设施的攻击已变得至关重要。
物联网安全挑战
硬件限制
- 计算能力有限
- 内存和存储受限
- 电池消耗严苛
- 无法实现强加密
生命周期长
- 设备多年运行而无更新
- 厂商支持有限
- 打补丁和更新困难
- 硬件迅速过时
规模与多样性
- 数十亿异构设备
- 多种协议和标准
- 去中心化管理
- 可见性有限
常见威胁
僵尸网络
由被攻陷设备组成的网络,用于 DDoS 和垃圾邮件。
- Mirai:2016 年使 Dyn DNS 瘫痪的僵尸网络
- Hajime:感染物联网设备的蠕虫
- Echobot:利用 50 多个物联网漏洞
默认凭据
- 硬编码在固件中的密码
- 厂商后门
- 无法更改凭据
- 公开的默认密码列表
中间人攻击
- 未加密的通信
- 缺乏证书验证
- 不安全的协议(HTTP、Telnet)
- 重放攻击
物联网安全架构
设备层(Device Layer)
- Secure Boot:固件完整性验证
- Hardware Security Module (HSM):安全密钥存储
- Trusted Execution Environment (TEE):隔离处理
- Physically Unclonable Function (PUF):设备唯一标识
通信层(Communication Layer)
- TLS/DTLS:传输加密
- MQTT with TLS:安全消息传递
- CoAP with DTLS:安全的轻量级协议
- LoRaWAN Security:面向 LPWAN 的加密
云/边缘层(Cloud/Edge Layer)
- Device Authentication:双向 TLS、X.509 证书
- Authorization:针对命令和数据的 RBAC
- Data Encryption:传输中和静态中
- Secure Updates:带数字签名的 OTA
固件安全
安全开发
- 移除后门和调试接口
- 禁用不必要的服务
- 实施强身份验证
- 验证所有输入
- 使用经过测试的加密库
空中下载(OTA)更新
- 固件数字签名
- 安装前进行完整性验证
- 失败时具备回滚能力
- 双分区以实现安全更新
- 增量更新以节省带宽
固件分析
- Binwalk:固件提取与分析
- Firmware Analysis Toolkit (FAT):自动化分析
- Ghidra:逆向工程
- QEMU:固件仿真
安全的物联网协议
MQTT (Message Queue Telemetry Transport)
- 使用基于 TLS 的 MQTT(端口 8883)
- 实施用户名/密码或证书身份验证
- 按主题设置访问控制列表(ACL)
- 避免开放的通配符主题
CoAP (Constrained Application Protocol)
- 使用带 DTLS 的 CoAP 进行加密
- 预共享密钥或证书
- Object Security for Constrained RESTful Environments (OSCORE)
Zigbee 和 Z-Wave
- AES-128 加密
- 安全配对流程
- 网络密钥轮换
- 帧计数器以防重放
物联网网络分段
网络隔离
- 为物联网设备设置专用 VLAN
- 在物联网与企业网络之间设置防火墙
- 按设备类型进行微分段
- 为暴露的设备设置 DMZ
访问控制
- 允许通信的白名单
- 尽可能阻止直接访问互联网
- 用于云通信的代理/网关
- 异常流量监控
工业物联网(IIoT)
特定挑战
- 不具备安全能力的遗留系统
- 关键正常运行时间——打补丁复杂
- 安全故障带来的安全性(safety)影响
- 物理隔离(air-gap)并非总是可行
ICS/SCADA 安全
- 实施 Purdue 模型进行分段
- 针对 OT 的专用 IDS/IPS
- 单向网关
- 完整的资产清单
- 被动网络监控
物联网设备管理
管理平台
- AWS IoT Core:设备管理与安全
- Azure IoT Hub:双向通信
- Google Cloud IoT:设备注册表与遥测
- ThingWorx:IIoT 平台
安全特性
- 自动化且安全的设备配置
- 基于证书的身份验证
- 基于策略的访问控制
- 生命周期管理
- 完整的审计日志记录
物联网安全测试
硬件破解
- UART/JTAG 接口分析
- 通过 SPI/I2C 提取固件
- 侧信道攻击
- 功耗分析
工具
- Bus Pirate:通用总线接口
- JTAGulator:JTAG 引脚识别
- Wireshark:协议分析
- Scapy:数据包操控
- Attify Badge:物联网安全测试工具
标准与框架
OWASP IoT Top 10
- Weak, Guessable, or Hardcoded Passwords
- Insecure Network Services
- Insecure Ecosystem Interfaces
- Lack of Secure Update Mechanism
- Use of Insecure or Outdated Components
NIST Cybersecurity for IoT
- Device Identification
- Device Configuration
- Data Protection
- Logical Access to Interfaces
- Software/Firmware Update
- Cybersecurity State Awareness
最佳实践
- 从一开始就实施安全设计(security by design)
- 禁用不必要的服务和端口
- 为每台设备使用唯一凭据
- 实施安全的更新机制
- 加密传输中和静态中的数据
- 监控设备行为
- 维护最新的设备清单
- 规划报废(end-of-life)和退役(decommissioning)
- 定期进行安全测试
- 教育用户了解物联网风险
由于硬件限制、海量规模 以及设备多样性,物联网安全面临着独特的挑战。一种从设备 设计到完整生命周期管理都考虑安全性的整体方法至关重要。随着 连接设备的指数级增长,投资于物联网安全并非可有可无——而是 防止大规模攻击、保护隐私和关键基础设施的根本所在。
