基于国产化IT 基础设施的通用固件安全模型研究

2021-10-28 07:50徐辰福韦晓鹏
软件导刊 2021年10期
关键词:固件国产化漏洞

徐辰福,安 婧,韦晓鹏

(1.成都市陨石慢游科技有限公司,四川 成都 610096;2.辽宁轨道交通职业学院,辽宁沈阳 110023)

0 引言

目前,物联网、工业互联网、5G 等热门信息技术革命方兴未艾,已经成为中国新基建的核心组成部分。上述新兴技术的产业体系发展都必须依赖于底层硬件设备提供的存储和计算环境,而几乎所有的硬件设备都内置了可以确保其正常工作的底层软件——固件。固件是以软件形式固化存储于芯片的部件,是硬件设备中不可或缺的核心部件。在硬件设备体系中,固件位于底层芯片处理器与操作系统之间,是实现硬件设备初始化、操作系统启动引导和服务器集群远程监控的底层软件。因此,固件在产业链中发挥着连接设备底层硬件与操作系统的纽带作用。

硬件设备中的固件主要分为两类:第一类是基本输入输出系统(Basic Input/Output System,BIOS),第二类是基板管理控制器(Baseboard Management Controller,BMC)。BIOS 主要用于硬件初始化和操作系统引导实现;BMC 主要用于服务器远程运行状态监控、服务器远程电源管理等。固件的概念始于计算机系统,各种类型的计算机显卡、硬盘、主板中都含有固件,目前固件的概念已经扩展到各种类型的设备中,包括但不仅限于路由器、手机、物联网设备等。没有固件,设备将无法正常启动和运行;固件被攻击,设备将失去底层运行环境安全性保证。以物联网(Internet of Things,IoT)为例,IoT 设备承载着海量个人和组织隐私数据信息,IoT 的安全性直接影响平台的可用性。IoT 终端设备上的固件是一种嵌入在硬件中的软件,其承担着系统最基础、最底层的工作,是硬件设备的灵魂。攻击者通过提取IoT 终端设备中的固件数据进行反编译,分析设备的运行流程和网络行为,获取口令、密钥等敏感信息,进而执行漏洞利用和漏洞攻击。因此,IoT 设备的安全性很大程度上取决于固件安全与否。

本文对固件安全现状进行深度分析,提出针对国产化IT 基础设施产业的通用设备固件安全模型。通过该模型可以实现固件安全评估、固件安全防护和固件安全标准的有机整合,以期推动国产化IT 基础设施产业自主健康发展。

1 相关研究

综述性文献[1-3]针对设备之间日益增长的互联互通、制造商对安全的忽视、设备固件更新不及时或难以更新等问题,围绕当前嵌入式设备固件面临的安全风险,深度分析与总结了国内外最新研究成果,并对相关安全技术进行了综合分析与评估。Costin 等[4]提出第一个完全自动化的框架,该框架应用动态固件分析技术,以可伸缩的方式实现嵌入式固件映像中的自动漏洞发现,可以帮助用户、程序员和审计人员有效测试和保护支持互联网的嵌入式设备安全。Chen 等[5]设计了第一个专门针对网络连接COTS(Commercial Off-The-Shelf)设备的基于Linux 固件的可扩展自动化动态分析系统Firmadyne,该系统依赖基于软件的全系统仿真和一个插入指令的内核,实现了自动分析数千个固件二进制文件所需的可伸缩性。刘文祺[6]基于UEFI 固件并借鉴传统的恶意代码检测技术设计了一种新的恶意代码检测系统,解决了固件文件恶意代码特征提取、启动项信息特征提取、检测过程的模式匹配、固件驱动加载的问题,保障了UEFI 固件的安全。

以上针对固件安全的研究成果或多或少存在固件安全防护手段单一、固件安全相关标准缺乏、固件安全评估体系缺失以及国产化IT 基础设施产业体系支撑薄弱等问题。本文基于前人研究成果,针对国产化IT 基础设施产业的固件安全进行研究,提出系统化通用模型,弥补前人研究工作的不足。

2 固件安全现状

全球移动通信系统协会(Global System for Mobile communications Association,GSMA)统计报告指出,自2010 年起,全球IoT 设备数量呈现快速增长趋势,年复合增长率达19%,2020 年全球IoT 设备数量高达126 亿,万物互联已成为全球信息技术的发展趋势[7]。此外,根据国际数据公司(International Data Corporation,IDC)市场报告显示,2020 年全球IoT 市场规模超过1.36 万亿美元。

与此同时,针对固件的攻击事件呈现井喷态势。2016年以来,美国国家漏洞数据库中的漏洞数量每年都创新高,其中2019 年曝出的固件漏洞数量比2018 年增加了43%,比2016 年增长了7.5 倍。固件漏洞的激增不仅意味着攻击面迅速扩大,还表明攻击者越来越关注固件[8]。微软公司于2021 年进行的一项调查显示,83%的被调查企业在过去两年曾经遭受过固件攻击,例如2017 年9 月,一位黑客通过分析ofo 共享单车APP 的固件,发现了4 种攻击方法,并成功控制了共享单车[9];2017 年10 月,LIFX 智能灯泡被成功入侵,其固件泄露了密钥相关信息;2018 年Re-Con BRX 会议上,来自美国东北大学的两位研究员逆向分析了小米IoT 设备的内部固件,发现整个小米生态存在漏洞[10-11]。

通过分析各种固件攻击事件的前因后果,发现固件安全存在以下问题:①固件行业缺乏完善的安全评估体系,用户无法感知潜在的固件安全隐患;②固件安全防护手段单一或仅采用低安全级别的防护技术;③固件安全行业缺乏统一标准,固件安全孤岛随处可见[12]。

3 国产化固件安全威胁模型与技术实例

基于国产通用芯片(龙芯、飞腾、申威、威盛等)、国产操作系统(麒麟、红旗Linux、普华Linux 等)和国产应用软件(数据库、办公软件、中间件、浏览器等),可将固件安全威胁分为两大类:主动攻击威胁和漏洞利用攻击。主动攻击威胁是指攻击者从硬件、软件、网络3 个不同维度对固件进行攻击:在硬件层面,攻击者可通过调试接口、芯片、边信道攻击等方式对固件安全造成威胁;在软件层面,攻击者可通过恶意软件代码、操作系统代码溢出、后门等设计上的缺陷对固件安全产生威胁;在网络层面,攻击者利用通信协议中的安全漏洞、弱口令暴力破解等手段对固件数据安全进行攻击[13]。漏洞利用攻击主要是利用弱身份认证、不安全缺省配置、硬编码凭证、未认证管理接口、代码运行内存漏洞等手段,以被攻击固件设备为跳板,为后续网络攻击行为奠定基础。

针对固件安全面临的各类威胁,本文提出通用固件安全模型(General Firmware Security Model,GFSM),架构如图1 所示。GFSM 包含固件安全评估、固件安全防护和固件安全标准3 大组件。其中,执行固件安全评估能全面了解固件面临的各种风险与威胁,进而有针对性地制定固件安全防护方案[14]。固件安全防护组件为方案提供技术支撑。不同厂商提供的固件接口、架构和实现不同,在这种复杂的产业环境下实施固件安全防护应制定相应的固件安全标准,有利于推动固件安全的集约化、标准化和持续化发展。

Fig.1 GFSM architecture图1 GFSM 架构

3.1 固件安全评估

固件安全评估是GFSM 的起始点,开展安全评估工作可对固件的安全风险和威胁有清晰的认识和了解。固件安全评估主要包括固件漏洞扫描、固件恶意代码检测、固件风险评估和固件渗透测试4 个部分,利用公开、透明的手段与方法评估后导出评估结果[15],该评估结果具有客观性和可重复性,可作为引用证据。

(1)固件漏洞扫描。借鉴传统网络安全漏洞扫描的技术路线,快速分析并发现硬件设备固件中存在的安全漏洞,避免因弱口令、缓冲区溢出等漏洞导致固件设备权限控制混乱、用户提权等非法行为。通过自动化流水线技术对嵌入式固件进行仿真与动态分析,遍历固件文件系统中的所有文件内容和网络连接行为,与业界已知的固件漏洞库实时同步并实施漏洞扫描,发现固件安全盲点。同时,GFSM 引入固件安全沙箱机制,实现对未知固件漏洞的检测功能。通过联合静态漏洞库扫描与动态沙箱智能识别机制,全方位提高固件设备的漏洞扫描能力。

(2)固件恶意代码检测。利用恶意代码检测引擎对固件进行检测分析,识别出固件中的恶意代码,并生成恶意代码画像,包括威胁等级、标准编号、处置建议等参数。使用恶意代码检测引擎定义一组依靠可维护规则的数据结构,通过接口调用对输入数据进行恶意代码检测[16]。考虑到固件设备本身的硬件状况,恶意代码检测引擎将支持在线和离线两种检测方式,分析者根据固件本身的特点择优选择。

(3)固件风险评估。针对固件存在的风险要素(脆弱性、威胁、安全措施等)进行全面识别与评估,发现固件安全风险,评估风险的严重程度和影响范围,为后期固件升级、规划和调整提供科学、客观的依据。固件安全评估将风险管理的理念引入到固件安全领域,是固件安全管理最重要的手段之一。固件安全风险评估根据评估范围、人员能力、可用评估工具和国内/国内/行业评估标准实施安全风险评估。此外,固件安全风险评估不仅应按照评估计划按时执行,还需要根据行业外部情况不定时实施风险评估,实现评估工作的实战化、体系化、常态化和制度化。

(4)固件渗透测试。固件渗透测试模拟潜在攻击者的攻击手段,在授权可控的前提条件下对固件进行深层次、多维度、高强度的安全测试,充分挖掘固件可能存在的薄弱环节,为固件安全防护提供有针对性的安全风险评估。渗透测试的主要目的为模拟潜在的网络攻击者,对固件相关应用、网络和设备开展安全测试,查找可能隐藏于系统中的漏洞。渗透测试结合固件设备本身的硬件条件,充分利用黑盒测试、白盒测试和灰盒测试的特性,搭建国产化IT 基础设施固件安全供应链体系[17]。

固件拥有者由于缺乏相关领域的安全知识、专家经验和资源,无法对固件本身及周边的安全置信度是否在可接受范围内有清晰的判断,因此安全评估应运而生。固件安全评估的对象不仅仅是固件本身,还包括固件关联的软硬件环境和网络环境。安全评估针对的是固件信息的机密性、完整性和可用性,对多个评估示例抽象后得到的固件安全评估流程如图2 所示。

Fig.2 Firmware security assessment procedure图2 固件安全评估流程

固件安全评估需要在权威的安全评估框架内进行,从而保证评估结果具备较强的横向可比性。评估标准、评估方法和评估方案必须遵守统一的规章,以便实现不同评估机构之间评估结果的相互认可。固件评估中间结果和最终结果将通过负向反馈的方式,为固件安全评估的整体框架优化提供可靠的数据输入。此外,可将固件安全评估整体框架提交给统一可信的认证中心进行认证,从而在局部范围内达到固件安全评估结果的一致性。由认证中心颁发的固件评估结果将公开接受公众监督,并作为固件安全评估示范工程供全社会参考[18]。

3.2 固件安全防护

固件安全防护组件以固件安全评估结果为输入,针对固件存在的安全威胁和风险提供处置方案。固件安全防护措施包括固件漏洞补丁、固件安全加固、固件密钥管理、固件可信加密和固件可信签名5 种,利用上述手段可在一定程度上避免固件存在的安全风险和隐患。

(1)固件漏洞补丁。针对固件安全评估中发现的漏洞进行修复,避免攻击者利用已知漏洞向固件植入木马等恶意程序。针对固件漏洞的攻击事件频发意味着黑客的攻击下沉,攻击者通过固件漏洞实施嫁接攻击,从而进入局域网内部进行非法数据盗取,亦或通过固件漏洞控制“肉鸡”攻击其他网络平台的“滩头阵地”。漏洞补丁是消除漏洞最有效的手段,其可针对不同类型、不同用途和不同应用场景的固件设备制定不同等级的修复程序,以最快的速度修复固件存在的关键漏洞,消除固件安全隐患。

(2)固件安全加固。针对弱口令、安全策略、root 权限账号安全性、高风险服务等进行安全运维,并对高风险操作进行日志记录,防止出现安全事件后无据可查。通过设置复杂密码与安全密码策略、限制用户登录次数、禁止root用户远程登陆、更改默认常用服务端口、端口设置采用白名单策略和默认拒绝策略、设置账户登陆超时时间、定期审计系统日志、定期备份重要数据等多种方式全方位提高固件安全防护能力。

(3)固件密钥管理。固件中可能存储着密钥文件,因此需要对密钥的交换、存储和使用进行严格管理。密钥交换时必须通过安全信道或以密文的形式交换;密钥存储时使用可信存储,避免密钥丢失导致信任链被摧毁;密钥使用时需要身份认证并考虑密钥长度和密钥存储强度。通过密钥的生成、交换、存储、使用、销毁和更新实施全生命周期管理,实现密钥数据的保密性、完整性、可用性和数据源认证。

(4)固件可信加密。加密技术是指发送方通过加密密钥和加密函数将明文数据转换为无意义的密文数据,接收方再经过解密函数和解密密钥将该密文还原为原始明文数据的操作。加密技术是网络安全的基石,在数据保密、身份认证和数据完整性认证方面有广泛应用。使用国密SM4 分组密码算法对固件中存储的敏感数据和隐私数据实施加密处理,密钥信息由固件密钥管理模块进行管理,从而保护固件数据的安全性,避免恶意攻击者通过固件窃取敏感信息。

(5)固件可信签名。数字签名机制是指发送者产生其他任何人都无法伪造的数据值,以实现对信息发送者数据真实性认证的有效证明。数字签名是非对称密码算法和数字摘要技术的综合应用,通常包含签名运算和验证运算,两种运算互补实现鉴权、数据完整性保护和数据不可抵赖性。在固件更新、启动和升级过程中引入固件可信签名机制,利用国密SM2 椭圆曲线公钥密码算法对固件进行数字签名,可保护固件的完整性和可靠性,避免攻击者在固件更新、启动和升级过程中植入恶意代码,从而轻松实现固件攻击。

固件安全防护以固件安全评估结果为输入,根据评估的不同可量化结果使用针对性防护手段进行处置,并最终通过防护响应的层层传递完成固件安全风险处置机制的闭环,其处理框架如图3 所示。

Fig.3 Firmware security protection architecture图3 固件安全防护框架

固件安全评估结果包括固件漏洞信息、恶意代码信息、隐私泄漏风险以及其他可量化的风险指标。固件安全防护核心组件以评估结果作为输入,收集、分析并处置不同类型的安全风险事件。固件安全防护以漏洞补丁、安全加固、安全管理、数据加密、数字签名作为技术工具,形成资源池供总体框架调用。资源池工具对固件面临的安全风险进行处置,然后返回处置结果,并最终根据处置结果返回防护响应。需要特别指出的是,针对固件安全评估的处置是一个自循环流程,返回固件安全风险处置结果后需要再次对固件安全进行评估,并根据评估结果进行安全处置,从而避免在处置旧固件安全风险时引入新风险。

3.3 固件安全标准

固件安全标准是固件安全的重要基础保障,制订固件安全标准能有效推动固件设施行业的健康发展。此外,固件安全标准在国产化IT 基础设施发展中的作用也日益受到重视。标准的制定应充分考虑本国利益,同时兼容国际标准,形成“国内标准为主、国际标准为辅、两类标准并存”的现象。固件安全标准包括固件安全评估标准、固件密钥标准、固件加密标准、固件签名标准和固件升级标准,覆盖了固件安全保护的全生命周期。

(1)固件安全评估标准。风险评估是确定固件安全需求的重要途径。固件安全评估标准可作为固件安全性的评估依据,风险评估人员按照该标准实行评估时所需执行的最小动作。固件安全评估标准的核心包括静态功能指标、动态运行指标和状态属性指标,通过安全级别分类与功能属性分类相结合,确定固件安全评估对象、固件安全保护轮廓和固件安全保护目标。

(2)固件密钥标准。固件安全机制的实现依赖于密钥安全性,因此需要设立固件密钥标准对密钥的产生、传输、存储、使用和销毁进行全生命周期管理,避免密钥管理安全盲点。

(3)固件加密标准。嵌入式设备的特殊性决定其搭载的计算和存储能力有限,因此在固件数据机密性的保护过程中需要制定固件加密标准,在固件数据安全与性能之间达成平衡。

(4)固件签名标准。数字签名机制对设备的计算和存储能力有较高要求,而固件本身的体系架构决定了传统的公钥密码体制无法广泛应用,因此需要制定针对固件的数字签名标准,从而满足固件数字签名和验签的安全需求。

(5)固件升级标准。在万物互联时代,每台设备都可以被黑客视为攻击目标,开发商借助验证操作和安全版本控制确保所有固件和相关补丁都处于最新状态,可在一定程度上保证固件安全。为达成上述效果,需要依赖远程或无线(OTA)的方式更新和保护固件。基于固件升级标准,兼容的操作系统可将固件更新、应用至任何平台,类似于操作系统驱动程序或应用程序更新。

固件行业的发展离不开固件安全标准的制定。我国领导人多次在不同场合提出要强化标准引领,提升产业基础能力和产业链现代化水平,从长远战略角度为国产化固件行业的发展指明了方向。此外,固件安全评估和安全防护有赖于固件安全相关标准的制定,而技术创新与技术标准的结合决定了固件产业的发展方向和产业价值链的分配比。标准的制定需要产—学—研三位一体协调发展,从而推动固件安全标准的体系化。

3.4 国产化IT 基础设施产业

国产化IT 基础设施产业的核心在于通过各种终端应用推动国产化软硬件基础设施的搭建,解决网信领域核心技术受制于人的难题。国产化IT 基础设施涉及的领域主要包括通用芯片、操作系统和应用软件3 大类。

(1)通用芯片是核心处理器CPU 的技术和处理引擎,负责指令计算、时钟控制、数据处理等功能,是所有网络设备运算和存储必不可少的部分。GFSM 不仅完全兼容自主创新的国产CPU 品牌系列(例如龙芯、申威),而且支持获得国外授权引进的国产CPU 品牌系列(例如飞腾、兆芯、海光、海思、华芯通等)。

(2)操作系统是计算设备的核心,是底层硬件设备与上层应用系统的中间桥梁,负责CPU 底层调度、资源分配、内存管理、网络管理、文件管理等核心基础功能的实现。通用芯片和操作系统是国产化IT 基础设施产业发展的核心突破点,通用芯片决定了硬件产业链的发展方向和趋势,而操作系统关系到软件产业链的核心技术能力,两者共同决定了国产化IT 基础设施产业未来的发展道路。GFSM 基于国产通用芯片,充分适配中标麒麟、普华、深度、银河麒麟等主流国产操作系统。

(3)应用软件是基于国产CPU 和国产操作系统之上,为满足不同领域用户解决不同类型问题的需求而开发的程序集合。国产应用软件主要集中在数据库、中间件、浏览器、办公软件、打印设备、IP 网络等方面。GFSM 为国产应用软件搭建了以固件安全为核心特色的底层软硬件基础设施,一定程度上降低了对美国主导的全球IT 软硬件产业链的依附。

国产化IT 基础设施产业的愿景是通过各种丰富的行业应用拉动国产化软硬件基础设施的生态建设,解决中国信息技术产业发展面临的“卡脖子”问题。固件是构建国产化IT 基础设施核心产业链的底层关键技术之一,其安全性直接影响操作系统、芯片以及应用系统的正常运行。GFSM 模型通过固件安全评估、安全防护和安全标准3 个维度对国产化IT 基础设施产业的固件安全进行体系化研究,为国产化IT 基础设施的持续发展奠定了安全基础。

4 结语

本文首先对固件的标准定义进行阐述,分析固件对硬件设备启动、引导和监控等功能实现的重要性,指出固件安全是国产化IT 基础设施产业安全发展的重要基础。通过分析目前固件安全面临的威胁,针对国产化IT 基础设施体系的固件提出通用固件安全模型。该模型通过固件安全评估、固件安全防护和固件安全标准三大组件,搭建了基于国产通用芯片、操作系统和应用软件的固件安全体系,赋能国产化IT 基础设施产业发展。

目前,中国正在从制造业大国迈向制造业强国,核高基项目作为国家中长期发展纲要中的核心内容之一,其中的信息基础设施国产化替代研究将逐步展开。企业作为中国当前最具创新能力的实体,参与标准制定的能力和动力不足,固件安全行业也不例外。当前标准制定呈现“大政府、小企业”的怪象,标准制定者和实施主体脱钩导致技术标准不能满足现代化企业的需求,技术标准与产业创新脱节。未来,国家应当积极引导并鼓励企业参与标准制定,推动技术标准与技术创新的有效衔接,并积极参与国际标准工作的制定,提升国内标准的国际化程度,以先进标准引领国产化IT 基础设施迈向全球产业链中高端层次。

猜你喜欢
固件国产化漏洞
特大型桥梁供电系统国产化改造探讨
漏洞
元器件国产化推进工作实践探索
ASM-600油站换热器的国产化改进
基于国产化ITCS的卫星导航仿真研究
三明:“两票制”堵住加价漏洞
基于固件的远程身份认证
高铁急救应补齐三漏洞
提取ROM固件中的APP
一种通过USB接口的可靠固件升级技术