1. 血压计行业背景与固件安全现状

大家好,我是老张。在嵌入式安全这块摸爬滚打了十几年,做过不少医疗设备项目。今天咱们聊聊血压计,这个看似简单、实则门道不少的小设备。

你想想看,一个血压计,每天测量你的收缩压、舒张压、心率。这些数据要是出错了,后果是什么?医生可能给你开错药,你可能错过最佳治疗时机。嗯,这可不是闹着玩的。

1.1 医疗设备法规要求

先说法规。血压计属于二类医疗器械,在国内要过CFDA(现在叫NMPA),出口要过FDA、CE。我当年做第一款出口美国的血压计时,光法规文档就写了三百多页。

核心要求有哪些?我列一下:

  • ISO 13485:医疗器械质量管理体系。说白了,你的开发流程、生产流程都要有据可查。
  • IEC 62304:医疗器械软件生命周期过程。固件升级、版本管理、风险分析,全得按规矩来。
  • FDA 21 CFR Part 820:美国的质量体系法规。嗯,这个更严格,连你用的编译器版本都要记录。
  • ISO 14971:风险管理。你得分析固件升级失败会带来什么风险,概率多大,怎么控制。

关键点:法规不是摆设。我见过有公司因为固件升级没有做回滚验证,被FDA发警告信的。整改费用比重新开发一套还高。

我个人习惯,在项目启动前就把法规要求列成checklist。每完成一个功能,先自检一遍。别等到送检了才发现问题,那时候改起来成本太高。

1.2 固件攻击案例分析

说到攻击案例,你可能觉得血压计有什么好攻击的?我告诉你,还真有。

案例一:数据篡改攻击

2019年,某品牌血压计被爆出固件漏洞。攻击者通过蓝牙连接,向设备注入伪造的测量数据。患者看到"正常"的血压值,实际上已经高血压了。这个漏洞持续了半年才被发现。

案例二:固件逆向与克隆

我有个朋友,他们公司的血压计被山寨了。对方直接拆机,用JTAG读出了固件,稍作修改就贴牌上市。原厂花了两年打官司,最后不了了之。

案例三:OTA升级劫持

这个更狠。攻击者伪造了升级服务器,向设备推送恶意固件。设备表面上在升级,实际上被植入了后门。所有测量数据都被偷偷上传到攻击者的服务器。

注意:我曾经在项目复盘时发现,这些攻击的根源都是同一个问题——固件没有做签名验证。你想想看,没有签名的固件,就像没有锁的门,谁都能进。

1.3 为什么血压计需要安全升级

好,现在说说为什么血压计需要安全升级。我总结了三个核心原因:

  1. 法规强制要求:IEC 62304明确要求,软件变更必须受控。你不能说改就改,得走变更流程,做回归测试。
  2. 漏洞修复:没有绝对安全的系统。蓝牙协议有漏洞、加密算法有弱点、RTOS有bug。发现了就得修,怎么修?安全升级。
  3. 功能迭代:血压算法在优化,新的测量模式在增加,用户界面在改进。这些都需要升级通道。

我的建议:安全升级不是可选项,是必选项。我在项目中遇到过客户说"先不做安全,后面再加"。结果呢?后面加的成本是前期的三倍,还影响了产品上市时间。

说白了,安全升级就像给设备买保险。平时觉得没用,真出事了你才知道它的价值。

我记得有一次,一个客户的产品已经量产了,发现蓝牙协议栈有个严重漏洞。幸好我们提前设计了安全升级通道,远程推送了一个补丁,三天内所有设备都更新了。要是没有这个通道,得召回两万台设备,成本至少两百万。

所以,别把安全升级当成负担。它是你产品的护城河,也是你作为工程师的底线。

安全升级要素 为什么重要 我踩过的坑
固件签名 防止恶意固件注入 曾经没做签名,被山寨了
加密传输 防止数据被截获 蓝牙传输没加密,数据被窃听
回滚保护 防止降级攻击 用户刷回旧版本,漏洞又回来了
版本验证 确保升级完整性 升级到一半断电,设备变砖

嗯,这一章就到这里。下一章我会详细讲固件升级的架构设计,包括怎么分区、怎么设计bootloader、怎么处理升级失败。这些都是实战经验,希望能帮到你。