一种基于安全芯片的嵌入式操作系统运行环境监控方法技术方案

技术编号:30513950 阅读:25 留言:0更新日期:2021-10-27 22:56
本发明专利技术公开了一种基于安全芯片的嵌入式操作系统运行环境监控方法,包括如下步骤:安全启动;启动时将内核度量模块加载入内核;获取知识库;在用户层提供应用程序管理接口;系统内核模块获取可执行程序度量结果记录在度量日志中;开启管控模式,系统内核模块读取白名单中的内容,并查找对应文件的度量值,如果找到并比对成功则允许程序启动,否则阻止程序启动并将程序名和其度量值记录到报警日志中;应用程序利用安全芯片来进行算法测试。本发明专利技术提供一个安全可靠的程序运行时度量与管控机制,保证指定的可执行文件在运行时受到验证,保障其运行时未受到篡改,或发生篡改时能够及时留证。时留证。时留证。

【技术实现步骤摘要】
一种基于安全芯片的嵌入式操作系统运行环境监控方法


[0001]本专利技术属于计算机操作系统安全增强
,具体涉及一种基于安全芯片的嵌入式操作系统运行环境监控方法。

技术介绍

[0002]随着各类计算机系统的不断发展,各种形式的计算机系统已经深入到社会各个领域、各个层面,扮演着越来越重要的角色,特别是近年来移动智能终端和平板电脑等已经通过移动支付、移动办公等应用场景广泛用于承载和处理各类隐私和机密信息。由于所涉及信息的价值越来越高,计算机系统日益成为攻击者进行系统破坏和信息窃取的目标。
[0003]可信计算技术是一种基于硬件信任根、以度量和信任链为主要技术手段的新型安全技术。通过从硬件信任根开始,可信计算技术通过一级加载一级、一级度量一级的方法构造设备内部或设备与设备之间的信任链,从而及时、可靠的发现系统中运行的非授权程序(潜在的恶意程序)并进行相应的处理(审计、管控和远程证明)。可信计算技术特别适用于对具有较高安全要求的计算设备进行保护。
[0004]作为可信计算技术所构建的信任链的重要一环,操作系统内核需要度量所启动的每个可执行程序。目前,最具有代表性的内核度量技术是美国IBM TJ.Wason研究院于2004年提出的IMA(Integrity Measurement Architecture)度量架构,该架构自2.6.30版本之后被Linux基金会接受为内核主线代码并在不断更新中。
[0005]IMA架构采用的是一种启动时度量技术,即对可执行程序的度量时机选择在程序启动时。由于该类度量技术可以在很大程度上保障所执行程序的完整性,但是不会对程序(启动之后的)运行产生任何影响,在系统安全性和性能之间取得了良好权衡,因而被广泛任何和接受。嵌入式操作系统由于其底层使用的是Linux内核,可以使用IMA架构对其上层应用进行安全防护。但是现有技术尚存在以下几个问题:
[0006]1.安全芯片在嵌入式移动终端的集成与使用。现有嵌入式移动终端通常由于成本等原因没有集成安全芯片,即使集成有安全芯片在软件层面也没有提供太多的支持和使用。但由于安全芯片本身的高安全性,需要构建以安全芯片为基础的可信应用和安全管理。
[0007]2.完整性度量技术在嵌入式平台的实现。传统的完整性度量技术主要关注于PC平台,嵌入式平台虽然其内核使用的是通用的Linux内核,但是其与具体的应用层面仍然有一定的距离,需要构建从内核级到应用级的完整安全防护体系。

技术实现思路

[0008]本专利技术的目的在于提供一种基于安全芯片的嵌入式操作系统运行环境监控方法,利用Linux程序启动时度量技术(例如Linux的完整性度量架构,即IMA架构)来为嵌入式系统的上层应用提供安全防护。将嵌入式可执行程序在启动时进行度量,从而为使用Linux操作系统的计算机设备提供一个安全可靠的程序运行时度量与管控机制,保证指定的可执行文件在运行时受到验证,保障其运行时未受到篡改,或发生篡改时能够及时留证。
[0009]本专利技术的目的通过以下技术方案实现:
[0010]一种基于安全芯片的嵌入式操作系统运行环境监控方法,其特征在于该方法包括以下步骤:
[0011]1)安全启动:基于硬件安全芯片在系统启动时对OS Bootloader以及操作系统镜像进行完整性度量并将度量值与存储在平台上的固件证书中的标准完整性值进行比较,同时基于设备上的根证书对OS Bootloader和操作系统镜像的固件证书进行验证,具有比软件实现方法更高的安全性,同时固件和证书无法被远程篡改,从而保证只有符合完整性要求和设备制造商授权的固件才能启动,实现了从硬件启动代码到操作系统内核的信任链功能,保证了设备初始运行环境的可信;
[0012]2)启动时将内核度量模块加载入内核:内核在启动时将内核度量模块加载,该内核度量模块负责在系统运行阶段在程序启动时度量程序启动文件并进行管控,不影响正常程序执行的效率;
[0013]3)获取知识库:系统启动后,在当前可信状态下,对所有的可执行文件进行扫描,形成知识库;知识库主要用来收集进程、so等关键系统信息的标准参考值,为白名单的制定提供基准数据。可信嵌入式主机配置完毕进行任何操作之前(假设初始状态可信),采用知识库收集工具对操作系统组件、安全模块组件、嵌入式应用系统组件进行逐一收集,收集的信息包含文件名、文件路径、SM3完整性度量值等,并对收集的数据进行统一记录,该数据为制定白名单和可信策略时提供基准可信数据,该步骤在开启业务功能前进行,不影响正常程序执行效率;
[0014]4)在用户层提供应用程序管理接口;
[0015]5)系统内核模块获取可执行程序度量结果记录在度量日志中;
[0016]6)开启管控模式,系统内核模块读取白名单中的内容,并查找对应文件的度量值,如果找到并比对成功则允许程序启动,否则阻止程序启动并将程序名和其度量值记录到报警日志中;
[0017]7)应用程序随后通过读取度量日志和报警日志,来向用户输出当前已执行过的程序的度量结果和试图启动但不在白名单中的程序;
[0018]8)应用程序利用安全芯片来进行算法测试。
[0019]进一步,步骤1)中,在安全启动过程中使用安全芯片保存密钥、哈希和签名验证。
[0020]步骤2)中,该内核度量模块利用LSM(Linux安全模块)接口中的mmap hook接口,度量需要进行映射的文件内容,并记录在securityfs中的度量日志中;其中度量使用安全芯片提供的sm3算法。
[0021]步骤3)中知识库获取过程中,对嵌入式应用中的代码段部分进行获取并度量。知识库中每一项为可执行程序文件路径及其哈希度量值,度量算法使用sm3算法;扫描对象为通过判断其文件头是否是可执行文件的文件头来决定是否度量并记录。
[0022]步骤4)中应用程序接口包括白名单管理(知识库读取为白名单,白名单增删改查,白名单导入到内核),日志管理(度量日志读取,报警日志读取),系统配置(管控模式开启关闭),算法功能测试(测试安全芯片提供的密码算法性能)。
[0023]步骤5)中系统内核模块获取要启动的程序的文件名,并且读取相应的文件内容,之后利用安全芯片的SM3算法对文件内容进行度量。
[0024]步骤6)中,通过procfs将白名单文件中的内容导入到系统内核模块中,系统内核模块在程序执行前,利用安全芯片对程序代码段进行度量,并通过判断其是否是合法的来决定是否允许启动。
[0025]步骤8)中,测试包括哈希、加解密、签名,其哈希算法使用sm3,签名算法使用sm2,加解密算法使用sm4。
[0026]本专利技术中,在系统运行阶段,任何程序启动运行时都将调用mmap()系统调用从而将可执行程序(代码段)映射到内存,利用获取的知识库,在这个阶段对程序进行判断和管控。
[0027]程序度量:首先获取要启动的程序的文件名,并且读取相应的文件内容,之后利用安全芯片的SM3算法对文件内容进行度量,并获取其度量结果本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于安全芯片的嵌入式操作系统运行环境监控方法,其特征在于该方法包括以下步骤:1)安全启动:基于硬件安全芯片在系统启动时对OS Bootloader以及操作系统镜像进行完整性度量并将度量值与存储在平台上的固件证书中的标准完整性值进行比较,同时基于设备上的根证书对OS Bootloader和操作系统镜像的固件证书进行验证,具有比软件实现方法更高的安全性,同时固件和证书无法被远程篡改,从而保证只有符合完整性要求和设备制造商授权的固件才能启动,实现了从硬件启动代码到操作系统内核的信任链功能,保证了设备初始运行环境的可信;2)启动时将内核度量模块加载入内核:内核在启动时将内核度量模块加载,该内核度量模块负责在系统运行阶段在程序启动时度量程序启动文件并进行管控,不影响正常程序执行的效率;3)获取知识库:系统启动后,在当前可信状态下,对所有的可执行文件进行扫描,形成知识库;4)在用户层提供应用程序管理接口;5)系统内核模块获取可执行程序度量结果记录在度量日志中;6)开启管控模式,系统内核模块读取白名单中的内容,并查找对应文件的度量值,如果找到并比对成功则允许程序启动,否则阻止程序启动并将程序名和其度量值记录到报警日志中;7)应用程序随后通过读取度量日志和报警日志,来向用户输出当前已执行过的程序的度量结果和试图启动但不在白名单中的程序;8)应用程序利用安全芯片来进行算法测试。2.如权利要求1所述的基于安全芯片的嵌入式操作系统运行环境监控方法,其特征在于,步骤1)中,在安全启动过程中使用安全芯片保存密钥、哈希和签名验证。3.如权利要求1所述的基于安全芯片的嵌入式操作系统运行环境监控方法...

【专利技术属性】
技术研发人员:程伟华徐超承轶青王纪军张明远
申请(专利权)人:江苏电力信息技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1