一、物联网安全现状与挑战
各位同学好,我是老周。在嵌入式安全领域摸爬滚打了十几年,今天咱们来聊聊物联网安全这个老生常谈却又不得不谈的话题。
说实话,我刚入行那会儿,物联网设备还没现在这么普及。那时候大家更关心的是功能能不能跑起来,至于安全?嗯,往往是「后面再说」。结果呢?后面就出事了。
1.1 物联网设备面临的安全威胁
物联网设备的安全威胁,说白了就是「三多一少」:设备多、攻击面多、漏洞多,防护少。我把它归纳为以下几个层面:
| 威胁层面 | 典型攻击方式 | 真实案例(我遇到的) |
|---|---|---|
| 物理层 | JTAG调试接口暴露、串口劫持、芯片探针 | 某智能锁产品,JTAG没锁,直接dump固件 |
| 固件层 | 固件逆向、签名绕过、OTA劫持 | 摄像头固件未加密,提取出云平台密钥 |
| 网络层 | 中间人攻击、重放攻击、协议漏洞 | 智能插座MQTT通信未加密,被远程开关 |
| 应用层 | 弱口令、权限提升、后门账号 | 路由器管理后台默认admin/admin |
⚠️ 避坑指南: 我曾经接手过一个智能家居项目,客户说「我们的设备很安全」。结果我拿串口线一接,直接进shell了。嗯,从那以后我养成了一个习惯——任何设备到我手上,第一件事就是拆开看硬件接口。
你想想看,一个智能灯泡,里面跑着Linux系统,有WiFi模块,有Flash存储,有调试接口。这不就是一个微型电脑吗?攻击者只要找到一个突破口,就能顺藤摸瓜。
1.2 固件攻击案例分析
固件攻击,说白了就是「抄底」。攻击者不跟你玩上层协议,直接拿到底层固件,什么都清楚了。我挑几个典型的案例说说:
案例一:智能摄像头固件泄露
2017年,某知名品牌的智能摄像头被爆出固件中存在硬编码的后门账号。攻击者只要知道设备的IP地址,就能通过这个后门远程查看摄像头画面。
- 问题根源:固件中明文存储了管理员账号密码
- 攻击路径:下载固件 → 解包 → 字符串搜索 → 拿到密码
- 影响范围:全球数百万台设备
案例二:路由器固件签名绕过
我记得有个项目,客户的路由器固件升级机制存在严重缺陷。虽然固件有数字签名,但校验逻辑写在了uboot里,而且签名算法用的是MD5+自定义混淆。
- 问题根源:签名算法强度不足,且校验逻辑可被绕过
- 攻击路径:提取固件 → 逆向校验逻辑 → 伪造签名 → 刷入恶意固件
- 影响范围:该型号全系列设备可被远程控制
案例三:OTA升级劫持
这个案例我印象特别深。某智能门锁厂商的OTA升级流程是这样的:设备定期向服务器请求升级包,服务器返回一个JSON,里面包含下载地址和MD5值。问题出在哪?通信用的是HTTP,而且MD5值可以被碰撞。
- 问题根源:通信未加密,完整性校验算法过弱
- 攻击路径:中间人攻击 → 替换升级包 → 植入恶意固件 → 门锁形同虚设
- 影响范围:该厂商所有支持OTA的设备
💡 核心教训: 固件安全不是「加个壳」就完事了。你需要一套完整的保护体系——加密、签名、安全启动、防回滚,缺一不可。
1.3 为什么需要国密算法
讲到这里,可能有人会问:「老周,我们直接用AES、RSA不就行了?为什么非要折腾国密?」
这个问题,我当年也问过。直到我参与了一个政府项目的安全审计,才真正明白其中的门道。
我归纳了三个核心原因:
- 合规要求——等保2.0、密码法、关键信息基础设施保护条例,都明确要求使用国密算法。这不是选择题,是必答题。
- 供应链安全——国际算法虽然公开透明,但芯片实现、库函数、硬件模块都可能存在后门。国密算法从算法到实现,全链条可控。
- 算法自主可控——SM2基于椭圆曲线,但与国际标准的ECC有差异。说白了,就算有一天国际算法被禁用,我们的设备照样能跑。
| 对比项 | 国际算法(RSA/ECC) | 国密算法(SM2) |
|---|---|---|
| 算法基础 | 大整数分解/椭圆曲线 | 椭圆曲线(不同参数) |
| 密钥长度 | RSA 2048位 / ECC 256位 | SM2 256位 |
| 安全强度 | 128位(ECC 256位) | 128位 |
| 合规性 | 非国标 | GB/T 32918-2016 |
| 供应链风险 | 较高(依赖国外实现) | 较低(国内自主实现) |
📌 个人建议: 如果你的产品要进入政府、金融、能源等关键行业,别犹豫,直接上国密。如果是消费级产品,可以评估一下合规需求再做决定。但说实话,提前布局国密,总比后面被要求整改要好。
好了,这一章的内容就到这里。物联网安全是个大话题,固件保护只是其中一环。但这一环,往往是最致命的一环。下一章我们会深入SM2算法的数学原理,看看它到底是怎么工作的。