在人工智能计算场景中,模型与数据是模型提供方、数据提供方及人工智能应用运行方等关注的核心资产。人工智能计算平台为模型训练、推理等任务运行提供基础的软硬件资源,对模型和数据等人工智能核心资产起到至关重要的保护作用。
本文件将定义人工智能计算平台的安全框架,给出人工智能计算平台的安全功能、安全机制、安全模块及服务接口。该安全框架一方面能够消减平台成为网络攻击中薄弱环节的风险;另一方面,围绕上层应用在不同情景中面临的共性问题,能够基于人工智能计算平台的安全功能有效提升人工智能模型、数据等核心资产在传输、存储、训练、推理等环节中的安全,减少应用方在保护模型和数据安全方面的重复投入。
1.范围
本文件规定了人工智能计算平台安全框架的安全功能、安全机制、安全模块以及服务接口。
本文件适用于指导人工智能计算平台的设计与实现,也为平台使用方应用人工智能计算平台安全功能提供参考。
2.规范性引用文件
下列文件中的内容通过文中的规范性引用而构成本文件必不可少的条款。其中,注日期的引用文件,仅该日期对应的版本适用于本文件;不注日期的引用文件,其最新版本(包括所有的修改单)适用于本文件。
GB/T 20272—2019 信息安全技术 操作系统安全技术要求
GB/T 22239—2019 信息安全技术 网络安全等级保护基本要求
GB/T 25069—2022 信息安全技术 术语
GB/T 37939—2019 信息安全技术 网络存储安全技术要求
GB/T 39680—2020 信息安全技术 服务器安全技术要求和测评准则
GB/T 39786—2021 信息安全技术 信息系统密码应用基本要求
GB/T 41867—2022 信息技术 人工智能 术语
GB/T 42018—2022 信息技术 人工智能平台计算资源规范
3.术语(略)
4.缩略语(略)
5.AI计算平台概述
5.1 AI 计算平台组成架构
在AI计算场景中,一个典型的AI计算平台组成架构如图1所示,包括:
a) 应用使能层:主要包括 AI 算法框架、开发套件(如 SDK 等)等软件资源,用于提升 AI 模型 训练、推理及 AI 应用开发效率及易用性;
b) 基础资源层:数据处理、AI 模型训练、AI 模型推理等 AI 计算任务执行所必须的计算、存储、 网络等硬件资源或虚拟化资源,以及操作系统、计算加速库等基础的软件资源。
注:基础资源层包括GB/T 42018-2022标准所述的AI平台计算资源。
本文件所适用的 AI 计算平台为应用于数据中心及边缘场景的计算平台。根据不同场景应用需求, 平台的部署方式、软件栈将有所不同。图 1 中实线框表示所有场景都需要的组成部分,虚线框表示部分场景需要的扩展组成部分。
5.2 AI计算平台参与方
AI 计算平台涉及的参与方主要由 AI 计算平台提供方和 AI 计算平台使用方组成。其中 AI 计算平台使用方包括AI 应用提供方、AI 数据提供方、AI 应用运行方、AI 模型提供方等。在本安全框架中,AI计算平台提供方基于 AI 计算平台使用方的业务活动及安全需求分析,通过缓解 AI 计算平台自身面临的安全风险并提供相应安全功能及服务接口,支撑相关参与方缓解其 AI 核心资产面临的安全风险。AI 计算平台使用方通过调用AI计算平台提供的服务接口,保障AI核心资产传输、存储、训练、 推理全流程安全。
5.3 AI 计算平台安全风险
AI 计算平台的安全风险主要包括以下两类,
a) 平台自身面临的安全风险:组成 AI 计算平台的软硬件与其他场景中的软硬件面临相似的安全风险,如网络传输过程中面临的窃听、篡改等安全风险、数据存储时面临的破坏、窃取、勒索 病毒等安全风险以及面向 AI 计算平台的非授权访问风险等。此外,AI 计算平台由于引入人工 智能技术带来了 AI 加速处理器、AI 模型等新的变化,这些变化因素对软硬件架构、关键资产 等产生了新的安全风险,如针对 AI 加速处理器的攻击风险、CPU 与 AI 加速处理器间传输风险、 训练框架后门风险等;
b) 平台承载的AI核心资产面临的安全风险:AI 核心资产部署或存储在 AI 计算平台中,面临着 AI 核心资产窃取及非法篡改、对抗样本攻击、模型萃取攻击等安全风险。详细的安全风险描点击链接看,
6 AI 计算平台安全框架描述
6.1 安全框架结构根据 5.3 所述安全风险,本文件描述的 AI 计算平台安全框架提供了两类安全功能,分别为平台自身安全类与 AI 核心资产保护类,每一类安全功能包含多个具体安全功能,如图2所示。
框架中定义的每一个安全功能由对应的安全机制实现,每一个安全机制由一个或多个具体的安全模块交互形成。同时,安全机制提供服务接口,供平台使用方使用相关安全功能保护AI核心资产。安全功能、安全机制、安全模块及服务接口之间的逻辑关系如图 3 所示。
6.2 安全功能
6.2.1 平台自身安全功能
AI计算平台自身安全功能旨在为平台使用方提供安全的运算环境,削减平台成为网络攻击中薄弱环节的风险。平台自身安全功能分为两类,第一类功能为通用安全功能,遵循GB/T 20272—2019、GB/T 22239—2019、GB/T 39680—2020、GB/T 37939-2019等既有标准,削减通用场景下平台软硬件面临的安全风险;第二类根据AI计算平台中新增的安全威胁及AI应用场景中的差异化需求,定义新增安全功能。本文件新增定义的安全功能包括可信验证功能、恶意程序检测功能和AI加速处理器故障监测与恢复功能,各安全功能的作用与目的如下:
a)可信验证功能:对AI计算平台进行完整性度量,包括CPU侧、AI加速处理器侧的固件、软件等, 并支撑平台使用方对度量值进行验证,以检测AI计算平台是否遭受篡改;
b) 恶意程序检测功能:监测AI计算平台中为AI训练、推理任务运行开启的虚拟机、容器及其他用户进程运行状态,检测已知或未知的恶意程序;c) AI加速处理器故障监测与处理功能:监测AI计算平台中的AI加速处理器资源状态,及时发现故障并进行恢复处理,保障AI训练/推理任务持续运行。
6.2.2 AI核心资产保护
AI核心资产保护旨在保障AI核心资产传输、存储、训练、推理等各环节安全。AI核心资产保护类安 全功能包括运行环境隔离功能、异构算力安全协同功能、AI核心资产加解密功能、AI核心资产完整性校验功能、训练任务中断恢复功能、推理攻击检测功能和日志验证与审计功能,来支撑实现AI核心资产保 护。各安全功能的作用与目的如下:
a) AI核心资产加解密功能:对AI核心资产在不同计算节点之间流转过程中进行加解密保护,保障 AI核心资产传输、存储过程中的保密性;
b) AI核心资产完整性校验功能:在AI核心资产传输、存储、训练、推理各环节中,对其进行完整 性校验,支撑用户鉴别AI核心资产传输、存储过程中的完整性;
c) 运行环境隔离功能:为AI训练、推理等计算任务提供安全隔离的CPU资源、AI加速运算资源、存 储资源等;
d) 异构算力安全协同功能:保障AI训练、推理等计算任务均在CPU与AI加速处理器协同构筑的安全隔离环境中完成,防范AI核心资产在AI训练、推理等计算任务执行过程中遭窃取、篡改;
e) 训练任务中断恢复功能:监测并识别训练资源故障,及时保存训练任务上下文状态及AI模型参数等信息,并在训练资源恢复后,快速恢复训练任务,防范AI模型参数等训练过程数据丢失;
f)推理攻击检测功能:计算推理请求为对抗样本、模型萃取、属性推断等攻击行为的置信度,并 为AI应用提供响应策略;
g)日志验证与审计功能:为平台使用方提供集中化的日志收集与完整性校验服务,支撑其定位安 全问题及审计追溯,该功能同样适用于平台自身操作产生的日志。
6.3 安全模块
安全模块在AI计算平台中是以提供特定功能的独立逻辑模块形式出现。在具体实现中,多个实体模块可实现一个本文件中定义的安全模块,一个实体模块也可能实现多个本文件中定义的安全模块,具体的实现形态不在本文件中定义。点击链接查看安全模块在AI计算平台架构中的参考分布。各个安全模块的具体定义与描述见第 7 章“安全模块”。
6.4 安全机制
本文件定义的安全机制用于实现 AI 计算平台安全框架中定义的安全功能,每一个安全机制实现一 个安全功能,包含安全模块间的交互关系与交互流程,以及涉及的服务接口。各个安全机制的具体描述见第8章“安全机制”。
6.5 服务接口
为平台使用方提供应用 AI 计算平台安全机制的服务接口,保障平台提供的安全功能能够在平台使 用方的业务流程中发挥作用。各个服务接口的具体描述见第 9 章“服务接口”。
7.安全模块
7.1 概述
本章节根据安全模块所属的安全机制进行组织分类,给出了人工智能计算平台中各个安全模块的 具体定义与功能。
7.2 AI 计算平台自身安全相关安全模块
7.2.1 可信验证机制相关安全模块
7.2.1.1 可信度量根模块
可信度量根模块具备的功能包括但不限于:
a) 发起对 CPU 侧及 AI 加速处理器侧固件、操作系统引导程序、操作系统、应用程序等的完整性度量及信任链传递;
b) 保障自身不可篡改。
7.2.1.2 度量值管理模块
度量值管理模块具备的功能包括但不限于:
a) 接收 AI 计算平台其他模块报告的度量值;
b) 对接收到的度量值进行扩展、存储;
c) 支撑 AI 计算平台完整性度量值的获取、验证等。
7.2.2 恶意程序检测机制相关安全模块
7.2.2.1 恶意程序检测模块
恶意程序检测模块具备的功能包括但不限于:
a) 检测支撑用户训练/推理任务执行的容器或虚拟机,是否存在逃逸异常情况,并产生告警信息;
b) 检测平台中开启的进程及文件状态等,判别是否存在勒索病毒,并产生告警信息;
c) 检测平台中开启的进程及文件状态等,判别是否存在恶意挖矿程序,并产生告警信息;
d) 对其他已知或未知恶意程序进行检测及告警。
7.2.3 AI 加速处理器故障监测与处理机制相关安全模块
7.2.3.1 故障监测模块
故障监测模块具备的功能包括但不限于:
a) 监测训练/推理资源的运行状态,如占用率等,并判别异常状态;
b) 在监测到异常状态时,及时报告故障信息,包括故障类型、范围等。
7.2.3.2 故障处理模块
故障处理模块具备的功能包括但不限于:
a) 收到故障监测模块上报的故障信息后,能够根据故障处理策略,进行故障处理,包括隔离故障节点、调度新的训练/推理节点加入集群、重新配置集群通信网络等;
b) 向其他模块报告故障信息、故障处理进度信息等。
7.3 AI核心资产保护相关安全模块
7.3 AI 核心资产保护相关安全模块
7.3.1 AI 核心资产加解密机制相关安全模块
7.3.1.1 加解密模块
加解密模块具备的功能包括但不限于:
a) 加解密过程对用户训练/推理脚本透明,无需用户训练/推理脚本做变更适配;
b) 对不同用户的不同训练/推理任务涉及的AI核心资产采用不同的数据加密密钥进行加解密;
c) 对请求解密的训练/推理脚本进行访问控制,防范 AI 核心资产被非法访问;
d) 与其他请求通信的模块完成双向身份认证;
e) 请求密钥管理模块获取数据加密密钥;
f) 利用硬件提供的安全防护能力,包括但不限于可信执行环境等,保障加解密过程安全运行;
g) 采用的密码算法遵循密码相关国家标准、行业标准。
7.3.1.2 密钥管理模块
密钥管理模块具备的功能包括但不限于:
a) 提供遵循 GB/T 39786-2021 的全生命周期密钥管理能力,包括密钥生成、存储、导入、备份、 导出、更新、删除等;
b) 遵循密钥分层管理机制,逐层加密保护根密钥、密钥加密密钥和数据加密密钥;
c) 仅允许密钥属主进行密钥查询、删除、更新等操作;
d) 响应其他模块关于数据加密密钥的加/解密请求;
e) 与其他请求通信的模块完成双向身份认证;
f) 基于安全传输信道传输数据加密密钥;
g) 利用硬件提供的安全防护能力,包括但不限于可信执行环境等,保护密钥。
7.3.1.3 设备根密钥模块
CPU 侧和 AI 加速处理器侧均存在设备根密钥模块实例,具备的功能包括但不限于:
a) 基于硬件安全机制保障设备根密钥不被篡改、非授权访问等;
b) 提供接口供用户派生密钥、基于设备根密钥加解密等;
c) 保障提供的加解密、密钥派生功能仅能被合法授权访问。
7.3.2 AI 核心资产完整性校验机制相关安全模块
7.3.2.1 完整性校验模块
完整性校验模块具备的功能包括但不限于:
a) 能够响应平台使用方请求对 AI 模型、数据等进行完整性校验;
b) 采用的密码算法及完整性校验机制遵循密码相关国家标准、行业标准。
7.3.3 运行环境隔离机制相关安全模块
7.3.3.1 运行环境隔离模块
运行环境隔离模块具备的功能包括但不限于:
a) 为不同用户的不同训练、推理任务建立 CPU 侧安全隔离环境,包括但不限于基于容器的隔离、 基于虚拟机的隔离等;
b) 采用技术手段避免资源隔离策略被规避或绕过;
c) 安全隔离环境生命周期结束时,清除运行在环境中的 AI 核心资产。
7.3.3.2 AI 加速资源安全隔离模块
CPU侧和AI加速处理器侧均存在AI加速资源安全隔离模块实例,具备的功能包括但不限于:
a) 为平台使用方分配安全隔离的加速运算单元、内存等 AI 加速处理器资源;
b) 防范平台使用方程序突破资源隔离限制,影响其他应用持续运行。
7.3.4 异构算力安全协同机制相关安全模块
7.3.4.1 可信度量模块
CPU侧和AI加速处理器侧均存在可信度量模块实例,具备的功能包括但不限于:
a) 接收平台使用方请求,对本地安全隔离环境(含组成安全隔离环境的固件、软件和相关数据) 发起完整性度量;
b) 向安全管理模块发起请求,获取本地安全隔离环境的完整性度量值;
c) 对本地安全隔离环境的完整性度量值进行验证,如发送给远程或本地度量值验证模块进行验证;
d) 能够主动向安全协同的另一侧(CPU 侧或 AI 加速处理器侧)可信度量模块发起完整性度量请 求,请求对安全协同的另一侧安全隔离环境进行完整性度量。
7.3.4.2 安全管理模块
CPU 侧和 AI 加速处理器侧均存在安全管理模块实例,具备的功能包括但不限于:
a) 按需为安全隔离实体分配计算、存储资源;
b) 为本地计算、存储资源进行安全属性初始化;
c) 对本地资源进行访问控制策略配置;
d) 计算本地安全隔离环境的完整度量值,并响应可信度量模块的度量值获取请求;
e) 与安全协同的另一侧安全管理模块协商会话密钥,并将会话密钥存储于安全通信模块中的安全 内存或其他安全存储环境中。
f) 采用的密码算法遵循密码相关国家标准、行业标准。
7.3.4.3 安全通信模块
CPU 侧和 AI 加速处理器均存在安全通信模块实例,具备的功能包括但不限于:
a) 提供密钥存储接口,用于存储会话密钥,保障密钥不出安全存储区域;b) 接受安全管理模块下发的访问控制策略配置或修改;
c) 对通信数据进行完整性保护;
d) 对通信数据进行加密/解密;
e) 对访问请求进行完整性及权限合法性校验,仅允许通过校验的请求访问本地安全隔离环境中的 数据等。
f) 采用的密码算法及完整性校验机制遵循密码相关国家标准、行业标准。
7.3.5.1 故障监测模块
故障监测模块具备的功能描述见 7.2.3.1。
7.3.5.2 故障处理模块
故障处理模块具备的功能描述见 7.2.3.2。
7.3.5.3 训练任务中断处理模块
训练任务中断恢复具备的功能包括但不限于:
a) 在接收到故障处理模块反馈的故障信息后,及时保存训练任务上下文及模型参数等信息;
b) 在故障处理模块反馈故障处理完成后,在新的训练节点上,加载训练任务上下文及模型参数等 信息,恢复训练任务。
7.3.6 推理攻击检测机制相关安全模块
7.3.6.1 AI 推理攻击检测模块
AI推理攻击检测模块具备的功能包括但不限于:
a) 能够接收来自 AI 应用转发的推理请求信息,并向其返回 AI 推理攻击响应策略;
b) 对推理请求中所包含的推理样本进行检测,计算其包含数字对抗样本、物理对抗样本、模型后 门触发样本等恶意样本或特征的置信度;
c) 基于推理请求所体现的用户推理行为特征,包括请求频率、请求来源、请求分布等,计算本次 推理请求为模型萃取、属性推断等攻击行为的置信度;
d) 向AI应用返回攻击响应策略信息,包括但不限于阻断请求、恶意样本告警提示、恶意用户告警等。
7.3.7 日志验证与审计机制相关安全模块
7.3.7.1 日志安全管理模块
日志安全管理模块具备的功能包括但不限于:
a) 提供接口供各个日志源定期上报日志信息,日志源可以是数据处理、模型训练、模型推理等用户AI任务以及AI计算平台软硬件资源运行相关日志等;
b) 对收到的日志信息进行持久化存储,如有必要还需先对日志进行格式化统一处理;
c) 对处理后的日志记录,逐条计算完整性校验信息;
d) 能够响应用户发送的日志验证及审计请求,并返回结果信息;
e) 提供身份鉴别与访问控制能力,仅对通过身份鉴别与访问控制的用户提供日志验证及审计服 务;
f) 采用的密码算法及完整性校验机制遵循密码相关国家标准、行业标准。
8 安全机制
8.1 概述
本章节具体描述了实现各安全功能的安全机制内容,包含安全模块间的交互关系与交互流程,以及 涉及的服务接口,如图 4 所示。
8.2 AI 计算平台自身安全相关机制
8.2.1 可信验证机制
可信验证机制用于实现可信验证功能,涉及可信度量根模块与度量值管理模块。在 AI 计算平台中, CPU 侧与 AI 加速处理器侧分别基于各自的可信度量根模块作为起点逐级执行完整性度量,并逐级将度 量值存储于度量值管理模块。具体实施步骤可参照 GB/T 36639 6.1。该机制不涉及服务接口。
8.2.2 恶意程序检测机制
恶意程序检测机制用于实现恶意程序检测功能,涉及恶意程序检测模块。该模块通过接收 AI 计算 平台中各组件提供的运行状态、日志等信息进行恶意程序检测,识别是否存在虚拟机/容器逃逸、勒索 病毒、挖矿病毒等已知恶意程序。另外,恶意程序检测机制可利用 AI 计算平台的计算资源使用 AI 技术 检测其他已知或未知恶意程序。该机制不涉及服务接口。
8.2.3 AI 加速处理器故障监测与处理机制
8.2.3.1 机制概述
该机制概述如下:
a) 机制作用目的:实现 AI 加速处理器故障监测与处理功能;
b) 涉及的安全模块:故障监测模块和故障处理模块;
c) 涉及的服务接口:故障监测接口和故障处理接口。
8.2.3.2 模块交互关系
AI 加速处理器故障监测与处理机制涉及故障监测模块与故障处理模块及 AI 计算平台中的训练/推 理资源之间对接交互,相关模块交互关系如图 5 所示,同时需为平台使用方提供相关服务接口,进行故 障监测信息、故障处理策略等配置操作。图中的训练/推理资源非本文件定义,因此以灰色背景标识。
8.3.1.3 模块交互流程
AI 核心资产加解密机制涉及的安全模块交互流程如图 13 所示,交互步骤描述如下
a) 机制作用目的:实现运行环境隔离功能;
b) 涉及的安全模块:运行环境隔离模块和 AI 加速资源安全隔离模块;
c) 涉及的服务接口:无。
b) 资源调度阶段:
a) 建立 CPU 侧安全隔离环境:
1) 安全管理模块接收平台使用方指令,配置 CPU 侧计算资源与存储资源及其安全属性,并设 置相应访问控制策略;
2) 由可信度量模块向安全管理模块发起完整性度量请求,安全管理模块计算本地安全隔离 环境的完整性度量值后,向可信度量模块返回度量值;
3) CPU 侧可信度量模块将本地安全隔离环境度量值交由远程或本地度量值验证模块进行验证,平台使用方收到验证结果,确认 CPU 侧安全隔离环境可信后,确认建立 CPU 侧安全隔离环境;
b) 建立 AI 加速处理器侧安全隔离环境:
1) CPU 侧安全管理模块向 AI 加速处理器侧安全管理模块发起安全隔离环境建立请求;
2) AI 加速处理器侧安全管理模块响应请求,配置 AI 加速处理器侧算力资源与存储资源安全 属性,并设置相应访问控制策略;
3) CPU 侧可信度量模块请求对 AI 加速处理器侧安全隔离环境发起完整性度量;
4) AI 加速处理器侧可信度量模块向本侧安全管理模块发起完整性度量请求,本侧安全管理 模块计算 AI 加速处理器安全隔离环境的完整性度量值后,向本侧可信度量模块返回度量值;
5) AI 加速处理器侧可信度量模块向 CPU 侧可信度量模块返回度量值;
6) CPU 侧可信度量模块将收到的AI加速处理器侧完整性度量值交由度量值验证模块进行验 证,平台使用方确认 AI 加速处理器侧安全隔离环境可信后,确认建立 AI 侧安全隔离环 境;
c) 形成异构算力协同的安全隔离环境:
1) CPU 侧安全管理模块与 AI 加速处理器侧安全管理模块通过密钥协商协议确立会话密钥, 并分别将会话密钥存储于本地安全通信模块中,支撑 CPU 侧、AI 加速处理器侧的安全隔 离环境之间加密通信。
8.3.4.3.2 运行阶段涉及的模块交互流程
8.3.5.3 模块交互流程
训练任务中断恢复机制涉及的模块交互流程如图15所示,模块交互步骤描述如下:
参考文献
原文始发于微信公众号(网络安全等保测评):人工智能计算平台安全框架
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论