【导读】现如今嵌入式系统凭借系统内核小、专用性能强、生命周期长的优势强势打入国防、工业、智能家庭领域。然而面对信息技术的不断创新和更迭,嵌入式系统面临被黑客攻占的危险,加密的硬盘驱动被渗透和破解。那么如何防范黑客?
通常情况下,正在设计的新嵌入式系统非??赡苁盏嚼醋院诳偷亩褚夤セ?。当然,如何避免这种情况的发生,都取决于你打算如何施加?;ぁS行┖诳椭皇窍氲贾履愕南低潮览?,而另一些人则想借用它作为恶意平台?;褂幸恍┤讼胍私饽闵杓频那度胧侥诓抗乖焓鞘裁矗暇拐庑┧惴ㄖ岛芏嗲?。
在过去,处理器只是负责开机运行,而安全性是在程序或操作系统中实现的东西。它取决于你信任谁以及他们的工作做得怎么样。在最初阶段,微控制器和微处理器采取了类似的做法,如添加内存保护,允许应用程序放置到沙盒中等等,这都是最初的安全?;ご胧?br />
现在,虚拟化进一步拓展了这一特点,使高阶系统能够虚拟化整个系统。要?;ど诚涔ぷ鳎颐羌偕杌∪砑陀布荒鼙挥跋?。当然,这种假设并不总是必要的,例如大多数硬件具有某种形式的软件参与,像是硬盘驱动器上的控制器。有人可能会想到,在硬盘驱动器上的数据会被保存,这对于保护数据本身而言可能会是一个问题,可能需要使用加密的硬盘驱动器。
不幸的是,通过一些被黑客入侵并植入木马的实际案例,我们现在知道情况并不是这样的,因为修改此固件不仅仅是加固系统的方式,也同样是黑客们渗透进存储设备的一种方法。在这种情况下,控制器固件被修改,所以存储在驱动器上的操作系统将受到影响。恶意固件隐藏自身和修改。想要深入这个系统其实很容易,因为磁盘已经做了这种类型的数据重新映射来处理不良扇区,所以黑客只需要动动手指就能轻而易举的获取入侵代码。
对于嵌入式系统的设计而言,在编程设计阶段就为系统提供安全驱动程序,是每一个工程师都需要从事的工作。随着黑客入侵的次数愈加频繁,为嵌入式系统增加牢固的安全程序就显得愈发重要。那么,哪些方法能够有效的防止黑客入侵?使用何种形式的加密密钥能够是程序更安全?
安全引导和加密代码是防止初始攻击得手的方法。
一次性可编程(OTP)或基于ROM的解决方案是另一种方法,但这些是防止许多应用必要的现场更新。有些平台还允许调试或者使JTAG支持失能,通常是通过OTP标志,所以应用程序代码不再能直接访问,使得逆向工程更加困难。如果检测到攻击,有些系统会进入防篡改极端,清除代码和数据。
设置安全密钥和软件?;し桨?br />
TI的MSP432有一个有趣的方法来保护应用程序代码,这给我们带来了一些有用的启示。这种?;し桨冈市碇恢葱猩链嬷械亩喔隹椋且葱姓庖徊?,要使代码能够在同一个块中访问数据。JTAG不会泄露代码或数据的内容。被定义的多个块和加密密钥用于验证并允许更新,这样恶意物件就不能只是简单地除去或替换一个块。MSP432不具有安全密钥存储或OTP支持,但这些都可以使用软件?;し桨咐词迪?。该方法允许供应商一个芯片上嵌入运行时间支持,然后将其提供给开发者??⒄呖梢缘饔弥С殖绦颍遣换嶂苯臃梦誓切┛梢苑纸獾拇?。该计划实际上适用于多个供应商在同一芯片上提供服务。
相关阅读:
技术详解:利用嵌入式降低电池功耗
技术经验:做嵌入式硬件设计需具备的基本功
嵌入式设计可接受的抖动水平要如何确定呢?




