嵌入式系统在各个领域的应用范围不断扩大,其占据越来越多的重要性。与此同时,互联网技术下使得信息的网络的连接日渐便捷、高效,网络攻防的重要发展方向朝着嵌入式系统转换。在信息时代,黑客无疑将攻击目标转向嵌入式系统,嵌入式系统安全暴露出的问题日渐显现。通过梳理和汇总不同应用领域中嵌入式系统的安全性研究,剖析当前可信运行环境在应用中存在着安全风险问题,通过深入分析问题原因,提出可信运行环境是提高嵌入式系统安全性比较有效的解决方案,进而提出了安全增强的可信运行环境架构,以期嵌入式系统健康运行。
随着互联网技术在嵌入式系统运行中的广泛应用,可信运行环境架构受到了更多的社会关注与现实应用。在当今时代中,围绕着可信操作系统设计以及相关安全性问题的探讨是一大热门,并逐渐成为各领域研究的重要方向。当前该问题研究的重要内容之一便是基于嵌入式系统安全可信操作系统及其关键服务。
1 嵌入式系统的定义
嵌入式系统作为一种特殊的计算机系统,其嵌入于特定的控制机械或电子设备内部,以此来执行特定的功能。在执行任务时,其需对系统的可靠性、经济性、实时性以及系统体积、功耗等做出严格要求。按照IEEE(Institute of Electrical and Electronics Engineers)国际相关组织中对嵌入式系统的概念界定,认为该系统主要是“管理、调节和帮助机器或设备的重要部分”,从而确保设备整体的正常运行。从技术维度来分析,嵌入式系统作为专用计算机系统,以应用为中心,最大限度配合整体设备运行;从系统维度来看,嵌入式系统作为一特殊综合体,其兼具软件与硬件于一身。从二十世纪六十年代嵌入式系统的雏形开始,以应用为中心就逐步成为嵌入式系统的最重要特点之一。
嵌入式系在通信、国防、消费电子、航空航天等多个领域得以广泛应用和发展。需要注意的是,嵌入式系统不同于计算机系统,二者有着鲜明的特点。嵌入式系统研究中比较关注软硬件功能间的和谐发展。嵌入式系统开发是一项涉及交叉性、专业领域知识,比如在机械控制、电路设计等系统开发中,都是交叉领域专业知识交织在一起。为此,要全面、清晰、精准地把握好嵌入式系统技术的相关知识,深入掌握其软硬件架构以及应用内容,以形成系统性体系,以免发生偏差性问题。
2 可信运行环境面临的安全挑战
2.1 信任根与信任链
UEFI组织针对嵌入式系统中所出现的信任根与信任链展开了较为详细的概念界定。在最佳环境中,信任根要要以硬件机制为载体,在系统通电的条件下,仅仅可以在无法修正的存储仪器中完成代码提取,难以对此展开有目的的修改,其限制性要素较多。信任链以信任根为起点,启动代码的获取要建立在可信认证的基础上,需要完成完整性校验。必须要有可信启动代码得到检验,其后续的启动码能够完成检验过程,在系统真正启动后,这一检验过程便会结束。在实际操作中,在TrustZone的硬件框架中要实现可以同时防御物理攻击和软件攻击的信任根日益成为在嵌入式系统安全可信运行的关键问题之一,同样是在可信运行环境架构中所值得研究与讨论的关键性存在。
2.2 隔离性
可信运行环境要借助软硬件隔离机制要实现其功能与维护稳定性。其一,要以硬件为基础,实现对可信运行环境及其所涉及到的处理器 、 内存等展开相应的隔离。TrustZone技术能够为不同的处理器核上产生虚拟核和NMU来实现资源以及地址等内容的分离与处理,并在AMBAAXI3系统总线和AXI-to-APB桥来达到对总线资源以及外设资源等的有效分离与间隔。值得注意的是,当前TrustZone技术无法对外存资源进行有效分离与管理,缺乏可支持的硬件设施。
2.3 操作系统安全缺陷
(1)通用操作系统
为实现应用系统的有效运行,要确保可信运行环境与通用操作系统二者能够有效发挥其作用。基于此,通用操作系统如果出现安全性问题则会影响到可信运行环境的稳定性。如果想要进入安全服务体系,则要借助通用操作系统的客户端实现对TEE客户端API的命令申请来完成可信应用操作。值得注意的是,可信应用无法判断申请应用的客户端是否符合要求,其安全性问题无法保证。在现实中,攻击者借助所找到的系统漏洞来对突破客户端限制而获取嵌入式系统安全可信运行环境研究相应资源和服务,也能够借助服务请求来判断系统所存在的漏洞情况。
(2)可信操作系统
随着可信运行环境的应用领域不断扩展,软件系统构建的要求与日俱增。当前可信操作系统早已发展成较为完善的体系,兼具可拓展性与可交互性两种功能。由于应用环境的差异,可信操作系统的功能也产生了差异性变化,比如在网络通信、生物识别等不同条件下的功能要求会有区别。针对这样的问题,GP组织实现了对TEE系统的整合升级,在原本架构上提高了服务接口的标准,以此实现对可信运行环境的差异性调控。目前来说,可信操作系统仅仅在TrustZone环境下运行,能够实现对GP TEE规范的管理与连接。但是在这一操作中,设计者并未根据系统安全性能的考虑以及安全操作标准来构建可信系统,也难以为外部用户提供可值得信赖的证明。
3 安全性设计与实现
按照常规情况,一些不希望被非法用户获取的信息会被关键领域的嵌入式计算机存储设备中存储。为了确保安全可信运行环境,确保数据不被外界非法窃取或者进行违规非法侵入操作。具体讲,在系统中嵌入认证及自毁机制来实现系统高安全性。
3.1 系统认证机制
在系统安全管理中,需要禁止非法用户的使用。在针对非法用户非法入侵中,嵌入式控制系统需对用户进行必须要的身份认证,采取严苛的认证手段,保证系统的安全性。比如常见的系统中普遍采取的单一的认证方式。在嵌入式系统的认证性能中,要确保应用在系统中存在多样化的认证方式。比如较为成熟的SD卡认证、口令认证、指纹认证等。这三种技术认证一方面能保证方便集成到系统,另一方面也可以保证用户实际操作。
(1)SD卡认证
SD卡(Secure Digital Memory Card)是一种基于信息加密技术存储设备,其自身轻巧、可加密、传输速度高,被广泛应用于手持设备。其具有记忆容量高、传输率快、移动灵活性大以及安全性好等优势。目前在很多嵌入式系统中第一级身份认证往往采用SD卡认证。采用SD卡,用户可以轻松携带,使用方便,最大限度防止设备丢失。用户使用SD卡简单方便,使用时只需取出SD卡,并将它插入对应匹配的系统SD卡槽中,正常情况下系统会对SD卡数据进行读取,并将SD卡内存储的信息进行存储。最后,对计算得到的内容与底板内预存的用户信息表进行解析,并形成有效比对,系统自动识别查询得出相应项完成认证。
(2)口令认证
在系统使用前,其内部已经嵌入合法用户的口令字,并存储在系统内。口令认证建立在SD卡认证基础上,能够通过进一步的安全设置来提升系统供电开机的安全性。用户在第一级认证完成后,第二级进入口令认证,双重认证启动并成功后,系统才可以供电给系统计算单板,并完成系统启动等待系统的其他操作。
(3)指纹认证
系统在指令执行前对身份识别也是非常有必要的。系统性能的保证和维护,需要指令执行得到快速响应。为此,需提供一种即快速又安全的认证手段。指纹认证的方式是在目标系统内集成一个快捷的指纹模块,作为指纹身份认证的接口,可以最大限度保证系统安全。
3.2 系统损毁机制
自毁技术的应用,实际上对于系统数据道德应用来说具有很强的安全性,能够有效规避数据外泄风险,确保信息资料不受到外界的破坏与盗取。系统损毁机制能够实现自行毁坏,按照系统所遭受的攻击程度与类别,会自主研判自毁程度与选取自毁行为。嵌入式系统控制计算机系统,最大限度确保系统整体的安全、可靠等特性。如若嵌
入式控制系统被非法用进行非法控制操作,会对嵌入式控制系统安全可信运行环境形成巨大威胁。当遭遇突发风险事件时,系统有必要采取系统自行损毁,最大限度保证应用的安全性。为此,如果深入研究损毁模块的内容,则需要按照损毁形式、程度、模式等不同的角度切入,以获得全面性数据。
借助可靠、科学的可信操作系统中嵌入式系统,可以尽可能提高安全性,对于系统中所产生的敏感性信息以及敏感性操作开展相应的保护与隐蔽,并在可信运行环境的基础上实现对入侵系统的完善与调整,从而确保系统能够在安全、稳定的环境下运行。嵌入式系统可信运行环境在当前不用行业中均受到了足够的重视,相信在未来时间内,在技术革新、创新与升级下,这项技术必将能能够产生更大的社会效益,以此实现技术领域的转型升级。
作者简介:陆俊峰(1978—),男,贵州兴仁人,博士研究生,高级工程师,本人从事高性能嵌入式处理器体系结构研究,以及ASIC芯片设计。参与多个国家重大专项研制了多款高性能DSP处理器芯片。研究方向:嵌入式处理器设计、集成电路设计。
原创文章,作者:Maggie-Hunter,如若转载,请注明出处:https://blog.ytso.com/170971.html