微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 硬件工程师文库 > MCU解密全攻略 为何所有MCU都能被破解

MCU解密全攻略 为何所有MCU都能被破解

时间:07-30 来源:电子发烧友 点击:

  :本文介绍了众多微处理器MCU和智能卡破解的方法:包括已知的非侵入式攻击,如功耗分析和噪声干扰以及侵入式攻击,如反向工程和微探测分析。并讨论了众多防护技术,包括低成本的隐匿方法到新的集成电路设计方法.

  背景知识:

  硅芯片安全措施的演变

  工业控制器的硬件安全措施与嵌入式系统同时开始发展。三十年前的系统是由分离的部件如CPU,ROM,RAM,I/O缓冲器,串口和其他通信与控制接口组成的。如图1-1所示:

  图1-1 通用的嵌入式控制器。PCB上的每个部件很容易辨别且极易被复制。

  在早期,除法律和经济外,几乎没有保护措施来防止别人复制这些设备。例如:ROM是用低成本的掩膜技术制造的,可用EPROM轻易复制,但后者通常要贵3-10倍或更多,或通过定制掩膜ROM,那就需要很长的时间和很大的投资。另一种是在游戏机中广泛使用的简易ASIC,如图1-2。这些ASIC主要用于I/O部分来取代数十个逻辑器件,在降低成本的同时防止竞争者的复制,使之不得不应用更大且更贵的解决方案。实际上ASIC不会更安全,用示波器来简单分析信号或穷举所有可能的引脚组合就可以在数小时内得知它的具体功能。

  图1-2 游戏机中的专用集成电路(ASIC)

  从七十年代后期开始,微控制器提供一种基于CPU的控制板的非常好的取代方法。它们不仅有内部存储器和通用I/O接口,还有一些保护措施以防止未经授权访问内部存储器的内容。

  不幸的是,早期的MCU没有提供非易失存储能力,重要的数据不得不存在MCU外部的分离芯片上,因此很容易被读出数据。最近销售的一些廉价USB狗也用此法来进行软件保护,如图1-3所示。

  图1-3 Aladdin HASP4 USB狗

  安全领域的下一步进展就是把EEPROM芯片放在与MCU同一封装的内部。如图1-4。破解这些芯片是不容易的。一种专业的方法是打开样品的封装,用微探针来获得数据。或将芯片重新焊在一个分开的封装内。这两种设备都不是低级破解者所能拥有的。这些破解者会尝试用自制的微探针(旧芯片的焊线区域是相当大的)或利用软件上的缺陷来读出数据。

  图1-4 微芯Microchip的PIC12CE518微控制器打开封装后的照片,可见非易失数据存储器和MCU是分开封在同一封装内部的。

  (译者注:近来的堆叠芯片,如手机中用的Flash+SRAM的combo存储器,结构与之类似,不同的是在垂直方向叠加。破解方法亦类似。结构见图1-5。)

  图1-5 意法ST 某型32位MCU打开封装后的SEM图片

  一些MCU始终没有任何特殊的硬件安全保护。它们仅仅是基于不公开编程算法来保护。这可能有伪装回读功能,或用校验功能来代替。一般这些MCU不会提供非常好的保护能力。实际上,在一些智能卡中,适当使用校验功能能够起到很强的保护作用。

  下一步增强安全保护的措施就是增加一个硬件安全熔丝(security fuse译者注:安全熔丝就是寄存器)来禁止访问数据。这很容易做到,不需要完全重新设计MCU架构,仅利用熔丝来控制编程接口的回读功能,如图1-6所示。缺点是熔丝位很容易被定位并进行入侵攻击。

  例如:熔丝的状态可以通过直接把熔丝位的输出连到电源或地线上来进行修改。有些例子中仅仅用激光或聚焦离子束来切断熔丝的感应电路就可以了。用非侵入式攻击也一样可以成功。因为一个分离的熔丝版图异于正常的存储阵列。可以用组合外部信号来使熔丝位处与不能被正确读出的状态,那样就可以访问存在内部芯片上的信息了。用半侵入式攻击可以使破解者快速取得成功但需要打开芯片的封装来接近晶粒。一个众所周知的方法就是用紫外线来擦掉安全熔丝。

  图1-6 微芯PIC12C508微控制器的安全熔丝位于程序存储器阵列的外部。

  再下一步就是将安全熔丝做成存储器阵列的一部分,如果已设好熔丝,可禁止外部读写数据。一般的熔丝与主存储器离得很近,或干脆与主存储器共享一些控制线。因为晶圆厂使用与主存储器相同的工艺来制造,熔丝很难被定位和复位。非侵入式攻击仍然可用,但需要时间去寻找。同样,半侵入式攻击也可用。当然破解者需要更多的时间去寻找安全熔丝或控制电路负责安全监视的部分,但这些可以自动完成的。进行侵入式攻击将是很困难的,需要手工操作,那将花费更多的成本来破解。

  图1-7 飞思卡尔Freescale的MC68HC705C9A微控制器在200倍显微镜下可见安全熔丝是存储器读写控制逻辑的一部分

更进一步的是用主存储器的一部分来控制外部对数据的访问。这可以用上电时锁定特定区域地址的信息,将它作为安全熔丝。或用密码来控制对存储器的访问。例如德仪的MSP430F112,只有

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top