CN113961939A - 嵌入式操作系统安全的防护方法和系统 - Google Patents

嵌入式操作系统安全的防护方法和系统 Download PDF

Info

Publication number
CN113961939A
CN113961939A CN202111563641.4A CN202111563641A CN113961939A CN 113961939 A CN113961939 A CN 113961939A CN 202111563641 A CN202111563641 A CN 202111563641A CN 113961939 A CN113961939 A CN 113961939A
Authority
CN
China
Prior art keywords
security
operating system
firewall
secure
embedded operating
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202111563641.4A
Other languages
English (en)
Other versions
CN113961939B (zh
Inventor
邹华
李德建
刘昱
王于波
吴志鹏
谭浪
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
State Grid Corp of China SGCC
State Grid Information and Telecommunication Co Ltd
State Grid Jiangsu Electric Power Co Ltd
Beijing Smartchip Microelectronics Technology Co Ltd
Original Assignee
State Grid Corp of China SGCC
State Grid Information and Telecommunication Co Ltd
State Grid Jiangsu Electric Power Co Ltd
Beijing Smartchip Microelectronics Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by State Grid Corp of China SGCC, State Grid Information and Telecommunication Co Ltd, State Grid Jiangsu Electric Power Co Ltd, Beijing Smartchip Microelectronics Technology Co Ltd filed Critical State Grid Corp of China SGCC
Priority to CN202111563641.4A priority Critical patent/CN113961939B/zh
Publication of CN113961939A publication Critical patent/CN113961939A/zh
Application granted granted Critical
Publication of CN113961939B publication Critical patent/CN113961939B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/575Secure boot
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Storage Device Security (AREA)

Abstract

本发明实施例提供一种嵌入式操作系统安全的防护方法和系统,属于嵌入式技术领域。所述嵌入式操作系统安全的防护方法包括:通过安全加载模块U‑Boot将操作系统程序包Secure OS加载到片内静态随机存取存储器SRAM上,启动所述Secure OS,其中所述U‑Boot和所述SRAM通过安全防火墙保护;以及在操作系统运行阶段,通过所述安全防火墙保护操作系统、及该操作系统运行环境中所有组件的安全。在操作系统的引导/启动阶段和运行阶段,均通过安全防火墙加强嵌入式操作系统安全防护能力。

Description

嵌入式操作系统安全的防护方法和系统
技术领域
本发明涉及嵌入式技术领域,具体地涉及一种嵌入式操作系统安全的防护方法和系统。
背景技术
嵌入式系统是指一种嵌入机械或电气系统内部、由软件与硬件组成、能够进行独立运作、具有专用性和计算实时性的计算机系统。嵌入式系统的应用非常广泛,涉及机械控制、航空航天、交通管理、环境工程等多个领域;小到无线手持设备,大到工业自动化设备,都有嵌入式系统的用武之地。正因如此,保证嵌入式系统的安全性尤为重要。各类安全协议及标准在一定程度上解决了安全方面存在的部分问题,但更多安全性能受制于系统架构本身,只有在系统内部实现对各类攻击的防御部署,才能从根本上提升安全性能。
在嵌入式系统中,多核处理器系统由嵌入式操作系统(例如Linux)管理。该操作系统管理通过目标芯片实现的专用通信链路所连接的所有处理器和硬件IP上的任务分配。该专用通信链路有可被攻击者利用的安全漏洞。
由于需要考虑的潜在威胁和需要处理的各种类型的攻击很多,对通信安全的关注势必会占用嵌入式系统的一部分处理能力,因此,需要在信息传输安全与系统性能之间寻求一个良好的平衡。
发明内容
本发明实施例的目的是提供一种嵌入式操作系统安全的防护方法,该方法可以加强嵌入式操作系统安全防护能力。
为了实现上述目的,本发明实施例提供一种嵌入式操作系统安全的防护方法,所述嵌入式操作系统安全的防护方法包括:通过安全加载模块U-Boot将操作系统程序包Secure OS加载到片内静态随机存取存储器SRAM上,启动所述Secure OS,其中所述U-Boot和所述SRAM通过安全防火墙保护;以及在操作系统运行阶段,通过所述安全防火墙保护操作系统、及该操作系统运行环境中所有组件的安全。
可选的,在所述通过安全加载模块U-Boot将操作系统程序包Secure OS加载到片内静态随机存取存储器SRAM上之前,所述嵌入式操作系统安全的防护方法还包括:通过引导程序模块Boot ROM获取所述Secure OS;初始化所述Secure OS;通过二级程序加载器SPL校验所述Secure OS。
可选的,所述通过安全加载模块U-Boot将操作系统程序包Secure OS加载到片内静态随机存取存储器SRAM上包括:校验运行环境的安全性;校验运行环境的完整性;以及当运行环境的安全性和完整性校验完毕后,加载所述Secure OS。
可选的,所述校验运行环境的安全性包括:通过安全散列算法SHA计算处理器单元的哈希值;比较所计算的处理器单元的哈希值与通过内核哈希函数生成的哈希值;当两值相同时,运行环境通过安全性校验。
可选的,所述校验运行环境的完整性包括:通过公开密钥码体制RSA,校验存储在外部闪存中的哈希值的签名,以完成运行环境的完整性校验。
可选的,所述通过所述安全防火墙保护操作系统、及该操作系统运行环境中所有组件的安全包括:与系统总线和功能模块IP进行通信;读取块存储器Block RAM中的安全策略SP,并提取所述安全策略中的安全参数,其中所述Block RAM位于所述SRAM;比较所述安全参数和通信总线上的其它信号,基于比较结果,计算总线有效值;获取所述总线有效值,以确定是否阻止所述安全防火墙被配置的模块的数据路径。
可选的,在所述通过所述安全防火墙保护操作系统、及该操作系统运行环境中所有组件的安全之前,所述嵌入式操作系统安全的防护方法还包括:将所述安全防火墙的所述SP存储在所述Block RAM上。
可选的,所述安全防火墙分为本地防火墙和加密防火墙,所述将所述安全防火墙的所述SP存储在所述Block RAM上包括:将所述本地防火墙的所述SP存储在1个32位的所述Block RAM上;将所述加密防火墙的所述SP存储在6个32位的所述Block RAM上,每个所述Block RAM包括一个地址索引。
可选的,所述嵌入式操作系统安全的防护方法还包括:当检测到攻击时,将待获取的数据送回所述IP。
可选的,所述IP分为关键IP和非关键IP,所述嵌入式操作系统安全的防护方法还包括:根据所述IP的控制策略,对所述关键IP和所述非关键IP分别建立安全流,以作为所述IP的IP保护模式;控制所述关键IP与操作系统隔离;允许所述非关键IP被读取,不允许被写入。
可选的,所述嵌入式操作系统安全的防护方法还包括:根据定义的时间窗口检测攻击;当在预设周期内,未检测到任何攻击时,将所述IP的IP保护模式转为初始模式。
可选的,所述嵌入式操作系统安全的防护方法还包括通过所述安全防火墙保护外部存储器,包括:通过高级加密标准AES函数,生成密钥流,所述密钥流包括:时间戳、数据地址、从所述防火墙连接的所述Block RAM中读取的密钥;通过所述密钥流与明文进行计算得到计算密文。
可选的,所述嵌入式操作系统安全的防护方法还包括:通过请求事务的ID参数,确定是否通过所述安全防火墙阻止所述请求事务,所述请求事务的ID参数存储在所述安全防火墙配置的寄存器中。
本发明实施例还提供一种控制装置,所述控制装置包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序,以实现根据上述任意一项所述的嵌入式操作系统安全的防护方法。
本发明实施例还提供一种机器可读存储介质,该机器可读存储介质上存储有指令,该指令使得机器执行上述任意一项所述的嵌入式操作系统安全的防护方法。
本发明实施例还提供一种嵌入式操作系统安全的防护系统,该嵌入式操作系统安全的防护系统包括上述的控制装置,安全加载模块U-Boot、片内静态随机存取存储器SRAM、功能模块IP、系统总线、通信总线、以及配置在操作系统运行环境的内部组件上的安全防火墙。所述控制装置,用于在操作系统启动和运行阶段,通过所述安全防火墙保护操作系统、及该操作系统运行环境中所有组件的安全,所述安全加载模块U-Boot,用于将操作系统程序包Secure OS加载到所述SRAM上,所述SRAM作为启动和运行所述Secure OS的环境,所述IP用于通过所述通信总线与外部存储器交互,所述系统总线用于所述安全防火墙与操作系统运行环境的内部组件进行通信。
可选的,所述嵌入式操作系统安全的防护系统还包括:引导程序模块Boot ROM,用于获取所述Secure OS;二级程序加载器SPL,用于校验所述Secure OS。
可选的,所述U-Boot包括:安全加密模块,用于校验运行环境的安全性;密钥加密模块,用于校验运行环境的完整性,其中,所述安全加密模块、所述密钥加密模块配置有所述安全防火墙。
可选的,所述安全防火墙包括:第一防火墙接口,用于所述安全防火墙与系统总线和所述IP进行通信;读取模块,用于读取块存储器Block RAM中的安全策略SP,并提取所述安全策略中的安全参数,其中所述Block RAM位于所述SRAM;检查模块,用于比较所述安全参数和通信总线上的其它信号,并基于比较结果,计算总线有效值;第二防火墙接口,用于获取所述总线有效值,以确定是否阻止所述安全防火墙被配置的模块的数据路径。
可选的,所述安全防火墙被配置:寄存器,用于存储请求事务的ID参数,所述IP通过请求事务的ID参数,确定是否通过所述安全防火墙阻止所述请求事务。
通过上述技术方案,本发明实施例在操作系统的引导/启动阶段和运行阶段,均通过安全防火墙加强嵌入式操作系统安全防护能力。
本发明实施例的其它特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
附图是用来提供对本发明实施例的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本发明实施例,但并不构成对本发明实施例的限制。在附图中:
图1是本发明实施例提供的嵌入式操作系统安全的防护方法的流程示意图;
图2是嵌入式操作系统示例的运行环境的结构示意图;
图3是本发明实施例提供的安全防火墙示例的结构示意图;
图4是本发明实施例提供的嵌入式操作系统安全的防护系统的结构示意图。
附图标记说明
10-控制装置; 11-安全加载模块U-Boot;
12 内静态随机存取存储器SRAM; 13-功能模块IP;
14-系统总线; 15-通信总线;
16-安全防火墙; 20-外部存储器。
具体实施方式
以下结合附图对本发明实施例的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明实施例,并不用于限制本发明实施例。
图1是本发明实施例提供的嵌入式操作系统安全的防护方法的流程示意图,请参考图1,该嵌入式操作系统安全的防护方法可以包括以下步骤:
步骤S110:通过安全加载模块U-Boot将操作系统程序包Secure OS加载到片内静态随机存取存储器SRAM上,启动所述Secure OS,其中所述U-Boot和所述SRAM通过所述安全防火墙保护。
图2是嵌入式操作系统示例的运行环境的结构示意图,请结合图2所示的内容,该运行环境可以包括处理器单元(例如,包括两个双核处理器)、内部存储器单元(例如,片内静态随机存取存储器SRAM)、外部存储器(例如外部Flash(SD卡))、可以与外部存储器进行交互的功能模块IP(Intellectual Property)等组件。本发明实施例优选在该运行环境的内部各接口均配置安全防火墙。
步骤S110为本发明实施例在操作系统启动阶段的安全保护措施。优选的,在步骤S110之前,所述嵌入式操作系统安全的防护方法还可以包括(在操作系统引导阶段的安全保护措施):通过引导程序模块Boot ROM获取所述Secure OS;初始化所述Secure OS;通过二级程序加载器SPL校验所述Secure OS。
其中,所述Boot ROM为固化在CPU内部的引导程序组件。以Linux系统(包括Linux操作系统和该操作系统的运行环境)为例,通过下述步骤1)-3),描述本发明实施例的嵌入式操作系统安全启动过程:
1)通过Boot ROM,加载SPL到SRAM中;
2)通过SPL,加载并校验Sloader、Secure OS、U-Boot;
3)Secure OS初始化后,通过U-Boot,加载Linux到DDR中,检验后启动Linux。
Boot ROM从Storage(SD/eMMC/NAND)加载spl.pak(TPKS+SPL)到片内安全SRAM。SPL加载并校验Sloader、Secure OS、U-Boot,并跳转到Sloader开始执行。完成Secure OS初始化后,跳转到U-Boot执行。U-Boot加载Linux(Kernel+ramdisk)到DDR,该操作首先要通过加密防火墙,该加密防火墙为安全防火墙的一种,对于安全防火墙的详细设计在后文中描述,此处先不赘述。
优选的,步骤S110还可以包括:校验运行环境的安全性;校验运行环境的完整性;以及当运行环境的安全性和完整性校验完毕后,加载所述Secure OS。
可以通过安全加密模块,校验运行环境的安全性;可以通过密钥加密模块,校验运行环境的完整性,其中,所述安全加密模块、所述密钥加密模块通过所述安全防火墙保护。
请参考图2,本发明实施例在操作系统的引导/启动阶段,通过安全防火墙对操作系统的安全性进行防御。
优选的,所述校验运行环境的安全性可以包括:通过安全散列算法SHA计算处理器单元的哈希值;比较所计算的处理器单元的哈希值与通过内核哈希函数生成的哈希值;当两值相同时,运行环境通过安全性校验。
安全散列算法(Secure Hash Algorithm,SHA)是一个密码散列函数家族,是FIPS所认证的安全散列算法。能计算出一个数字消息所对应到的,长度固定的字符串(又称消息摘要)的算法。且若输入的消息不同,它们对应到不同字符串的机率很高。
以Linux系统为例,通过SHA计算内核的哈希值,U-Boot将其与芯片中由哈希函数IP生成的哈希值进行比较,只有当两个值相等时,内核才会启动。
其中,内核指的是Linux内核,是硬件与软件之间的中间层,组成部分包括系统调用接口、进程管理、内存管理等,起到了控制作用。
优选的,所述校验运行环境的完整性包括:通过公开密钥码体制RSA,校验存储在外部闪存中的哈希值的签名,以完成运行环境的完整性校验。
RSA公开密钥密码体制是一种使用不同的加密密钥与解密密钥,由已知加密密钥推导出解密密钥在计算上是不可行的密码体制。在公开密钥密码体制中,加密密钥(即公开密钥)PK是公开信息,而解密密钥(即秘密密钥)SK是需要保密的。加密算法E和解密算法D也都是公开的。虽然解密密钥SK是由公开密钥PK决定的,但却不能根据PK计算出SK。
以Linux系统为例,U-Boot使用RSA加密算法IP,验证存储在外部闪存(SD卡)中的哈希值的签名,以验证内核的完整性;RSA通过加密防火墙保护(安全防火墙);U-Boot转移到内核,内核的Linux可以启动。
步骤S120:在操作系统运行阶段,通过所述安全防火墙保护操作系统、及该操作系统运行环境中所有组件的安全。
以在Linux系统的运行阶段为例,在Linux系统中通过安全防火墙以保护系统免受威胁的影响。可以在每个外围设备和通信总线间设置安全防火墙以加强操作系统、及该操作系统运行环境中所有组件的安全性能,防火墙用于在信息或数据到达通信总线和在运行环境内传播之前对其进行监督。
图3是本发明实施例提供的安全防火墙示例的结构示意图,请参考图3,所述安全防火墙优选可以包括第一防火墙接口、第二防火墙接口、读取模块、检查模块。
请参考图2和图3,优选的,步骤S120可以包括:通过所述第一防火墙接口与系统总线和功能模块IP进行通信;通过所述读取模块读取块存储器Block RAM中的安全策略SP,并提取所述安全策略中的安全参数,其中所述Block RAM位于所述SRAM;比较所述安全参数和通信总线上的其它信号,通过所述检查模块基于比较结果,计算总线有效值;所述第二防火墙接口获取所述总线有效值,以确定是否阻止所述安全防火墙被配置的模块的数据路径。
其中,功能模块IP(Intellectual Property),在集成电路中指的是一些有特定功能的模块,例如滤波器、I/O控制器、内存控制器等,这些功能模块可以移植、修改参数并直接使用。
其中,第一防火墙接口通过系统总线与所述IP通信;第二防火墙接口通过通信总线与所述外部存储器通信。通信协议为总线通信协议(Advanced eXtensible Interface,AXI)。
AXI是一种总线协议,该协议是ARM公司提出的(Advanced Microcontroller BusArchitecture,AMBA)3.0协议中最重要的部分,是一种面向高性能、高带宽、低延迟的片内总线。它的地址/控制和数据相位是分离的,支持不对齐的数据传输,同时在突发传输中,只需要首地址,同时分离的读写数据通道、并支持Outstanding传输访问和乱序访问,并更加容易进行时序收敛。AXI 是AMBA 中一个新的高性能协议。AXI 技术丰富了现有的AMBA 标准内容,满足超高性能和复杂的片上系统(SoC)设计的需求。
以在Linux系统的运行阶段为例,第一防火墙接口用于系统总线和所述IP(I/O控制器、内存控制器)之间的通信;读取模块用于读取所述Block RAM中定义的所述SP,并提取安全参数。安全参数被提取后,其值会与AXI通信总线的其他信号作比较,检查模块通过比较结构计算出一个能够表示总线值有效的值,并将其传输给第二防火墙接口,第二防火墙接口的作用是决定是否阻止安全防火墙内的数据路径。
优选的,在步骤S120之前,所述嵌入式操作系统安全的防护方法还可以包括:将所述安全防火墙的所述SP存储在所述Block RAM上。
进一步优选的,所述安全防火墙分为本地防火墙和加密防火墙,所述将所述安全防火墙的所述SP存储在所述Block RAM上包括:将所述本地防火墙的所述SP存储在1个32位的所述Block RAM上;将所述加密防火墙的所述SP存储在6个32位的所述Block RAM上,每个所述Block RAM包括一个地址索引。
以示例说明,将一个所述Block RAM连接至用于所述SP存储的每个安全防火墙;本地防火墙SP存储在单个32位块上,而加密防火墙SP存储在6个32位块上,每个块都由一个地址索引,这有助于读取模块准确找到读取目标SP的第一个块,之后读取所有的SP块。
优选的,所述嵌入式操作系统安全的防护方法还可以包括:当检测到攻击时,将待获取的数据送回所述IP。
进一步优选的,所述IP分为关键IP和非关键IP,所述嵌入式操作系统安全的防护方法还包括:根据所述IP的控制策略,对所述关键IP和所述非关键IP分别建立安全流,以作为所述IP的IP保护模式;控制所述关键IP与操作系统隔离;允许所述非关键IP被读取,不允许被写入。
以示例说明,Linux操作系统运行环境中的所有组件、防火墙、所述IP等都连接在系统总线上。优选可以为检测攻击的所述IP设置与每个防火墙连接的可信的自定义总线(例如,AXI总线),当检测到攻击事件时,信息/数据将被发送回所述IP;根据所述IP控制机密信息的能力,建立两个安全流,用于不同的所述IP的保护模式,即关键IP和非关键IP。当检测到攻击时,关键IP不能泄露任何信息,此时关键IP与系统隔离;对于非关键IP,允许读取访问,不允许写入访问。
优选的,所述嵌入式操作系统安全的防护方法还包括:根据定义的时间窗口检测攻击;当在预设周期内,未检测到任何攻击时,将所述IP的IP保护模式转为初始模式。
承接上述示例,可以设置一个时间窗口,在其中IP保护模式设置为较低的安全级别,当固定周期内没有检测到任何攻击时,IP保护模式可以转为初始配置。
优选的,所述嵌入式操作系统安全的防护方法还包括通过所述安全防火墙保护外部存储器,可以包括:通过高级加密标准AES函数,生成密钥流,所述密钥流包括:时间戳、数据地址、从所述防火墙连接的所述Block RAM中读取的密钥;通过所述密钥流与明文进行计算得到计算密文。
进一步优选的,所述通过所述安全防火墙保护外部存储器还可以包括:当需要对外部存储器进行身份验证时,通过验证函数GHASH进行身份验证。
其中,高级加密标准(Advanced Encryption Standard,AES)为对称加密算法。验证函数GHASH为glib中hash表函数。
以示例说明,在保密性和身份验证方面保护外部存储器,以获得较好的面积/延时开销;使用AES函数生成一个密钥流(含有时间戳、数据地址和从与加密防火墙连接的所述Block RAM中读取的密钥),该密钥流与明文可以进行异或运算以计算密文,时间戳和数据地址可防止重定向和重放攻击。如果需要身份验证,数据通路通过GHASH函数进行身份验证。
优选的,所述嵌入式操作系统安全的防护方法还可以包括:通过请求事务的ID参数,确定是否通过所述安全防火墙阻止所述请求事务,所述请求事务的ID参数存储在所述安全防火墙配置的寄存器中。
以示例说明,可以为安全防火墙设置一个额外的寄存器和一些逻辑(作用是将寄存器值处理为ID);在事务(数据的读或写)本身之前传输要写入防火墙寄存器中的ID,事务由防火墙进行处理,防火墙通过ID决定是否阻止该事务。
本发明实施例还提供一种控制装置,所述控制装置包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序,以实现根据步骤S110-S120所述的嵌入式操作系统安全的防护方法。
本发明实施例还提供一种机器可读存储介质,该机器可读存储介质上存储有指令,该指令使得机器执行根据步骤S110-S120所述的嵌入式操作系统安全的防护方法。
图4是本发明实施例提供的嵌入式操作系统安全的防护系统的结构示意图,请参考图4,该嵌入式操作系统安全的防护系统可以包括上述的控制装置10,安全加载模块U-Boot11、片内静态随机存取存储器SRAM12、功能模块IP13、系统总线14、通信总线15、以及配置在操作系统运行环境的内部组件上的安全防火墙16。
其中,所述控制装置10,用于在操作系统启动和运行阶段,通过所述安全防火墙保护操作系统、及该操作系统运行环境中所有组件的安全;所述安全加载模块U-Boot11,用于将操作系统程序包Secure OS加载到所述SRAM上;所述SRAM12作为启动和运行所述SecureOS的环境;所述IP13用于通过所述通信总线15与所述外部存储器20交互;所述系统总线14用于所述安全防火墙16与操作系统运行环境的内部组件进行通信。
图2可以作为图4的示例图,其中,控制装置例如为处理器单元,可以包括两个双核处理器。
其中,系统运行环境的内部组件均配置安全防火墙16。例如DDR控制器等。
优选的,所述嵌入式操作系统安全的防护系统还包括:引导程序模块Boot ROM,用于获取所述Secure OS;二级程序加载器SPL,用于校验所述Secure OS。
以Linux系统(包括Linux操作系统和该操作系统的运行环境)为例,Boot ROM从Storage(SD/eMMC/NAND)加载spl.pak(TPKS+SPL)到片内安全SRAM。SPL加载并校验Sloader、Secure OS、U-Boot,并跳转到Sloader开始执行。完成Secure OS初始化后,跳转到U-Boot执行。U-Boot加载Linux(Kernel+ramdisk)到DDR,该操作首先要通过加密防火墙(安全防火墙的一种)。
优选的,所述U-Boot11可以包括:安全加密模块,用于校验运行环境的安全性;密钥加密模块,用于校验运行环境的完整性,其中,所述安全加密模块、所述密钥加密模块配置有所述安全防火墙。
以Linux系统为例,在系统启动阶段,通过SHA计算内核的哈希值,U-Boot11将其与芯片中由哈希函数IP生成的哈希值进行比较,只有当两个值相等时,控制装置10才会启动。U-Boot11使用RSA加密算法IP,验证存储在外部闪存(SD卡)中的哈希值的签名,以验证内核的完整性;RSA通过加密防火墙保护(安全防火墙);U-Boot转移到控制装置10,控制装置10的Linux可以启动。
请参考图3和图4,优选的,所述安全防火墙16可以包括:第一防火墙接口,用于所述安全防火墙与系统总线和所述IP进行通信;读取模块,用于读取块存储器Block RAM中的安全策略SP,并提取所述安全策略中的安全参数,其中所述Block RAM位于所述SRAM;检查模块,用于比较所述安全参数和通信总线上的其它信号,并基于比较结果,计算总线有效值;第二防火墙接口,用于获取所述总线有效值,以确定是否阻止所述安全防火墙被配置的模块的数据路径。
进一步优选的,所述安全防火墙16可以被配置:寄存器,用于存储请求事务的ID参数,所述IP通过请求事务的ID参数,确定是否通过所述安全防火墙阻止所述请求事务。
需要说明,本发明实施例提供的嵌入式操作系统安全的防护系统和方法实施例的内容类似,通过所述安全防火墙16保护操作系统、及该操作系统运行环境中所有组件的安全的详细内容请参考步骤S110-120的方法实施例,此处不再赘述。
据此,本发明实施例在操作系统的引导/启动阶段和运行阶段,均通过安全防火墙加强嵌入式操作系统安全防护能力。在操作系统引导/启动阶段,通过安全防火墙、以及安全加密、密钥加密等措施,将操作系统程序包Secure OS安全地加载到片内静态随机存取存储器SRAM上;在操作系统的运行阶段在运行环境的每个外围设备和通信总线间设置安全防火墙,以加强其安全性能,进一步提高了操作系统的完整性、灵活性,并实现了低延迟,维持了安全和性能之间的平衡。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器 (CPU)、输入/输出接口、网络接口和内存。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。存储器是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存 (PRAM)、静态随机存取存储器 (SRAM)、动态随机存取存储器 (DRAM)、其他类型的随机存取存储器 (RAM)、只读存储器 (ROM)、电可擦除可编程只读存储器 (EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘 (DVD) 或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体 (transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (20)

1.一种嵌入式操作系统安全的防护方法,其特征在于,嵌入式操作系统安全的防护方法包括:
通过安全加载模块U-Boot将操作系统程序包Secure OS加载到片内静态随机存取存储器SRAM上,启动所述Secure OS,其中所述U-Boot和所述SRAM通过安全防火墙保护;以及
在操作系统运行阶段,通过所述安全防火墙保护操作系统、及该操作系统运行环境中所有组件的安全。
2.根据权利要求1所述的嵌入式操作系统安全的防护方法,其特征在于,在所述通过安全加载模块U-Boot将操作系统程序包Secure OS加载到片内静态随机存取存储器SRAM上之前,所述嵌入式操作系统安全的防护方法还包括:
通过引导程序模块Boot ROM获取所述Secure OS;
初始化所述Secure OS;
通过二级程序加载器SPL校验所述Secure OS。
3.根据权利要求1所述的嵌入式操作系统安全的防护方法,其特征在于,所述通过安全加载模块U-Boot将操作系统程序包Secure OS加载到片内静态随机存取存储器SRAM上包括:
校验运行环境的安全性;
校验运行环境的完整性;以及
当运行环境的安全性和完整性校验完毕后,加载所述Secure OS。
4.根据权利要求3所述的嵌入式操作系统安全的防护方法,其特征在于,所述校验运行环境的安全性包括:
通过安全散列算法SHA计算处理器单元的哈希值;
比较所计算的处理器单元的哈希值与通过内核哈希函数生成的哈希值;
当两值相同时,运行环境通过安全性校验。
5.根据权利要求3所述的嵌入式操作系统安全的防护方法,其特征在于,所述校验运行环境的完整性包括:
通过公开密钥码体制RSA,校验存储在外部闪存中的哈希值的签名,以完成运行环境的完整性校验。
6.根据权利要求1所述的嵌入式操作系统安全的防护方法,其特征在于,所述通过所述安全防火墙保护操作系统、及该操作系统运行环境中所有组件的安全包括:
与系统总线和功能模块IP进行通信;
读取块存储器Block RAM中的安全策略SP,并提取所述安全策略中的安全参数,其中所述Block RAM位于所述SRAM;
比较所述安全参数和通信总线上的其它信号,基于比较结果,计算总线有效值;
获取所述总线有效值,以确定是否阻止所述安全防火墙被配置的模块的数据路径。
7.根据权利要求6所述的嵌入式操作系统安全的防护方法,其特征在于,在所述通过所述安全防火墙保护操作系统、及该操作系统运行环境中所有组件的安全之前,所述嵌入式操作系统安全的防护方法还包括:
将所述安全防火墙的所述SP存储在所述Block RAM上。
8.根据权利要求7所述的嵌入式操作系统安全的防护方法,其特征在于,所述安全防火墙分为本地防火墙和加密防火墙,所述将所述安全防火墙的所述SP存储在所述Block RAM上包括:
将所述本地防火墙的所述SP存储在1个32位的所述Block RAM上;
将所述加密防火墙的所述SP存储在6个32位的所述Block RAM上,每个所述Block RAM包括一个地址索引。
9.根据权利要求8所述的嵌入式操作系统安全的防护方法,其特征在于,所述嵌入式操作系统安全的防护方法还包括:
当检测到攻击时,将待获取的数据送回所述IP。
10.根据权利要求9所述的嵌入式操作系统安全的防护方法,其特征在于,所述IP分为关键IP和非关键IP,所述嵌入式操作系统安全的防护方法还包括:
根据所述IP的控制策略,对所述关键IP和所述非关键IP分别建立安全流,以作为所述IP的IP保护模式;
控制所述关键IP与操作系统隔离;
允许所述非关键IP被读取,不允许被写入。
11.根据权利要求10所述的嵌入式操作系统安全的防护方法,其特征在于,所述嵌入式操作系统安全的防护方法还包括:
根据定义的时间窗口检测攻击;
当在预设周期内,未检测到任何攻击时,将所述IP的IP保护模式转为初始模式。
12.根据权利要求6所述的嵌入式操作系统安全的防护方法,其特征在于,所述嵌入式操作系统安全的防护方法还包括通过所述安全防火墙保护外部存储器,包括:
通过高级加密标准AES函数,生成密钥流,所述密钥流包括:时间戳、数据地址、从所述防火墙连接的所述Block RAM中读取的密钥;
通过所述密钥流与明文进行计算得到计算密文。
13.根据权利要求6所述的嵌入式操作系统安全的防护方法,其特征在于,所述嵌入式操作系统安全的防护方法还包括:
通过请求事务的ID参数,确定是否通过所述安全防火墙阻止所述请求事务,所述请求事务的ID参数存储在所述安全防火墙配置的寄存器中。
14.一种控制装置,其特征在于,所述控制装置包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序,以实现根据权利要求1-13中任意一项所述的嵌入式操作系统安全的防护方法。
15.一种机器可读存储介质,其特征在于,该机器可读存储介质上存储有指令,该指令使得机器执行根据权利要求1-13中任意一项所述的嵌入式操作系统安全的防护方法。
16.一种嵌入式操作系统安全的防护系统,其特征在于,所述嵌入式操作系统安全的防护系统包括权利要求14所述的控制装置,安全加载模块U-Boot、片内静态随机存取存储器SRAM、功能模块IP、系统总线、通信总线、以及配置在操作系统运行环境的内部组件上的安全防火墙,
所述控制装置,用于在操作系统启动和运行阶段,通过所述安全防火墙保护操作系统、及该操作系统运行环境中所有组件的安全,
所述安全加载模块U-Boot,用于将操作系统程序包Secure OS加载到所述SRAM上,
所述SRAM作为启动和运行所述Secure OS的环境,
所述IP用于通过所述通信总线与外部存储器交互,
所述系统总线用于所述安全防火墙与操作系统运行环境的内部组件进行通信。
17.根据权利要求16所述的嵌入式操作系统安全的防护系统,其特征在于,所述嵌入式操作系统安全的防护系统还包括:
引导程序模块Boot ROM,用于获取所述Secure OS;
二级程序加载器SPL,用于校验所述Secure OS。
18.根据权利要求16所述的嵌入式操作系统安全的防护系统,其特征在于,所述U-Boot包括:
安全加密模块,用于校验运行环境的安全性;
密钥加密模块,用于校验运行环境的完整性,
其中,所述安全加密模块、所述密钥加密模块配置有所述安全防火墙。
19.根据权利要求16所述的嵌入式操作系统安全的防护系统,其特征在于,所述安全防火墙包括:
第一防火墙接口,用于所述安全防火墙与系统总线和所述IP进行通信;
读取模块,用于读取块存储器Block RAM中的安全策略SP,并提取所述安全策略中的安全参数,其中所述Block RAM位于所述SRAM;
检查模块,用于比较所述安全参数和通信总线上的其它信号,并基于比较结果,计算总线有效值;
第二防火墙接口,用于获取所述总线有效值,以确定是否阻止所述安全防火墙被配置的模块的数据路径。
20.根据权利要求19所述的嵌入式操作系统安全的防护系统,其特征在于,所述安全防火墙被配置:
寄存器,用于存储请求事务的ID参数,
所述IP通过请求事务的ID参数,确定是否通过所述安全防火墙阻止所述请求事务。
CN202111563641.4A 2021-12-20 2021-12-20 嵌入式操作系统安全的防护方法和系统 Active CN113961939B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111563641.4A CN113961939B (zh) 2021-12-20 2021-12-20 嵌入式操作系统安全的防护方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111563641.4A CN113961939B (zh) 2021-12-20 2021-12-20 嵌入式操作系统安全的防护方法和系统

Publications (2)

Publication Number Publication Date
CN113961939A true CN113961939A (zh) 2022-01-21
CN113961939B CN113961939B (zh) 2022-03-08

Family

ID=79473409

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111563641.4A Active CN113961939B (zh) 2021-12-20 2021-12-20 嵌入式操作系统安全的防护方法和系统

Country Status (1)

Country Link
CN (1) CN113961939B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117610025A (zh) * 2024-01-19 2024-02-27 国网信息通信产业集团有限公司 一种基于电力智能终端的嵌入式操作系统安全引导方法

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070294756A1 (en) * 2006-05-17 2007-12-20 Richard Fetik FirewallApparatus, Method and System
CN101122937A (zh) * 2007-09-21 2008-02-13 武汉大学 由星型信任链支持的嵌入式平台安全引导机制
US20090327678A1 (en) * 2007-04-10 2009-12-31 Dutton Drew J Enhancing Security of a System Via Access by an Embedded Controller to A Secure Storage Device
CN102932377A (zh) * 2012-11-28 2013-02-13 成都卫士通信息产业股份有限公司 一种ip报文过滤方法及装置
CN104794393A (zh) * 2015-04-24 2015-07-22 杭州字节信息技术有限公司 一种嵌入式分区映像安全认证及内核可信引导方法及其设备
CN105608385A (zh) * 2015-12-29 2016-05-25 南京理工大学 基于嵌入式可信计算模块的嵌入式设备可信启动方法
CN106384053A (zh) * 2016-09-14 2017-02-08 江苏北弓智能科技有限公司 移动操作系统可信启动方法和装置
CN109614798A (zh) * 2017-09-30 2019-04-12 华为技术有限公司 安全启动方法、装置及终端设备
CN111786949A (zh) * 2020-05-22 2020-10-16 山东鲁能软件技术有限公司 防火墙安全策略自动适配系统及方法

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070294756A1 (en) * 2006-05-17 2007-12-20 Richard Fetik FirewallApparatus, Method and System
US20090327678A1 (en) * 2007-04-10 2009-12-31 Dutton Drew J Enhancing Security of a System Via Access by an Embedded Controller to A Secure Storage Device
CN101122937A (zh) * 2007-09-21 2008-02-13 武汉大学 由星型信任链支持的嵌入式平台安全引导机制
CN102932377A (zh) * 2012-11-28 2013-02-13 成都卫士通信息产业股份有限公司 一种ip报文过滤方法及装置
CN104794393A (zh) * 2015-04-24 2015-07-22 杭州字节信息技术有限公司 一种嵌入式分区映像安全认证及内核可信引导方法及其设备
CN105608385A (zh) * 2015-12-29 2016-05-25 南京理工大学 基于嵌入式可信计算模块的嵌入式设备可信启动方法
CN106384053A (zh) * 2016-09-14 2017-02-08 江苏北弓智能科技有限公司 移动操作系统可信启动方法和装置
CN109614798A (zh) * 2017-09-30 2019-04-12 华为技术有限公司 安全启动方法、装置及终端设备
CN111786949A (zh) * 2020-05-22 2020-10-16 山东鲁能软件技术有限公司 防火墙安全策略自动适配系统及方法

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
M.D.GRAMMATIKAKIS 等: ""Security Effectiveness and a Hardware Firewall for MPSoCs,"", 《2014 IEEE INTL CONF ON HIGH PERFORMANCE COMPUTING AND COMMUNICATIONS》 *
张春胜: ""嵌入式防火墙的研究与实现"", 《中国优秀硕士学位论文全文数据库 信息科技辑》 *
杨昊: "基于嵌入式的网络与信息安全防火墙的设计与实现", 《信息与电脑(理论版)》 *
陈伟君等: "具有主动防御能力的防火墙的研究", 《嘉应学院学报》 *
陈兵等: ""基于ARM处理器的嵌入式防火墙设计与实现"", 《计算机工程》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117610025A (zh) * 2024-01-19 2024-02-27 国网信息通信产业集团有限公司 一种基于电力智能终端的嵌入式操作系统安全引导方法
CN117610025B (zh) * 2024-01-19 2024-04-05 国网信息通信产业集团有限公司 一种基于电力智能终端的嵌入式操作系统安全引导方法

Also Published As

Publication number Publication date
CN113961939B (zh) 2022-03-08

Similar Documents

Publication Publication Date Title
EP3937424B1 (en) Blockchain data processing methods and apparatuses based on cloud computing
CN109858265B (zh) 一种加密方法、装置及相关设备
Tiburski et al. Lightweight security architecture based on embedded virtualization and trust mechanisms for IoT edge devices
Francillon et al. A minimalist approach to remote attestation
Lesjak et al. Hardware-security technologies for industrial IoT: TrustZone and security controller
US9768951B2 (en) Symmetric keying and chain of trust
WO2016160209A1 (en) Technologies for secure server access using a trusted license agent
WO2006137947A1 (en) Programmable processor supporting secure mode
CN112948086B (zh) 一种可信plc控制系统
Francillon et al. Systematic treatment of remote attestation
WO2021004636A1 (en) Apparatus and method for disk attestation
EP3776303A1 (en) Instance handling of a trusted execution environment
CN113961939B (zh) 嵌入式操作系统安全的防护方法和系统
EP3221996B1 (en) Symmetric keying and chain of trust
CN111160905B (zh) 一种区块链节点用户请求处理保护方法及装置
Pop et al. Secure migration of WebAssembly-based mobile agents between secure enclaves
Wang et al. TVIDS: Trusted virtual IDS with SGX
Hao et al. Trusted block as a service: Towards sensitive applications on the cloud
KR20150089696A (ko) 접근제어와 우선순위기반 무결성 검증 시스템 및 그 방법
Khan et al. A novel trusted hardware-based scalable security framework for IoT edge devices
US20240037217A1 (en) Digital content management through on-die cryptography and remote attestation
CN116436681B (zh) 一种基于TrustZone的安全隔离系统、方法、终端及存储介质
García Aguilar et al. A Threat Model Analysis of a Mobile Agent-based system on Raspberry Pi
US11748484B2 (en) Tri-level secure separation kernel
EP4174694A1 (en) Method for securely executing an application

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant