| 标准编号 | GB/T 47689-2026 (GB/T47689-2026) | | 中文名称 | 网络安全技术 嵌入式操作系统安全技术规范 | | 英文名称 | Cybersecurity technology - Security technical specification for embedded operating system | | 行业 | 国家标准 (推荐) | | 中标分类 | L80 | | 国际标准分类 | 35.030 | | 字数估计 | 30,329 | | 发布日期 | 2026-05-25 | | 实施日期 | 2026-12-01 | | 发布机构 | 国家市场监督管理总局、国家标准化管理委员会 |
GB/T 47689-2026: 网络安全技术 嵌入式操作系统安全技术规范
GB/T 47689-2026 英文版: Cybersecurity technology - Security technical specification for embedded operating system
ICS 35.030
CCSL80
中华人民共和国国家标准
网络安全技术 嵌入式操作系统安全
技术规范
2026-05-25发布
2026-12-01实施
国 家 市 场 监 督 管 理 总 局
国 家 标 准 化 管 理 委 员 会 发 布
1 范围
本文件规定了嵌入式操作系统的通用安全技术要求,并描述了相应的测试方法。
本文件适用于指导工业控制、网络通信、消费物联网、低空经济等典型应用场景中嵌入式操作系统
的设计、开发、测试和应用,其他应用场景参照使用。
本文件不适用于部署在台式微型计算机、便携式微型计算机、工作站、服务器等上的操作系统。
4 缩略语
下列缩略语适用于本文件。
I/O:输入/输出(Input/Output)
MAC:媒体访问控制(MediaAccessControl)
5 通则
嵌入式操作系统一般运行于计算和存储能力有特定要求的计算机系统或硬件设备上,具有专用性
强、系统精简、实时性高、多任务等特点。嵌入式操作系统通常包括基础功能和安全功能,基础功能一般
包括硬件管理模块(驱动、板级支持包)、计算模块(任务管理、进程管理)、存储模块、通信模块、软件(系
统软件、应用软件)管理模块、人机交互模块、用户管理模块等,安全功能一般包括网络接入安全、通信安
全、身份鉴别、访问控制等,嵌入式操作系统安全框架见图1。嵌入式操作系统应用广泛,不同应用场景
功能需求差异较大,通过对嵌入式操作系统的裁剪与配置,实现不同功能组合,能符合多种应用场景的
需求。
6 安全技术要求
6.1 安全功能要求
6.1.1 网络接入安全
6.1.1.1 网络接入鉴别
功能要求如下:
a) 应具备对终端设备进行唯一网络身份标识的功能;
b) 应具备对终端设备网络接入的双向身份鉴别机制。
6.1.1.2 网络访问控制
功能要求如下:
a) 应符合网络端口最小化暴露原则,禁用业务需求以外的通信端口;
b) 应能设置网络访问控制策略,防止非授权的网络访问;
c) 应具备对网络流量进行限制功能。
6.1.2 通信安全
功能要求如下:
a) 应采用基于密码技术的安全机制,保证控制指令、鉴别数据、密钥数据等重要数据传输的完整
性和保密性,采用的密码技术符合国家密码管理部门相关规定;
b) 应采用安全措施,如使用序列码或时间戳等机制,防止重放攻击。
6.1.3 身份鉴别
对于具有用户登录操作系统的场景,系统具备身份鉴别功能,要求如下:
a) 应对用户身份进行标识和鉴别;
b) 使用口令鉴别方式时,应提供身份鉴别信息复杂度验证功能;
c) 应提供登录失败处理功能,如采取限制连续登录失败次数等措施;
d) 应采用二种或二种以上的组合鉴别技术对用户身份进行鉴别。
6.1.4 访问控制
功能要求如下:
a) 在安全策略控制范围内,主体应对其创建的客体具有相应的访问操作权限,并能将这些权限的
部分或全部授予其他主体;
b) 应授权用户或进程完成任务所需的最小权限;
c) 控制范围应覆盖所有主体、客体以及它们的操作;
d) 应能对主、客体进行安全标记,并根据强制访问控制策略,控制主体对客体的访问。
6.1.5 安全审计
功能要求如下。
a) 应提供安全审计机制,记录系统安全事件。
b) 宜对与嵌入式操作系统安全相关的以下事件进行审计:
1) 用户登录和退出;
2) 增加、删除、修改用户账号和口令;
3) 导入导出系统配置;
4) 修改系统关键配置;
5) 重启和升级系统;
6) 修改系统时间;
7) 系统运行时异常行为(如内存篡改、用户提权);
8) 其他系统安全操作。
c) 审计记录宜包括安全事件的主体、客体、时间、类型和结果等内容。
d) 宜提供审计记录查询功能。
e) 应提供审计记录保护功能,避免未授权访问、修改或删除。
6.1.6 安全隔离
功能要求如下:
a) 应具备操作系统程序与应用程序之间的隔离功能;
b) 应具备应用程序之间的隔离功能;
c) 应具备基于硬件的隔离机制;
d) 宜具备I/O设备的访问控制和隔离机制,防止未授权访问;
e) 宜能基于轻量级容器技术,实现应用程序的运行环境隔离。
6.1.7 内存安全
功能要求如下:
a) 应具备进程之间的内存隔离功能;
b) 应提供堆栈溢出检测和保护机制,避免堆栈溢出后破坏系统其他内存区域数据。
6.1.8 客体重用
功能要求如下:
a) 在主体活动结束后,主体占用的存储客体中的信息不应被另一个主体使用;
b) 对客体初始指定、分配或再分配一个主体之前,应撤销该客体所含信息的所有授权;
c) 当主体获得对一个已被释放客体的访问权时,当前主体不应获得原主体活动所产生的任何
信息。
6.1.9 系统升级
功能要求如下:
a) 应具备操作系统更新升级机制,只有授权的操作系统版本才能更新;
b) 升级时,应对更新文件的来源和完整性进行校验;
c) 升级前后系统安全配置应保持一致;
d) 在升级失败时,应能实现版本回滚,并保证系统完整性,且配置与更新升级前或出厂时一致;
e) 应采取安全措施,对超级用户权限进行管控,保证安全更新。
6.1.10 应用软件安全
对于能进行应用软件安装的场景,系统应具备应用软件安全功能,功能要求如下。
a) 应用软件的安装、卸载符合以下要求:
1) 用户应能对应用软件的安装进行授权或禁止;
2) 应具备应用软件白名单等安全标识机制,并宜将标识的应用软件纳入到强制访问控制机
制范围;
3) 应能对应用软件更新包来源进行真实性验证,更新前进行完整性校验;
4) 应在应用软件卸载时删除由其生成的资源文件、配置文件和用户数据。
b) 用户应能对应用软件使用的终端资源(包含通信资源和外设接口)和终端数据进行确认。
6.1.11 恶意代码防范
功能要求如下:
a) 系统不应存在已公布的漏洞,或具备补救措施以防范漏洞安全风险;
b) 预装软件、补丁包/升级包不应存在恶意代码;
c) 应能安装恶意代码防护软件,并定期进行升级和更新。
6.1.12 安全启动
功能要求如下:
a) 操作系统启动时应对操作系统内核、可执行程序等进行完整性度量;
b) 应对完整性度量基准值进行安全存储,防止其被篡改;
c) 宜具有硬件可信根,并基于可信根实现系统的可信启动。
6.1.13 调试安全
功能要求如下:
a) 设备出厂时应禁用系统调试接口,对于确有需求的,应采取限制或控制措施;
b) 系统应采取安全措施,防止动态加载或卸载内核模块。
6.1.14 数据安全
6.1.14.1 数据完整性
功能要求如下:
a) 应对存储的重要数据(如鉴别数据、密钥数据、系统配置数据等)进行完整性校验;
b) 应在检测到完整性错误时采用必要的恢复措施。
6.1.14.2 数据可用性
功能要求如下:
a) 应能对重要数据(如保证系统正常运行的基本数据等)进行备份;
b) 应具备数据丢失防护机制,检测到系统存储空间即将耗尽时,能采取必要的措施(如告警、开辟
临时存储区域等),防止数据丢失。
6.1.14.3 数据保密性
应对鉴别数据、密钥数据、系统配置数据等重要数据进行加密存储保护。
6.1.15 可靠性要求
6.1.15.1 资源限制
系统应提供资源使用的检测和控制机制,防止应用程序因逻辑错误或恶意行为无限制消耗资源。
6.1.15.2 失效保护
系统应能自检出已定义的系统故障,并提供对应的保护措施,避免系统因故障处于失效状态。
6.1.15.3 可靠时钟
系统应提供手工设定系统时钟,或通过远程时钟服务自动同步时钟等系统时钟设置功能。
6.2 安全保障要求
6.2.1 开发
6.2.1.1 安全架构
开发者应提供嵌入式操作系统安全功能的安全架构描述,安全架构描述应符合以下要求:
a) 与系统设计文档中对安全功能实施抽象描述的级别一致;
b) 描述与安全功能要求一致的嵌入式操作系统安全功能的安全域;
c) 描述嵌入式操作系统安全功能初始化过程为何是安全的;
d) 证实嵌入式操作系统安全功能能防止被破坏;
e) 证实嵌入式操作系统安全功能能防止安全特性被旁路。
6.2.1.2 功能规范
开发者应提供系统功能规范说明,功能规范说明应符合以下要求:
a) 描述嵌入式操作系统的安全功能;
b) 描述所有安全功能接口的目的与使用方法;
c) 标识和描述每个安全功能接口相关的所有参数;
d) 描述安全功能接口相关的安全功能实施行为;
e) 描述由安全功能实施行为处理而引起的直接错误消息;
f) 证实安全功能要求到安全功能接口的追溯。
6.2.1.3 实现表示
开发者应为全部安全功能提供实现表示,应符合以下要求:
a) 实现表示按详细级别定义系统安全功能,且详细程度达到无需进一步说明就能生成系统安全
功能的程度;
b) 实现表示以开发人员使用的形式提供;
c) 设计描述与实现表示示例之间的映射能证明它们的一致性。
6.2.1.4 系统设计
开发者应提供系统设计文档,系统设计文档应符合以下要求:
a) 根据子系统描述嵌入式操作系统结构;
b) 根据模块描述嵌入式操作系统安全功能;
c) 标识和描述嵌入式操作系统安全功能的所有子系统;
d) 描述安全功能所有子系统间的相互作用;
e) 提供的映射关系能证实设计中描述的所有行为能映射到调用它的安全功能接口;
f) 根据模块描述安全功能;
g) 提供安全功能子系统到模块间的映射关系;
h) 描述所有安全功能实现模块,包括其目的及与其他模块间的相互作用;
i) 描述所有实现模块的安全功能要求相关接口、其他接口的返回值、与其他模块间的相互作用及
调用的接口;
j) 描述所有安全功能的支撑或相关模块,包括其目的及与其他模块间的相互作用。
6.2.2 指导性文档
6.2.2.1 操作用户指南
开发者应提供明确和合理的操作用户指南,操作用户指南与为评估而提供的其他所有文档保持一
致,对每一种用户角色的描述应符合以下要求:
a) 描述在安全处理环境中被控制的用户可访问的功能和特权,包含适当的警示信息;
b) 描述如何以安全的方式使用嵌入式操作系统提供的可用接口;
c) 描述可用功能和接口,尤其是受用户控制的所有安全参数,适当时指明安全值;
d) 明确说明与需要执行的用户可访问功能有关的每一种安全相关事件,包括改变安全功能所控
制实体的安全特性;
e) 标识嵌入式操作系统运行的所有可能状态(包括操作导致的失败或者操作性错误),以及它们
与维持安全运行之间的因果关系和联系;
f) 明确说明为实现安全目的所执行的安全策略。
6.2.2.2 准备程序
开发者应提供嵌入式操作系统及其准备程序,准备程序描述应符合以下要求:
a) 描述与开发者交付程序相一致的安全接收所交付嵌入式操作系统必需的所有步骤;
b) 描述安全安装嵌入式操作系统及其运行环境必需的所有步骤。
6.2.3 生命周期支持
6.2.3.1 配置管理能力
开发者的配置管理能力应符合以下要求:
a) 为系统的不同版本提供唯一的标识;
b) 使用配置管理系统对组成系统的所有配置项进行维护,并唯一标识配置项;
c) 提供配置管理文档,配置管理文档描述用于唯一标识配置项的方法;
d) 配置管理系统提供一种自动方式来支持系统的生产,通过该方式保证只能对系统的实现表示
进行已授权的改变;
e) 配置管理文档包括一个配置管理计划,配置管理计划描述如何使用配置管理系统开发系统;
f) 配置管理计划描述用来接受修改过的或新建的作为系统组成部分的配置项的程序;
g) 实施的配置管理与配置管理计划相一致。
6.2.3.2 配置管理范围
开发者应提供嵌入式操作系统配置项列表,配置项列表应符合以下要求:
a) 包括系统、安全保障要求的评估证据和系统的组成部分;
b) 实现表示、安全缺陷报告及其解决状态。
6.2.3.3 交付程序
开发者应使用一定的交付程序交付嵌入式操作系统,并将交付过程文档化。在给用户方交付嵌入
式操作系统的各版本时,交付文档应描述为维护安全所必需的所有程序。
6.2.3.4 开发安全
开发者应提供开发安全文档,开发安全文档应描述在系统的开发环境中,为保护系统设计和实现的
保密性和完整性所必需的所有物理的、程序的、人员的和其他方面的安全措施。
6.2.3.5 生命周期定义
开发者应建立一个生命周期模型对系统的开发和维护进行必要的控制,并提供生命周期定义文档
描述用于开发和维护系统的模型。
6.2.3.6 工具和技术
开发者应明确定义用于开发系统的工具,并提供开发工具文档无歧义地定义实现中每个语句的含
义和所有实现依赖选项的含义。
6.2.4 测试
6.2.4.1 覆盖证据
开发者应提供测试覆盖文档,测试覆盖描述应表明测试文档中所标识的测试与功能规范中所描述
的嵌入式操作系统的安全功能间的对应性。
6.2.4.2 覆盖分析
开发者应提供测试覆盖文档,测试覆盖描述应符合以下要求:
a) 表明测试文档中所标识的测试与功能规范中所描述的系统的安全功能接口间的对应性;
b) 表明上述对应性是完备的,并证实功能规范中的所有安全功能接口都进行了测试。
6.2.4.3 深度分析
开发者应提供测试深度分析,测试深度分析应符合以下要求:
a) 论证测试文档中的测试与系统设计中的嵌入式操作系统安全功能子系统、安全功能要求执行
模块之间的一致性;
b) 论证系统设计中的所有嵌入式操作系统安全功能子系统都已经进行过测试;
c) 论证系统设计中的安全功能要求执行模块都已经进行过测试。
6.2.4.4 功能测试
开发者应测试嵌入式操作系统安全功能,将结果文档化并提供测试文档。测试文档应包括以下
内容:
a)......
英文网页English: GB/T 47689-2026相关标准:
|