3、威胁模型分析:设备身份面临的常见攻击及攻击面

设备身份(Device Identity)是物联网、车联网、金融终端及工业控制系统安全信任链的根节点。一旦设备身份被克隆、伪造或篡改,攻击者即可冒充合法设备接入网络、伪造数据上报、下发恶意指令,甚至横向移动至核心业务系统。因此,在设计安全存储与防篡改方案之前,必须系统性地梳理设备身份面临的威胁模型,明确攻击者的能力假设、攻击路径与可利用的攻击面。本章将围绕克隆、伪造、篡改、侧信道、物理提取五类典型攻击展开分析,并结合硬件攻击面与软件攻击面给出可落地的威胁建模方法。

设备身份威胁模型全景图 设备身份 (Device Identity) 克隆攻击 复制密钥/身份材料 伪造攻击 构造虚假设备身份 篡改攻击 修改身份数据/权限 侧信道攻击 功耗/电磁/时序泄露 物理提取攻击 探针/去封装/聚焦离子束 攻击面分类 硬件攻击面 芯片引脚/总线/调试接口 软件攻击面 固件/驱动/API/协议栈 通信攻击面 无线/有线/调试通道 供应链攻击面 制造/运输/部署环节

上图展示了设备身份威胁模型的核心框架:设备身份作为信任锚点,面临五类典型攻击,每类攻击又可映射到硬件、软件、通信、供应链四个攻击面。实际威胁建模时,需要将攻击者能力(如物理接触时间、设备数量、资金预算)与攻击面结合,形成可量化的风险矩阵。

3.1 克隆攻击:身份复制与批量仿冒

核心原理

克隆攻击是指攻击者通过某种途径获取合法设备的身份凭证(如私钥、证书、唯一序列号、安全元件中的密钥),并将其复制到另一台设备或模拟环境中,使仿冒设备在网络上呈现与合法设备完全相同的身份。克隆攻击的本质是身份凭证的机密性被破坏。常见的克隆途径包括:

  • 固件提取:从设备Flash或外部存储中读取包含私钥或证书的文件。
  • 调试接口泄露:通过UART、JTAG、SWD等调试接口直接读取安全存储区。
  • 备份恢复:从设备备份文件(如Android的TWRP备份)中提取密钥库。
  • 侧信道辅助克隆:利用功耗或电磁泄露恢复密钥后,再写入克隆设备。

判断方法与操作流程

判断设备是否存在克隆风险,可从以下维度进行威胁建模:

  1. 身份凭证存储位置:是否存储在安全元件(SE)、TEE或专用密钥存储区?还是存储在普通Flash或文件系统中?
  2. 密钥是否可导出:安全硬件是否支持密钥导出接口?是否允许读取私钥明文?
  3. 设备唯一性绑定:身份凭证是否与设备硬件唯一标识(如芯片ID、eFuse值)绑定?
  4. 批量克隆成本:攻击者克隆一台设备的成本是否远低于其预期收益?
实战判断清单:若设备使用普通MCU+外部Flash存储私钥,且无安全启动校验,则克隆攻击成本极低——攻击者只需读取Flash镜像,提取私钥,再写入另一块相同型号的Flash即可完成克隆。若设备使用安全元件且密钥不可导出,则克隆攻击需要物理侵入安全芯片内部,成本显著提升。

案例拆解:智能门锁身份克隆事件

某智能门锁厂商采用ESP32主控+外部SPI Flash存储设备证书和私钥。攻击者通过拆解门锁,使用SPI Flash编程器直接读取Flash内容,提取到设备私钥和云端通信证书。随后,攻击者将提取的固件镜像写入另一块空白Flash,替换到另一台普通门锁中,成功仿冒原设备接入云端管理平台,可远程开锁。该案例中,攻击者仅需约30分钟和几十元硬件成本即可完成克隆。

复盘经验:设备身份凭证必须存储在具备防提取能力的安全硬件中,且应启用安全启动校验,防止固件被整体替换。此外,云端应增加设备行为基线检测,发现同一身份在短时间内出现地理位置跳变或异常操作时及时告警。

风险提示:克隆攻击的隐蔽性极强,被克隆的合法设备仍可正常工作,导致攻击者与合法用户同时在线,难以通过传统认证机制发现。建议引入设备行为指纹(如通信频率、传感器数据模式)作为辅助检测手段。

3.2 伪造攻击:从零构造虚假身份

核心原理

伪造攻击与克隆攻击的区别在于:克隆是复制已有合法身份,而伪造是攻击者自行构造一个在系统中不存在或未注册的身份,并试图通过认证。伪造攻击通常发生在设备注册流程不严谨、证书签发机制存在漏洞或设备认证协议缺乏双向校验的场景。典型伪造方式包括:

  • 证书伪造:攻击者自行生成自签名证书,或利用CA私钥泄露签发合法证书。
  • 注册流程绕过:在设备注册阶段,攻击者伪造设备序列号、MAC地址或IMEI等信息完成注册。
  • 协议重放:捕获合法设备的注册请求,修改设备标识后重放。

判断方法与操作流程

评估伪造攻击风险时,应重点审查:

  1. 设备注册是否具备可信根:注册时是否验证设备的物理不可克隆函数(PUF)或安全元件中的预置证书?
  2. 证书链是否完整:设备证书是否由受信任的CA签发?CA私钥是否存储在HSM中?
  3. 设备标识是否可预测:序列号、MAC地址等是否采用随机数或加密生成?
  4. 认证协议是否双向:服务器是否验证设备身份的同时,设备也验证服务器身份?

案例拆解:伪造车载T-Box身份接入车联网平台

某车联网平台允许T-Box(车载远程通信终端)通过4G网络上报数据,认证方式为设备序列号+预共享密钥(PSK)。攻击者通过分析T-Box固件,发现PSK由序列号经过简单哈希生成,且序列号段可预测。攻击者编写脚本批量生成合法格式的序列号和对应PSK,伪造大量虚拟T-Box接入平台,向车辆发送虚假的远程控制指令。该攻击导致平台信任体系崩溃,最终需召回所有T-Box更换认证机制。

复盘经验:设备身份认证必须采用非对称密码体系,私钥存储在安全硬件中,公钥证书由CA签发。同时,设备注册应增加物理存在证明(如安全元件生成的签名挑战),防止批量虚拟身份注册。

经验提醒:伪造攻击的检测难点在于攻击者构造的身份在格式上完全合法。建议在平台侧建立设备身份信息熵检测模型,对序列号、MAC地址等字段的随机性进行统计分析,发现异常聚集或低熵值时触发风控。

3.3 篡改攻击:身份数据与权限的非法修改

核心原理

篡改攻击是指攻击者对设备身份相关的数据、配置或权限进行未授权的修改,使设备身份的真实性、完整性或授权范围发生变化。与克隆和伪造不同,篡改攻击不一定需要复制或构造新身份,而是在原有身份基础上进行越权修改。常见篡改目标包括:

  • 权限提升:将普通用户设备身份修改为管理员或服务商身份。
  • 属性篡改:修改设备所属组织、安全等级、信任级别等属性。
  • 密钥替换:将设备公钥替换为攻击者自己的公钥,实现身份接管。
  • 配置篡改:修改安全策略配置,如关闭安全启动、禁用签名校验。

判断方法与操作流程

篡改攻击的威胁建模需关注以下环节:

  1. 身份数据的完整性保护:是否使用消息认证码(MAC)或数字签名保护身份数据?
  2. 权限模型的粒度:设备身份是否具备最小权限原则?是否支持权限分离?
  3. 更新机制的安全性:固件或配置更新时是否验证签名?是否允许降级?
  4. 运行时防护:设备运行过程中是否有内存保护、控制流完整性等机制防止动态篡改?

案例拆解:工控PLC身份权限篡改导致生产线停摆

某工厂的PLC(可编程逻辑控制器)使用基于角色的访问控制(RBAC),设备身份中存储了角色字段(如操作员、工程师、管理员)。攻击者通过工业以太网接入PLC的调试端口,利用未加密的Modbus协议读取并修改PLC内部寄存器,将自身角色从“操作员”篡改为“管理员”,随后修改了生产线的关键工艺参数,导致产品批量报废。该攻击利用了身份数据存储于普通寄存器且无完整性校验的漏洞。

复盘经验:设备身份中的权限字段必须存储在受保护的安全存储区,并使用密钥进行签名。任何权限变更操作都应记录审计日志,并支持远程撤销。对于工业设备,建议采用独立的安全监控模块实时校验身份数据的完整性。

风险提示:篡改攻击往往与供应链攻击结合——攻击者在设备出厂前或运输途中篡改身份数据,使设备在到达用户手中时已处于被控制状态。因此,设备身份数据应在安全的生产环境中写入,并启用防篡改封条和运输监测。

3.4 侧信道攻击:利用物理泄露提取身份密钥

核心原理

侧信道攻击不直接攻击设备的软件或硬件接口,而是通过监测设备在运行过程中泄露的物理信息(如功耗、电磁辐射、运行时间、温度、声音等)来推断密钥或敏感数据。对于设备身份而言,最危险的侧信道攻击是功耗分析(SPA/DPA)和电磁辐射分析(EMA),它们可以在不拆开芯片封装的情况下提取安全元件中的私钥。侧信道攻击的前提是攻击者能够物理接触设备,并能够控制设备的输入(如让设备执行签名操作)。

判断方法与操作流程

评估侧信道攻击风险时,需考虑:

  1. 密码算法实现:是否采用常数时间实现?是否使用掩码、随机化等抗侧信道技术?
  2. 硬件防护能力:安全芯片是否具备功耗平坦化、电磁屏蔽、噪声注入等防护?
  3. 攻击者接触时间:设备是否长期暴露在攻击者可接触的环境中?
  4. 密钥使用频率:设备是否频繁执行签名/解密操作,为攻击者提供足够的采样样本?

案例拆解:智能电表私钥的DPA攻击提取

某智能电表使用商用安全芯片存储用于远程费控的私钥,芯片宣称具备抗DPA能力。研究人员通过示波器以100MS/s采样率采集电表在执行ECDSA签名时的功耗曲线,采集约10,000条曲线后,利用差分功耗分析(DPA)成功恢复了私钥。攻击过程中,研究人员仅需将电流探头夹在电表电源线上,无需拆开安全芯片封装。恢复私钥后,攻击者可伪造电表的远程充值指令,实现“免费用电”。

复盘经验:仅依赖安全芯片的“宣称”防护是不够的,必须进行独立的侧信道评估测试。对于高价值设备,建议采用密钥分割(将私钥拆分为多份,分别存储在不同区域)或引入PUF(物理不可克隆函数)作为密钥生成根,使侧信道攻击难以获得完整密钥。

经验提醒:侧信道攻击的防御需要从算法层、电路层、系统层三个维度协同设计。算法层采用掩码和随机化;电路层增加噪声源和功耗平衡;系统层限制密钥使用次数、增加操作随机延时。此外,定期更换密钥可降低单次攻击成功后的影响范围。

3.5 物理提取攻击:直接侵入芯片内部

核心原理

物理提取攻击是最高级别的硬件攻击,攻击者通过破坏性/半破坏性手段直接读取安全芯片内部的密钥或身份数据。常见技术包括:

  • 聚焦离子束(FIB)编辑:使用FIB切割芯片钝化层,探针直接接触内部总线或存储单元。
  • 去封装+微探针:通过化学腐蚀去除芯片封装,使用微探针台读取SRAM或Flash内容。
  • 激光故障注入:使用激光照射芯片特定区域,诱导错误输出,结合差分故障分析(DFA)恢复密钥。
  • 电子显微镜成像:对芯片逐层拍照,逆向工程存储单元状态。

判断方法与操作流程

物理提取攻击的威胁建模需评估:

  1. 芯片安全等级:是否通过CC EAL5+/6+或同等安全认证?是否具备主动屏蔽层、光传感器、电压/温度传感器?
  2. 密钥存储方式:密钥是否以明文存储在Flash/EEPROM中?还是由PUF动态生成?
  3. 攻击成本与收益:一次物理提取攻击的成本(设备+时间+专业人才)是否超过攻击者预期收益?
  4. 批量攻击可行性:攻击方法是否可复制?能否在有限时间内提取多台设备的密钥?

案例拆解:金融支付终端安全芯片的FIB攻击

某金融支付终端使用一款宣称“防物理提取”的安全芯片存储PIN加密密钥。安全研究团队使用FIB设备对芯片进行逆向工程,首先通过X射线定位密钥存储区域,然后使用FIB切割钝化层,露出内部数据总线。通过微探针监听总线数据,在终端执行PIN加密操作时捕获到明文密钥。整个攻击耗时约2周,设备成本约50万美元。虽然攻击成本高昂,但对于攻击者而言,获取该密钥后可伪造支付终端,实施银行卡盗刷,潜在收益远超攻击成本。

复盘经验:物理提取攻击无法完全杜绝,但可以通过增加攻击成本来降低风险。建议采用以下措施:使用具备主动屏蔽层和传感器的高安全芯片;将密钥分割存储于多个独立区域;采用PUF技术使密钥仅在运行时生成,断电后消失;建立密钥轮换机制,即使单次提取成功,影响范围也有限。

风险提示:物理提取攻击的威胁模型应特别关注“内部攻击者”——即具备芯片制造或封装能力的供应链人员。他们可能在芯片制造阶段植入后门或提前提取密钥。因此,对于高安全场景,应选择可信的芯片制造商,并要求提供供应链安全审计报告。

3.6 攻击面分析与威胁建模实践

核心原理

攻击面是指设备身份数据从生成、存储、使用到销毁全生命周期中,所有可能被攻击者利用的入口和路径。完整的攻击面分析应覆盖硬件、软件、通信、供应链四个维度,并结合STRIDE或攻击树等方法进行系统性梳理。

攻击面 典型入口 涉及攻击类型 防护重点
硬件攻击面 JTAG/SWD调试口、UART串口、SPI/I2C总线、芯片引脚、电源/时钟引脚 物理提取、侧信道、篡改 禁用调试接口、总线加密、电压/温度传感器、主动屏蔽层
软件攻击面 固件更新接口、操作系统漏洞、驱动漏洞、API接口、配置管理 篡改、伪造、克隆 安全启动、代码签名、运行时完整性校验、最小权限
通信攻击面 Wi-Fi/蓝牙/蜂窝网络、CAN总线、Modbus、MQTT/CoAP协议 伪造、重放、中间人 双向TLS认证、证书固定、协议层加密、防重放机制
供应链攻击面 芯片制造、固件烧录、设备组装、物流运输、部署配置 克隆、伪造、篡改 可信供应链审计、安全烧录、运输监测、设备注册校验

判断方法与操作流程

威胁建模的实践流程建议如下:

  1. 定义设备信任边界:明确哪些组件是可信的(如安全元件),哪些是不可信的(如外部通信接口)。
  2. 枚举资产:列出所有需要保护的设备身份相关资产(私钥、证书、序列号、权限配置等)。
  3. 绘制数据流图:标识身份数据在设备内部及与外部交互的流动路径。
  4. 应用STRIDE模型:对每个数据流节点分析欺骗(S)、篡改(T)、否认(R)、信息泄露(I)、拒绝服务(D)、权限提升(E)风险。
  5. 评估攻击者能力:根据攻击者的物理接触时间、设备数量、资金预算,确定威胁等级。
  6. 输出风险矩阵:将威胁等级与攻击面结合,形成优先级排序,指导安全设计决策。

案例拆解:工业网关设备威胁建模完整流程

某工业网关设备需接入云端管理平台,设备身份为内置证书+私钥。安全团队按以下流程进行威胁建模:

步骤1:定义信任边界——将安全芯片(ATECC608B)标记为可信根,主控CPU(i.MX6ULL)标记为部分可信,外部通信接口(以太网、RS485)标记为不可信。

步骤2:枚举资产——私钥(存储于ATECC608B)、设备证书(存储于外部Flash)、固件签名密钥、云端API密钥。

步骤3:绘制数据流图——设备启动时,主控CPU通过I2C总线从ATECC608B读取签名结果;设备通过以太网与云端建立TLS连接;固件更新时通过USB口接收新固件。

步骤4:STRIDE分析——发现I2C总线上的签名操作可能被侧信道攻击(信息泄露);USB固件更新接口可能被用于注入恶意固件(篡改);云端API密钥存储于外部Flash可能被提取(信息泄露)。

步骤5:评估攻击者能力——工业网关部署在无人值守的机房,攻击者具备物理接触条件,但设备数量有限(约500台),单台攻击预算约2000美元。

步骤6:输出风险矩阵——优先级排序为:①I2C总线侧信道攻击(高);②USB固件更新篡改(高);③API密钥提取(中)。据此,团队决定在ATECC608B与主控之间增加功耗平坦化电路,禁用USB口(改为仅在生产模式启用),并将API密钥迁移至安全芯片内部存储。

复盘经验:威胁建模不是一次性的静态活动,而应贯穿设备全生命周期。每次固件更新、硬件改版或部署环境变化时,都应重新评估威胁模型。同时,威胁建模的输出应直接驱动安全设计决策,而非仅作为文档存档。

经验提醒:威胁建模的常见误区是“过度关注攻击者能力,而忽视攻击者动机”。对于设备身份攻击,攻击者的动机通常是经济利益(如盗刷、勒索)或政治目的(如破坏关键基础设施)。在资源有限的情况下,应优先防护那些攻击成本低、收益高的攻击路径。

3.7 常见误区与总结复盘

核心原理

在设备身份威胁建模实践中,安全团队常陷入以下误区,导致防护措施失效或资源浪费:

  • 误区一:认为安全芯片“绝对安全”——任何安全芯片都存在被物理提取或侧信道攻击的可能,只是攻击成本高低不同。安全芯片应被视为“提高攻击门槛”的工具,而非“一劳永逸”的解决方案。
  • 误区二:忽视供应链攻击面——许多团队只关注设备运行时的攻击,却忽略了设备在制造、运输、部署阶段可能被植入后门或替换身份数据。
  • 误区三:威胁建模与安全设计脱节——威胁建模完成后未转化为具体的安全需求,导致设计阶段未落实防护措施。
  • 误区四:只关注技术攻击,忽视社会工程学——攻击者可能通过钓鱼、贿赂内部人员等方式获取设备身份数据,而非直接进行技术攻击。

判断方法与操作流程

为避免上述误区,建议采取以下措施:

  1. 建立分层防御体系:即使安全芯片被攻破,仍有应用层加密、云端行为检测等后续防线。
  2. 将供应链纳入威胁模型:在设备出厂前进行安全校验,使用一次性防篡改标签,部署后验证设备身份与出厂记录的一致性。
  3. 建立威胁建模到安全需求的映射:使用工具(如Microsoft Threat Modeling Tool)自动生成安全需求清单,并跟踪落实情况。
  4. 结合人员安全意识培训:对设备维护人员、仓库管理人员进行安全意识培训,防止社会工程学攻击。

案例拆解:某医疗设备厂商的威胁建模改进

某医疗设备厂商最初仅关注设备运行时的通信安全,为每台设备配置了TLS证书和私钥,但私钥存储于普通eMMC中。在一次安全审计中,发现攻击者可通过拆解设备、读取eMMC芯片提取私钥,进而伪造设备身份接入医院网络。厂商随后进行了全面的威胁建模改进:

改进前:私钥存储于eMMC,无硬件保护;设备注册仅验证证书有效性;固件更新无签名校验。

改进后:引入安全芯片存储私钥,且密钥不可导出;设备注册增加安全芯片签名挑战;固件更新启用代码签名;增加供应链安全流程,确保设备在出厂前私钥已安全注入且不可被外部读取。

结果对比:改进后,攻击者提取私钥的成本从原来的“拆机+读eMMC”(约1小时,成本50美元)提升至“FIB攻击安全芯片”(约2周,成本50万美元),攻击门槛显著提高。同时,由于增加了固件签名校验,即使攻击者提取了固件镜像,也无法注入恶意代码。

复盘经验:威胁建模应遵循“木桶原理”——攻击者会选择最薄弱的环节进行突破。因此,安全团队应定期进行红队演练,模拟攻击者从硬件、软件、供应链等不同路径发起攻击,找出防护体系的短板并优先修复。

风险提示:威胁建模的输出应包含明确的“可接受风险”声明。对于某些低价值设备,物理提取攻击的成本可能远超设备本身价值,此时可接受该风险,将资源投入到更高价值的防护措施上。但“可接受风险”必须经过管理层确认,并定期复审。

综上所述,设备身份的威胁模型分析是安全存储与防篡改设计的基础。通过系统性地识别克隆、伪造、篡改、侧信道、物理提取五类攻击,并结合硬件、软件、通信、供应链四个攻击面进行综合评估,安全团队能够制定出有针对性的防护策略。威胁建模不是一次性的工作,而应随着设备生命周期、攻击技术演进和业务场景变化持续更新。下一阶段,我们将基于本章的威胁模型,深入探讨设备身份安全存储的具体实现方案。