本文以采用磁耦合和CMOS工盏腞FID产品为例,简要介绍了此类芯片的构成,在列举各种破坏性/非破坏性攻击手段的基础上,从软/硬件角度分析现有的各种安全措施如何在设计阶段应对这些攻击,或使攻击变得难以实施,以及如何避免不良的设计。
以前,人们普遍认为由于采用了各种复杂的认证算法、密钥等来保护数据免受未获授权使用,IC卡具有磁卡无法比拟的安全性能。但在上个世纪90年代中期,大部分的IC卡处理器都被成功地实施了反向工程,因此这个看法有了很大的改变。除了采用更新的设计技术以外,更重要的是在IC卡芯片设计与实现过程中考虑抗攻击措施,以保护重要的数据不被非法使用。
图1:RFID芯片结构及工作模式
非接触IC卡(RFID)的出现是智能卡发展中的重要里程碑:它通过磁耦合或微波的方式来实现能量与信号的非接触传输,从而有效地解决了接触式智能卡使用机械电气触点产生的静电击穿、机械磨损、易受污染和潮湿环境影响等问题,被认为是身份识别、公交票据、物流等方面的重要替代技术。没有了裸露的电气接触节点,RFID和接触式IC卡产品相比,在安全性方面也有一定的提升,但是它没有改变智能卡使用认证算法和密钥等安全手段的模式,因此并没有从本质上解决安全问题。需要借鉴接触式智能卡安全设计上的成熟经验,才能避免重大技术失误。
从结构上讲,RFID是一个包含射频模拟前端(RF AFE)和基带信号处理两大部分的单片集成电路(见图1)。基带系统包括控制逻辑(甚至微处理器)和必要的存储器,AFE部分是RFID的能量与信号接口,提供片上基带系统工作所需的电源和时钟等辅助信号,完成数据的接收与发送功能。由于RF AFE屏蔽了智能卡片上的电源、时钟、上电复位(POR)等信号与外界的联系,在一定程度上减少了攻击实施的点,与接触式智能卡相比在安全性方面有一定的提升。
智能卡芯片攻击技术及应对措施
根据是否破坏智能卡芯片的物理封装可以将智能卡的攻击技术分为两大类:破坏性攻击和非破坏性攻击。
破坏性攻击和芯片反向工程在最初的步骤上是一致的:使用发烟硝酸去除包裹裸片的环氧树脂;用丙酮/去离子水/异丙醇完成清洗;氢氟酸超声浴进一步去除芯片的各层金属。在去除芯片封装之后,通过金丝键合恢复芯片功能焊盘与外界的电气连接,最后可以使用手动微探针获取感兴趣的信号。对于深亚微米以下的CMOS产品,通常具有3层以上的金属连线,为了解芯片的内部结构,可能要逐层去除以获得重构芯片版图设计所需的信息。在了解内部信号走线的基础上,聚焦离子束(FIB)修补技术甚至可用于将感兴趣的信号连到芯片的表面供进一步观察。
非破坏性攻击主要针对具有微处理器的产品,其手段主要包括软件攻击、窃听技术和故障产生技术。软件攻击使用微处理器的通用通讯接口,寻求安全协议、加密算法以及他们物理实现的弱点;窃听技术采用高时域精度的方法,分析电源接口在微处理器正常工作过程中产生的各种电磁辐射的模拟特征;故障产生技术通过产生异常的应用环境条件,使处理器产生故障,从而获得额外的访问途径。
图2:NAND门驱动一个反向器的光学照片(包含金属层和去掉金属层)。
智能卡的攻击一般从破坏性的反向工程开始,其结论可以用于开发廉价和快速的非破坏性攻击手段,这是最常见的最有效的智能卡攻击模式之一。
1. 破坏性攻击及其防范
a. 版图重构
破坏性攻击的一个重要步骤是重构目标芯片的版图。通过研究连接模式和跟踪金属连线穿越可见模块(如ROM、RAM、EEPROM、ALU、指令译码器等)的边界,可以迅速识别芯片上的一些基本结构,如数据线和地址线。
芯片表面的照片只能完整显示顶层金属的连线,而它是不透明的。借助于高性能的成像系统,可以从顶部的高低不平中识别出较低层的信息,但是对于提供氧化层平坦化的CMOS工艺,则需要逐层去除金属才能进一步了解其下的各种结构。因此,提供氧化层平坦化的CMOS工艺更适合于包括RFID在内的智能卡加工。
图2是一个NAND门驱动一个反向器的光学版图照片,类似于该图的不同层照片对于有经验的人无异于电路图。
对于RFID设计来说,射频模拟前端需要采用全定制方式实现,但是常采用HDL语言描述来实现包括认证算法在内的复杂控制逻辑,显然这种采用标准单元库综合的实现方法会加速设计过程,但是也给反向工程为基础的破坏性攻击提供了极大的便利,这种以标准单元库为基础的设计可以使用计算机自动实现版图重构。因此,采用全定制的方法实现RFID的芯片版图会在一定程度上加大版图重构的难度。
版图重构的技术也可用于获得只读型ROM的内容。ROM的位模式存储在扩散层,用氢氟酸(HF)去除芯片各覆盖层后,根据扩散层的边缘就很容易辨认出ROM的内容(图3)。
基于微处理器的RFID设计中,ROM中可能不包含任何加密的密钥信息,但是它的确包含足够的I/O、存取控制、加密程序等信息,这些在非破坏性攻击中尤为重要。因此,对于使用微处理器的RFID设计,推荐优先使用FLASH或EEPROM等非易失性存储器存放程序。
图3:去除金属和POLY连线的NOR型ROM照片。 |