返回列表 发新帖

解密不是那么复杂,三大破解MCU技术

[复制链接]

该用户从未签到

1万

主题

1万

帖子

3万

积分

合购之王

Rank: 3Rank: 3

积分
39969
发表于 2020-11-17 05:29:50 | 显示全部楼层 | 阅读模式

抱歉!您还未登录!请登录后继续浏览完整内容

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
单片机的安全水平在逐步提高,一些公司甚至推出了安全主控。这是一个很好的现象,说明我们对嵌入式领域的信息安全和程序安全越来越重视。然而,对于许多特殊行业,如消费电子产品、低成本通信模块、电源控制模块等,由于成本压力和更新速度问题,不可能使用更安全的主控单片机,很大一部分产品甚至采用51单片机。
大家都知道破解51单片机是很容易的,但为什么破解,怎么破解,很多人可能不太清楚。本文将根据前人在互联网上整理的数据,结合自己的经验,对单片机破解技术做一个简单的分析。

不要认为解密很复杂。与开发产品不同,它首先确定客户需求或新产品的主要功能,然后立项确定技术指标、分配软硬件开发任务、基于硬件调试程序,然后进行功能验证、bug测试、环境测试。业内解密的方法很多,每个人破解的想法也不尽相同。但它可以大致分为几类。
1,n1,软件破解使用软件破解目标MCU的方法不会对目标MCU组件造成物理损坏。主要用于winbongd、syncmos单片机和gal门阵列。这种软件解密装置按照一定的步骤进行操作,执行片上程序,在芯片外发送指令,然后用解密装置进行拦截,从而对芯片内的程序进行解密(Gal使用逻辑猜测),从而得到加密后的单片机中的程序。氮气。开盖:用手动或专用开盖设备打开盖。这里的盖子开口并不意味着单片机或其他MCU真的有盖子。简单地说,MCU实际上是一个大规模的集成电路,它由N个电路组成,晶片是承载集成电路的载体。晶圆封装后,我们日常生活中使用的集成电路芯片就形成了。包装形式有很多种,比如tssop28、qfn28等,你可以自己搜索百度,我们这里就不重复了。
第三。进行电路修改。对于不同的芯片,提供相应的图纸供厂家进行电路改造。目的是使单片机的存储区域可读。有些MCU在默认情况下不允许读取flash或E2PROM中的数据,因为有硬件电路进行保护,一旦加密连接被切断,程序就会暴露并可读。如图2所示,读取程序检索修改后的MCU,直接与程序员一起读取程序,可以是hex文件或bin文件。
5号。把样品烧给客户。根据读出程序和配置,将其烧录到目标单片机上。这样,MCU就被破解了。至此,硬件破解方法已经成功完成。此外,还有一些其他的破解技术,如电子检测攻击、故障生成技术等,但最终目标是能够模仿目标MCU的功能。
看这里我们应该明白一个道理,破解MCU不能把MCU程序完整还原。目前的技术做不到,至少在中国不行。针对以上情况,加密芯片应运而生。在初始阶段,它能很好地保护单片机的安全,但很快就发现了漏洞。
我举一个实际裂纹分析的例子,你可以理解。
加密原理:nmcu和加密芯片各自存储一个认证密钥,并存储相同的加密算法;
mcu生成随机数并发送给加密芯片,加密芯片用密钥加密密文。此时,MCU解密后,比较明文是否等于生成的随机数。如果相等,程序将正常运行;否则,将错误地处理它。
由于盗版商没有这个密钥,加密芯片与单片机的交互数据是随机的,无法找到规则。因此,运行单片机程序的唯一方法就是破解加密芯片的程序,然后复制一块加密芯片。但是加密芯片不同于一般的单片机,它内部有很多安全机制,所以很难破解。
这种加密方案看起来很安全,但实际上存在漏洞。
破解方法:首先根据第二种破解方法,得到单片机的hex文件。此处省略步骤n,不再重复。
使用软件反编译hex。目前有许多反编译器。
例如,在程序中找到CJN的对比点。因此,只要删除箭头2的行,然后再将汇编语言下载到单片机上,破解工作就完成了。此时,即使没有加密芯片,单片机也能正常运行。
原因很简单。单片机是判断加密芯片的返回值,所以不要让他做判断,这样无论加密芯片的返回值是多少,程序都能正常运行。
所以加密方案很快就被破解了。当然,这并不是绝对的,因为有些MCU即使被切片也无法获得hex或bin文件。因此,这种破解方案取决于MCU的安全级别是否足够高。但足以说明一个问题,本文通过比较加密结果来实现加密方案,安全级别不够高,还存在漏洞。
由于篇幅有限,本课题仅对解密技术做了简要介绍。所谓知己知彼,百战百胜,只有懂得破解技术,才能做到更有效的加密保护。
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表