GB_T 41388-2022 信息安全技术 可信执行环境 基本安全规范.pdf
- 文档部分内容预览:
新规范
6.1.4可信调试单元
可信调试单元负责整个设备的调试功能,其硬件基础应满足以下要求: 8 可信调试单元硬件子系统应保证所有侵人式调试机制能够被禁用; b)可信调试单元硬件子系统应保证所有调试机制(包括非侵人式和侵入式)可以被设定为只有可 信执行环境才能够使用; 可信调试硬件单元子系统应保证所有调试机制(包括非侵人式和侵入式)可以被富执行环境使 用;当可信调试硬件单元子系统被设定为富执行环境和可信执行环境都能够访问时,调试子系 统不允许访问或修改可信执行环境中的任何寄存器与存储器; 可信调试硬件单元子系统的寄存器使用过程中应保证持续供电,或者能够保证寄存器在系统 断电前被完整地保存并在系统恢复供电时完整恢复
可信外设指对驱动控制与数据采集有一定安全或隐私要求的一类外设。在使用可信外设前,系统 应被切换到可信执行环境内,以阻止任何停留在富执行环境的恶意代码监控和记录数据的输人。 对于采集与处理过程不能够完全由可信执行环境控制的外设,宜采用以下两种方式进行处理: a 加密传输方式,即在可信外设和可信执行环境之间建立加密通道,保证数据在传输过程中的机 密性、完整性、真实性; b) 监控方式,通过可信执行环境对富执行环境及整个设备的安全状态进行严格检测和监测,及时 控制风险
可信根为可信执行环境建立及运行提供支撑,可以是硬件、代码和数据。可信根应具备以下安
绿色建筑标准规范范本应具备机密性、完整性、真实性 度量和安全存储提供支持; b)应提供访问控制机制.保证未经授权的用
安全启动是通过安全机制来验证可信执行环境系统启动过程中每一个阶段软件代码的完整性和真 实性,防止非授权或被恶意套改的代码被执行。安全启动过程构建了一个信任链,整个过程始于一个可 信根,其他组件或代码需通过完整性和真实性验证才能被执行。安全启动过程应保证可信执行环境系 统的完整性和真实性。 安全启动应满足如下要求: a) 应保证用于验证完整性和真实性的密码算法本身的鲁棒性: 应保证可信根不可被替换或篡改; 应保证用于代码完整性和真实性验证的密钥不可被非授权替换或篡改,并提供安全的密钥更 新、撤销机制; d 应保证安全启动信任链按序逐级验证,不可被恶意绕过; 宜提供代码防回滚功能
可信虚拟化系统应具备以下能力: a 创建、删除等动态管理可信执行环境内虚拟机的能力; b) 管理可信执行环境中虚拟机内部CPU、内存、中断、外设等硬件资源的能力; 可信执行环境内虚拟机之间应具备互相通信和数据交换的能力。 可信虚拟化系统应具备如下安全要求: a 应保证可信执行环境内各虚拟机仅根据其所分配的权限访问相应的资源,不能越权访问; 应保证可信执行环境系统自身及内部虚拟机加载和运行过程的正确性与完整性: C 应保证可信执行环境系统自身及内部虚拟机数据与代码的真实性和完整性; d)可信执行环境内虚拟机之间的通信应具备一定的访问控制策略 可信虚拟化系统应避免赋予内部虚拟机最高等级权限,单一虚拟机出现崩溃或安全隐惠时,不应景 到可信执行环境系统自身及内部其他虚拟机的正常工作
可信操作系统应具备常规操作系统中的进程管理、内存管理、设备管理、文件管理等基本系统功能 可信操作系统要求在访问控制、身份鉴别、数据完整性、可信路径等方面满足相应的安全技术要求 包: a) 应保证可信应用及可信服务仅根据其所分配的权限访问相应的资源,不能越权访问; b) 应保证系统自身、可信服务与应用启动的正确性与完整性; ) 应保证系统自身、可信服务与应用数据和代码的真实性和完整性; ) 应具备可信应用之间、可信应用与可信服务之间的访间控制能力; e) 对于系统权限的管理,应避免赋予可信服务与应用最高权限,避免单一可信应用与服务出现异 常时,影响系统内核及其他可信应用与服务的正常工作
可信应用与服务管理负责可信执行环境下可信应用与可信服务的安装、更新、删除及其安全属性 理等。可信执行环境中的可信应用与服务,可采用本地方式管理,也可通过TAM后台进行远程 其所遵循的安全要求应保持一致
设备提供商(或授权服务商)根证书的管理、应用发布证书的签发;可信应用提供商负责可信应用的开 发,并经过应用发布证书对应的私钥签名后,将带签名的TA提交可信应用运营商进行发布;可信操作 系统对收到的带签名的TA,采用设备提供商(或授权服务商)根证书及该TA对应的应用发布证书,对 TA进行签名验证,如签名验证通过则执行后续的安装/更新
图2可信应用与服务管理架构
对可信应用及服务的管理,采用基于设备提供商(或授权服务商)根证书、应用发布证书认证的方 ,以确保应用数据的机密性、完整性、真实性和行为的不可否认性
9.2.3可信应用及服务部署
当采用互信通道将TA部署 并根据不同TA提供商所拥有
可信执行环境系统应集成可信时间服务,为可信应用及其他可信服务提供获取可信时间的功能。 可信时间分为系统时间与可信应用的持久化时间。系统时间具有任意的非持久性的起点,系统时间可 以基于专用的安全硬件实现,也可以基于TEE时间实现,不同的可信应用实例可以拥有不同的系统时 间。在整个可信应用实例生命周期中,系统时间不可以重置或回滚,不会因进入低功耗状态而影响系统 时间的正常运转;可信应用的持久化时间起点因每个可信应用的不同而不同,但应在重启过程中保持持 久化。
10.2可信加解密服务
可信执行环境系统应集 他可信服务提供加解密功能。 解密服务应保证仅获得相应 广可以访间密钥
可信执行环境系统应集成可信存储服务,为可信应用及其他可信服务提供可信存储功能。可信有 诸服务包括但不限于如下功能: a)对存储对象的读写操作要求确保操作的原子性、数据的机密性、数据的完整性; b)可信存储应具备访问控制机制,确保只有授权的应用才能访问相应的存储空间; c)可信存储宜提供对数据回滚工
10.4可信身份鉴别服务
可信执行环境系统可集成可信身份鉴别服务,为可信执行环境中的可信应用或其他可信服务提供 身份鉴别功能。可信身份鉴别服务通过识别用户的个人身份数字特征信息来识别用户身份的合法性、 是否有操作相关功能的权利等。可信身份鉴别服务可以采用但不限于下列身份鉴别方式完成用户合法 生的判断:口令、指纹、人脸。可信身份鉴别服务宜基于可信存储服务、可信人机交互、可信加解密服务 等其他可信服务的协同操作来完成
10.5可信设备鉴证服务
可信执行环境系统可集成可信设备鉴证服务,用于证明设备真实性。可信设备鉴证服务可以对外 提供但不限于如下种类的功能: a)证明设备标识的真实性及设备来源的真实性; b)监测可信执行环境运行的健康状态; c)监测富执行环境运行的健康状态
10.6可信人机交互服务
可信执行环境系统可集成可信人机交互服务,提供可信执行环境下的用户人机交互界面显示 功能,在用户和应用程序之间提供可信通道,具备抵御非法屏幕输人记录、非法屏幕显示内容截取 等攻击的防护能力
可信执行环境系统可集成SE管理服务,用于提供可信应用与SE之间的访问通道的功能,以满足 更高安全应用场景的需求。SE管理服务应具备访问控制机制以确保仅经过授权的可信应用可以访问 SE。可信执行环境对SE管理架构见图3
跨平合应用中间件主要用于解决不同可信执行环境系统之间的应用兼容性问题,具体包括四个功 模块: a 跨平台支持库,用于弥补不同可信执行环境系统本地支持库的差异; b) 安全驱动框架,针对NFC、摄像头、指纹等安全外设,建立统一驱动框架; C 跨平台编程语言,为解决不同可信执行环境系统对TA支持的兼容性问题,建立符合相应安全 要求的跨平台编程语言; d)跨平台API,支持不同平台对跨平台中间件调用的应用编程接口。 跨平台应用中间件整体框架见图4
图4跨平台应用中间件架构图
2.1可信应用基本架构
可信应用为可信执行环境下的应用程序,通过可信应用与服务管理系统进行管理,客户端应用与可 信应用之间通信,以及不同可信应用之间的通信,均应具备访间控制能力 可信应用通信的基本框架见图5,客户端应用通过安全代理通过富执行环境与可信执行环境之间 的通信通道,与可信应用实现数据交换。在可信执行环境内部,可信应用与可信应用之间根据需要可通 过内部通信通道进行数据交换。可信应用的具体应用场景,见附录B。
12.2可信应用加载的安全要求
图5可信应用通信框架
可信执行环境应具备对可信应用验证的能力,以达到保护可信应用内容、验证可信应用的合法 的。
12.3客户端应用与可信应用通信的安全要求
12.4可信应用与可信应用通信的安全要求
可信执行环境应具备某种访问控制机制,使得仅被授权的可信应用可以与目标可信应用进行通 信应用之间的通信,宜保证通信本身的机密性、完整性,除被授权的可信应用外,其他可信应用无 通信本身的信息。
硬件基本要求的测试评价方法如下 a)测试方法:
硬件基本要求的测试评价方法如下 a)测试方法:
1)申查厂商提交的文档,应查可信执行环现系统的硬件案构设计 2)尝试在富执行环境访问可信执行环境所隔离资源,包括但不限于:CPU、内存、时钟源、密 码单元、调试单元等。 ) 预期结果: 1)可信执行环境系统架构基于硬件级隔离机制实现,保证所隔离的可信执行环境的资源不 被富执行环境访问; 2)可信执行环境隔离的资源包括但不限于:CPU、内存、时钟源、密码单元、调试单元等。 c)结果判定: 上述预期结果均满足判定为符合,其他情况判定为不符合
13.1.1.2可信时钟源
可信时钟源的测试评价方法如下。 a)测试方法: 1)审查厂商提交的文档,检查可信执行环境的可信时钟源设计; 2)检查设备启动过程中对可信时钟源的配置; 3)在设备运行时,尝试禁用、关闭、篡改可信时钟源。 b)预期结果: 1)可信时钟源在设备加电启动后立即运行,且不能被禁用、关闭、篡改等; 可信执行环境具备防止因外部干扰等原因导致可信执行环境系统内的编程状态被破坏的 保护措施。 ) 结果判定: 上述预期结果均满足判定为符合,其他情况判定为不符合
13.1.1.3可信随机源
可信随机源的测试评价方法如下。 a)测试方法: 1)审查厂商提交的文档,检查可信执行环境的可信随机源设计,其所涉及的随机数发生器, 是否采用满足相关密码学要求的真随机数硬件发生器; 2) 尝试在可信执行环境之外访问随机数发生器。 b) 预期结果: 1)可信执行环境的可信随机源所涉及的随机数发生器,采用满足相关密码学要求的真随机 数硬件发生器; 2)随机数发生器被设置成只能通过可信执行环境访问。 C 结果判定: 上述预期结果均满足判定为符合,其他情况判定为不符合
13.1.1.4可信调试单元
可信调试单元的测试评价方法如下。 测试方法: 1 审查厂商提交的文档,检查可信执行环境的可信调试单元设计; 尝试通过侵人式调试机制使用可信调试单元; 3) 设置可信调试单元的所有调试机制(包括非侵入式和侵人式)仅被可信执行环境使用,尝 试在可信执行环境之外使用调试机制;
4)设置可信调试单元的所有调试机制(包括非侵入式和侵入式)可被富执行环境和可信执行 环境使用,尝试通过调试机制访问或修改可信执行环境中的寄存器与存储器; 5 设置可信调试单元硬件子系统的寄存器后,尝试执行系统断电,上电后,重新读取相应寄 存器,并与断电前的寄存器值进行比较。 b) 预期结果: 1) 可信调试单元硬件子系统保证所有侵人式调试机制能够被禁用; 2)可信调试单元硬件子系统保证所有调试机制(包括非侵人式和侵入式)可以被设定为只有 可信执行环境才能够使用; 3) 可信调试单元硬件子系统保证所有调试机制(包括非侵人式和侵入式)可以被富执行环境 使用;当可信调试硬件子系统被设定为富执行环境和可信执行环境都能够访问时,调试子 系统不允许访问或修改可信执行环境中的任何寄存器与存储器; 4 可信调试单元硬件子系统的寄存器使用过程中保证持续供电,或者能够保证寄存器在系 统断电前被完整地保存并在系统恢复供电时完整恢复。 结果判定: 上述预期结果均满足判定为符合,其他情况判定为不符合
13.1.1.5可信外设
可信外设的测试评价方法如下。 a)测试方法: 1 审查厂商提交的文档,检查可信执行环境的可信外设设计; 2) 在可信执行环境使用可信外设时,尝试通过富执行环境监控和记录可信外设的交互数据 3) 对于采集与处理过程不能够完全由可信执行环境控制的外设,检查可信外设和可信执行 环境之间的数据传输保护机制,验证可信执行环境是否具备对富执行环境及整个设备的 安全状态的监测和响应机制。 b)预期结果: 1) 在使用可信外设前,系统被切换到可信执行环境内,以阻止任何停留在富执行环境的恶意 代码监控和记录数据的输入。 2 对于采集与处理过程不能够完全由可信执行环境控制的外设,在可信外设和可信执行环 境之间加密传输数据,且可信执行环境具备对富执行环境及整个设备的安全状态的监测 和响应机制。 c)结果判定: 上述预期结果均满足判定为符合,其他情况判定为不符合。
测试方法: 1 审查厂商提交的文档,检查可信执行环境的可信根设计; 2) 检查可信执行环境系统的安全鉴证、安全度量和安全存储过程,验证可信根是否提供了机 密性、完整性、真实性等安全特性; 3)尝试使用未经授权的用户访问和篡改可信根的数据和代码,验证访问控制机制是否有效 b) 预期结果: 1)可信根具备机密性、完整性、真实性三个基本安全特性,为可信执行环境系统的安全鉴证 安全度量和安全存储提供支持:
2)可信根具备访问 c)结果判定: 上述预期结果均满足判定为符合,其他情况判定为不符合
[13.1.3 安全启动
13.2可信虚拟化系统
可信虚拟化系统的测试评价方法如下。 a) 测试方法: 1 审查厂商提交的文档,检查可信虚拟化系统的设计; 2 在可信执行环境内动态创建和删除虚拟机,并尝试管理虚拟机内部CPU,内存,中断,列 设等硬件资源; 3) 在可信执行环境内创建多个虚拟机,验证虚拟机之间是否支持互相通信及进行数据交换 检查虚拟机之间通信的访问控制策略,根据策略内容分别访问策略所允许访问和不允许 访问的虚拟机,验证策略是否有效; 4 在可信执行环境内创建多个虚拟机,尝试越权访问其他虚拟机的资源; 5) 检查可信执行环境内部虚拟机的加载和运行过程,尝试篡改相应数据和代码; 6) 检查可信虚拟化系统内部虚拟机的等级权限设置,验证是否赋予虚拟机最高等级权限。 b) 预期结果: 1 可信虚拟化系统具备创建、删除等动态管理虚拟机的能力,以及管理虚拟机的CPU,内 存,中断,外设等硬件资源的能力; 2 可信执行环境内虚拟机之间具备互相通信及进行数据交换的能力,且虚拟机之间通信具 备访问控制能力; 3)可信执行环境内虚拟机仅根据其所分配的权限访问相应的资源,不能越权访问;
代码的真实性和完整性: 5)可信虚拟化系统未赋予内部虚拟机最高等级权限,单一虚拟机出现崩溃或安全隐患时,不 会影响到可信执行环境系统自身及内部其他虚拟机的正常工作。 结果判定: 上述预期结果均满足判定为符合,其他情况判定为不符合
可信操作系统的测试评价方法如下。 a)测试方法: 1) 审查厂商提交的文档,检查可信操作系统的设计; 2) 检查可信操作系统的访问控制策略,尝试使用可信应用及可信服务分别访问策略所允许 和不允许访问的资源,验证策略是否有效; 3 检查可信操作系统自身、可信服务与应用启动过程,尝试套改启动代码和绕过完整性校验 过程; 4) 检查可信操作系统自身、可信服务与应用数据和代码的真实性和完整性保护机制,尝试篡 改相应数据和代码; 5) 检查可信应用之间、可信应用与可信服务之间的访问控制策略,尝试使用可信应用及可信 服务分别访问策略所允许和不允许访问的可信应用和可信服务,验证策略是否有效; 6 检查可信操作系统内部可信服务与可信应用的权限设置,验证是否赋予可信服务与可信 应用最高权限。 b)预期结果: 1)可信操作系统具备常规操作系统中的进程管理、内存管理、设备管理、文件管理等基本系 统功能; 2) 可信操作系统保证可信应用及可信服务仅根据其所分配的权限访问相应的资源,不能越 权访问; 3) 可信操作系统保证系统自身、可信服务与应用启动的正确性与完整性; 4) 可信操作系统保证系统自身、可信服务与应用数据和代码的真实性和完整性; 5) 可信应用之间、可信应用与可信服务之间具备访问控制能力; 6 可信操作系统的系统权限管理不会赋予可信服务与应用最高权限,单一可信应用与服务 出现崩溃或安全问题时不会影响系统内核及其他可信应用与服务的正常工作。 C 结果判定: 上述预期结果均满足判定为符合,其他情况判定为不符合
13.4可信应用与服务管理
互信过程的测试评价方法如下。 a)测试方法: 1) 审查厂商提交的文档,检查可信应用与服务的管理机制; 2) 执行可信应用与服务的管理操作,检查操作过程中设备提供商(或授权服务商)、可信应用 提供商、可信应用运营商的互信是否基于设备根证书、应用发布证书进行认证。 b) 预期结果: 可信应用及服务的管理,采用基于设备根证书、应用发布证书认证的方式进行,以确保应用数
服务提供加解密功能; 2)可信加解密服务保证仅获得相应授权的可信应用或可信服务才可以访问密钥。 结果判定: 上述预期结果均满足判定为符合,其他情况判定为不符合
13.5.3可信存储服务
可信存储服务的测试评价方法如下。 a)测试方法: 1 审查厂商提交的文档,检查可信存储服务的设计; 2) 使用可信应用调用可信存储功能多次存储数据,验证存储过程是否保证操作的原子性: 3) 尝试使用可信应用获取或宴改其他可信应用或可信服务的数据; 4 检查可信存储的访问控制策略,根据策略使用可信应用访问策略所允许和不允许的存储 空间,验证策略是否有效; 5 尝试对可信存储的数据执行回滚攻击 b) 预期结果: 1) 可信执行环境系统集成可信存储服务功能,为可信应用及其他可信服务提供可信存储 功能; 2 可信存储服务对存储对象的读写操作保证操作的原子性、数据的机密性、数据的完整性; 3) 可信存储具备访问控制机制,确保只有授权的应用才能访问相应的存储空间; 4 可信存储具备对数据回滚攻击的防御措施。 C 结果判定: 上述预期结果均满足判定为符合,其他情况判定为不符合
13.5.4可信身份鉴别服务
可信身份鉴别服务的测试评价方法如下。 a)测试方法: 1)审查厂商提交的文档,检查可信身份鉴别服务的设计; 2) 使用可信应用调用可信身份鉴别功能,尝试在可信执行环境之外篡改鉴别数据或结果。 b) 预期结果: 1) 可信执行环境系统集成可信身份鉴别服务功能,为可信执行环境系统中的可信应用或其 他可信服务提供身份鉴别功能; 2) 可信身份鉴别服务基于可信存储服务、可信人机交互、可信加解密服务等其他可信服务的 协同操作来完成。 C 结果判定: 上述预期结果均满足判定为符合,其他情况判定为不符合
13.5.5可信设备鉴证服务
可信设备鉴证服务的测试评价方法如下。 测试方法: 1)审查厂商提交的文档,检查可信设备鉴证服务的设计; 2 尝试伪造设备标识和设备来源,使用可信应用调用可信设备鉴证功能,验证调用结果是否 能够证明设备标识的真实性及设备来源的真实性: 3)改变可信执行环境和富执行环境的健康状态,使用可信应用调用可信设备鉴证功能,验证
附录A (资料性) 可信执行环境参考架构
共享处理器的硬件防火墙技术是在传统CPU架构基础上经过特别设计的芯片安全扩展机制。该 机制在CPU内部划分出两个状态,即富执行环境状态和可信执行环境状态,两个状态之间实现安全的 便件隔离,通过特定的通信机制,可以在两个状态之间自由切换。 基于共享处理器的可信执行环境系统架构见图A.1,基于共享处理器的纯硬件架构应可通过以下 方式确保系统安全:隔离所有硬件和软件资源,使它们分别位于两个环境(用于安全子系统的可信执行 环境以及用于存储其他所有内容的富执行环境)中;硬件逻辑防火墙应确保富执行环境中的组件无法访 问可信热行环境中资源
A.2独立安全处理器架构
图A.1基于共享处理器的可信执行环境系统架
独立安全处理器架构是在芯片内部或外部集成专用安全处理器,安全处理器与通用处理器实现安 全的硬件隔离,两个处理器各自独立运行,有自己独立的存储器和外设接口,互不影响。同时,在硬件上 提供安全处理器与通用处理器的通信通道,实现富执行环境与可信执行环境的通信。基于独立安全处 理器的可信执行环境系统架构见图A,2。
A.3基于虚拟化技术架构
图A.2基于独立安全处理器的可信执行环境系统架构
展于鹿拟化技术的可信执行环境系统在安全硬件支持的前提下,通过软件的方式创建不回的显拟 机,可以让不同的可信执行环境同时存在于一个硬件体系结构中。这种架构在扩展性上得到了提升,这 种架构可以同时使用共享处理器架构和独立安全处理器架构.同时,利用硬件IOMMU,能够加强隔离 性,防止DMA攻击。 基于虚拟化技术的可信执行环境系统架构见图A3。
图A.3基于虚拟化的可信执行环境系统架构
B.1支持基于口令身份鉴别的应用示例
航空标准附录B (资料性) 支持多种身份鉴别的应用场景
基于可信执行环境系统的口令身份鉴别采用可信用户界面的方式来实现。口令输人窗口的显示 数据提交对应的操作全部由可信执行环境来控制,确保口令鉴别过程的安全性。 基于可信执行环境系统的口令身份鉴别见图B.1
B.2支持基于生物识别的身份鉴别的应用示例
图B.1基于可信执行环境系统的口令身份鉴别
基于可信执行环境系统的生物识别身份鉴 执行环境内的生物识别TA,配合可信执 相关服务,以及富执行环境中的相关驱动完成整个识别过程。数据的采集、计算都在可信执行环 行建筑安全管理,确保整个生物识别过程的安全性, 基于可信执行环境系统的生物识别身份鉴别见图B.2
图B.2基于可信执行环境系统的生物识别身份鉴别
....- 相关专题: