APP下载

基于国产管理平台的安全可信网络连接系统∗

2023-10-20鲍敬源徐明迪

计算机与数字工程 2023年7期
关键词:网络连接可信性管理中心

鲍敬源 徐明迪

(1.海装驻武汉地区第二军事代表室 武汉 430000)(2.武汉数字工程研究所 武汉 430205)

1 引言

当前,从全球范围内看,随着科技的飞速发展与广泛应用,在网络空间与新兴科技融合的过程中,网络空间已成为继陆、海、空、天之后的第五大主权空间,体现了国际战略在网络领域的推进[1]。2016 年,我国提出了《中华人民共和国网络安全法》和《国家网络安全战略》,强调“推广安全可信的网络产品和服务”、“加快安全可信的产品推广应用”[2~3]。2019 年12 月,新版国家网络安全等级保护标准《GB/T 22239-2019 信息安全技术网络安全等级保护基本要求》、《GB/T 25070-2019 信息安全技术网络安全等级保护安全设计技术要求》、《GB/T 28448-2019 信息安全技术网络安全等级保护测评要求》正式发布并实施,明确提出了对信息安全中“可信验证”的要求,以筑牢信息安全保障体系[4~6]。

可信网络防护可部署在舰船一体化网络中,能够为舰船信息网络内设备及通信一体化安全提供网络隔离、访问控制、安全审计等舰艇信息安全防护功能[7]。可信网络连接作为可信计算领域的重要组成部分,也是船舶领域实现全船信息安全的关键技术要点,其设计和实现成为各高校和相关组织机构的研究热点,同时各组织也针对可信网络连接提出了相关的标准和规范[8~9]。

2004 年,可信计算组织(Trust Compute Group,TCG)最早提出了可信网络连接的系统架构TNC(Trusted Network Connection)[10],实现了可信计算从终端可信到网络可信的变革。在TNC 架构的基础上,我国相关研究组织提出了自己的三元(访问请求者、访问控制者、策略管理者)三层(访问控制层、可信评估层、完整性度量层)可信网络连接系统架构TCA(Trusted Connection Architecture)[11],解决了在集中网络管理环境下,基于二元点对点可信认证机制的TNC无法应对合谋攻击的问题,安全性更高,可用于国家特殊行业应用场景。文献[12]对TCA架构的实现、相关支撑技术以及应用范围进行了详细研究。

现有TCA架构中主要有以下问题:1)TCA仅仅是一个模型架构,并未明确相关的可信评估内容和方法,未能在全船一体化网络安全建设中实现具体应用;2)TCA架构中策略管理者选用第三方仲裁机构为通信双方提供双向认证,但未明确第三方仲裁机构与终端之间的认证过程,存在安全隐患;3)在TCA 架构中未提出相关方法保障可信网络接入后的终端状态可信性。

本文基于TCA架构模型,面向舰船信息安全一体化建设,进行系统改进与设计实现,创新性工作如下:

1)设计了一种基于国产管理平台的可信网络连接架构并实现,为舰船一体化网络安全提供技术保障。在TCA的基础上,提出了一系列的可信策略以完成可信功能。可信连接认证时,定义了可信状态报告的形式及内容,并通过可信策略判定机制对终端进行可信状态的判断及访问资源的控制;网络接入后,通过可信状态检查策略对接入终端进行可信性判定,保障网络内部安全可信。

2)设计了一个独立的安全管理中心,用于收集并存储各个终端平台上传的可信状态报告,并结合报告中的数据内容,根据相应的可信策略来判定该终端是否可信。通信双方在进行信息传递前,需从安全管理中心获取双方当前的可信状态报告,以此判定是否允许通信。

3)对海光、龙芯、飞腾的国产硬件平台与麒麟、统信等国产操作系统进行可信性改造,实现了从硬件到软件、从域内到边界的全国产化可信网络连接系统,为国家舰艇信息安全的发展作出有力支撑。

2 基于国产管理平台的安全可信网络连接系统

2.1 系统总体架构

如图1 所示,本系统基于TCA 架构进行设计实现,遵从“三元对等”的设计思想,将请求终端、被请求终端、安全管理中心作为三个实体进行设计,其中被请求终端可以是客户端,也可以是搭载办公系统的服务器端。通信双方在终端硬件层都安装了国产的TCM(Trusted Cryptography Module)芯片,用于可信度量启动及信任链的建立与传递等,其中内置的背书密钥EK(Endorsement Key)可生成身份认证密钥AIK(Attestation Identity Key),用于可信报告签名和平台身份认证,保障信息交互过程中的信息安全性[13];在操作系统层配置了可信软件基TSB(Trust Software Basic),用于用户行为度量及拦截等。策略管理、可信状态认证、策略判定等功能由安全管理中心实现[14]。

安全管理中心通过建设集中管理体制,统一管理各层级、各终端的安全计算环境终端的执行情况与交互状态[15]。安全管理中心针对系统管理、安全管理、审计管理三个方面,分析终端应用系统的计算、运行和交互状态,从而构建出集中化的安全管理机制[16]。安全管理中心能够对局域网中的可信计算系统进行集中管理,实时维护各个终端的系统运行状态;同时依照安全等级权限,对可信局域网内的各个终端进行区域层级划分,下发相应的可信策略以完成对终端安全状态的监控与维护;并且增加安全接口,定时收集各终端的运行状态日志,用户在使用时还可定制化地设置终端系统可信状态的判定标准。

2.2 基本原理与主要步骤

可信网络连接过程主要分为两个阶段:网络接入前与网络接入后,基本原理与主要步骤如图2 所示,具体解释如下。

图2 可信网络连接流程

1)入网认证。在未认证终端请求接入可信局域网时,依托于安全管理中心,该终端需将自己的可信状态报告发送至安全管理中心。安全管理中心收到可信报告后,首先使用终端证书对可信报告进行签名验证,验证通过后根据判定策略,对报告中记录的启动度量、运行度量等可信状态信息进行评估,得出该终端的可信状态并保存在数据库中。

2)可信状态更新。在终端接入可信局域网后,安全管理中心向已接入的终端下发可信策略。基于相应的可信策略,各终端需定期或在指定时刻(如每次开机时、每次联网时),通过TCM 读取PCR中的度量信息,生成可信状态报告,签名后发送至安全管理中心进行状态评估验证。若通过验证,则更新数据库中的可信状态,该终端能够继续与可信局域网内其他终端设备进行通信和数据传输;若未通过相应的安全验证,则通过网络访问控制手段,将该终端从可信网域内移除。

3)可信数据传输。当可信局域网内的两个终端需要通信时,请求终端首先发起连接请求,向安全管理中心请求通信双方的终端可信状态查询。安全管理中心收到请求后,从可信状态数据库中查询通信双方的最新可信状态,若双方均可信,则同意该通信请求;反之则拒绝。

3 系统关键模块设计

3.1 可信完整性度量模块

可信完整性度量是可信终端平台内部可信证明的核心部分对可信平台的信任链构建和可信证明技术起到不可或缺的支撑作用。可信完整性度量对计算平台从启动到运行的每个过程进行计算和比较,保障平台系统各部分的身份、状态和属性在启动和建立各个阶段的可信性和真实性。

可信完整性度量包括静态完整性度量和动态完整性度量两部分。

1)静态完整性度量。终端平台在启动时,将物理可信根认作绝对可信,以可信根为起点,对BIOS、OS Loader、OS、Application 进行一级度量一级、一级信任一级的完整性度量,从而建立终端设备可信链,并将静态完整性度量结果存储于TCM 芯片的PCR寄存器0-7内。

2)动态完整性度量。操作系统运行时,当发生程序运行、动态链接库加载、内核模块加载等可能存在安全问题的情况时,对操作系统版本、内核版本、防火墙状态、运行进程、动态链接库、所加载的内核模块进行度量,并将动态完整性度量结果存储于PCR10内。

动态完整性度量基于LSM 机制和hook 技术,通过在文件读写、系统调用、动态模块加载等位置部署hook 点,实现用户行为获取,并对内核加载释放出的Initrd文件系统、物理内存管理模块、虚拟内存管理模块、页表分配模块以及各动态可加载模块等进行度量。

动态度量规则如下:当度量事件发生时,首先对度量事件进行Hash 值计算;而后通过调用判定函数,判断该Hash 是否存在,若存在则表明是未经修改的程序再次加载,可不对其进行度量;最后通过调用度量函数,对该度量事件用到的代码和关键数据(配置文件和结构化数据)做一次度量,并将度量结果扩展到PCR10中,以此来判断终端平台经过该事件后是否可信。

可信完整性度量机制依靠TCM 的PCR 寄存器完成,由于TCM 的PCR 寄存器仅支持重置和扩展,因此无法进行任意篡改。在恶意操作执行前,系统已经将恶意代码的度量值写入PCR,因此恶意代码无法绕开度量机制,保证了度量机制的安全可信性。

以上各个部分的度量结果信息经汇总后都存储在TCM 的PCR 中,用于生成可信报告,TCM 定时读取PCR中所记录的各度量位置的度量结果,使用平台密钥签名后发送至安全管理中心进行终端可信状态的认证。本系统中,将可信报告定义为易于传输和解析的XML文件格式。

3.2 可信基准库模块

安全管理中心在对度量结果进行验证工作前,首先需要构建一个可信基准库。当被度量对象处于安全可信状态时,对其进行一次度量,通过可信存储的方式,将产生的基准度量值放入数据库中,即可得到可信基准库。

在基准度量值的采集中,度量对象根据其不同的特性可分为两类,分别使用不同的采集方式:1)固定配置数据对象,其配置数据不随系统运行发生改变,直接使用对该数据对象进行度量所获取到的哈希值作为基准度量值;2)可变配置数据对象,可变配置数据对象包含固定配置数据部分和可变配置数据部分,应分别计算其基准度量值。固定配置数据部分使用直接进行度量所获取的数据哈希值作为基准度量值;可变配置数据部分的基准度量值采集方式则需要根据配置数据类型做出相应调整,例如数据配置者选择白名单对象身份列表作为基准度量值、配置数据生成操作选择白名单对象身份列表和操作过程中相应的可执行文件和配置文件作为基准度量值等。为提高基准值查询速度,基准库采用hash数据结构建立缓存。

可信基准库建立完成后,在可信网络连接过程中,当安全管理中心收到另一终端提交的可信度量报告和其他验证信息时,就可依据可信基准库进行校验。

3.3 可信认证模块

可信基准库建立完成后,当安全管理中心收到由终端节点提交的可信报告(包括PCR中存储的静态度量值和操作系统动态度量值),就可根据校验规则进行可信报告认证。可信认证分为以下三个步骤。

1)终端用户可信性认证。终端入网注册用户信息时,安全管理中心与终端基于SM2椭圆曲线加密算法进行密钥协商,私钥保存于安全管理中心。可信认证时终端使用公钥加密用户信息,发送至安全管理中心进行校验。

2)终端平台可信性认证。终端节点使用其身份密钥AIK私钥对平台认证信息进行加密,包括设备序列号、制造商ID、产品型号、MAC 地址等能够证明该终端平台合法且唯一的数据信息,发送至安全管理中心进行验证。

由于AIK 密钥与物理可信芯片间存在唯一对应的关系,因此采用AIK密钥签名机制能够保证终端平台身份信息的可信性。

3)终端状态可信性认证。安全管理中心对可信报告进行解析,读取终端节点的PCR 值;查询可信基准库,将库中基准值与可信报告中的度量值进行比较,若比较一致,则认定该终端状态可信。

3.4 可信策略模块

本系统面向区域用户接入、域内可信维护、平台信息传输三个实际系统应用场景进行了可信策略的设计。

1)可信边界认证策略。申请入网的网外设备需基于自身可信根对系统关键文件、执行程序、配置参数等进行可信度量,形成可信报告并提交安全管理中心进行验证,通过验证的边界设备可被允许加入可信网域内。

2)可信状态更新策略。对可信网域内的计算设备,设置定时或设备状态变化时,基于可信根验证计算设备系统引导程序、系统程序、重要配置参数以及应用程序的可信性,以及对应用程序执行环节执行可信验证,形成可信报告并提交安全管理中心进行验证,完成可信状态更新。

3)可信通信传输策略。在终端设备发起通信传输请求时,安全管理中心首先查询通信双方的最新可信状态,在双方均可信时允许其构建通信链路进行数据传输。并且将可信状态检查和策略检查的控制逻辑注册到LSM 对应的网络接口security_socket_sendmsg()和 security_socket_recv-msg(),实现通信过程中的可信状态监测。

策略配置使用netlink协议,将应用层获取的可信策略信息直接配置到系统内核中;同时将可信策略核查结果记录并形成审计记录,上传至安全管理中心留存,形成系统可信动态关联感知;并且当可信策略验证未通过,即设备可信性被破坏时,向安全管理中心发送警报信息。

3.5 通信模块

通信模块基于消息队列的方式实现,用于监听、获取连接请求,接收和转发各终端发送的数据信息,为网络中各实体之间提供数据交互通信服务。此外,通信模块还能够依据可信策略的判定,允许或拒绝相应终端的访问。

通信模块的设计实现如图3 所示,使用RADIUS传输协议,包括如下技术步骤。

图3 通信模块设计实现

1)传输前准备。在传输开始前,通信模块及通信模块接入点根据特定平台绑定函数加载相关信息收集接口。

2)数据传输端将信息收集接口所收集到的数据按协议规则封装为XML 文件,并使用约定好的公钥进行加密。

3)数据传输端将其封装并加密好的数据文件发送至RabbitMQ 消息队列中,等待数据接收端扫描取出。

4)数据接收端定时通过接口函数扫描信息,读取RabbitMQ 消息队列中的未标记数据并使用内置函数进行标记。

5)数据接收端使用私钥对数据文件进行解密,并按照协议规则对解密后的XML 文件进行解析,获取消息数据。

通信模块用于实现以下具体功能:

1)终端在线状态检测:通过启用终端定时器线程发送心跳包的方式,可信局域网内各个客户端定时发送心跳信息至服务端,服务端收到来自客户端的心跳信息后,向该客户端回复心跳响应信息。若任一方在设定时间内未能及时收到来自对方的心跳信息,则视为对方离线,进行相应处理。

2)系统日志信息收集:客户端在设定时间内将所生成的运行状态日志信息以XML 格式数据包发送至服务端,服务端接收后存储到指定位置,以保存日志信息。

3)可信策略信息分发:当服务端可信策略更新后,根据客户端层级分组信息,将相应的策略信息实时发送至各个客户端,实现可信策略的实时更新。

4)终端版本信息更新:客户端在设定时间内主动向服务端发送请求,获取最新版本信息。接收到来自服务端的回复信息后,与本地现有版本进行比对,若最新版本高于本地现有版本,则进行版本更新升级。

4 实验测试验证

测试验证部分,通过在实验环境中进行实际网络环境搭建,验证了本文方案的流程及主要功能,实现了一个完整的基于国产平台的安全可信网络连接系统。其中终端平台采用国产海光、龙芯、飞腾等,操作系统采用银河麒麟、中标麒麟、统信等,实现了全国产化的可信网络连接系统,并在此系统上实现对舰船一体化局域网内部OA管理系统的访问控制。

该网络由多台装有TCM 可信芯片的终端组成,选择其中一台配置相关软件作为安全管理中心,一台配置内部OA管理系统,其他终端均配置可信软件基,作为可信连接终端。在相关功能软硬件配置完成后,安全管理中心能够通过通信模块向各终端下发安全策略,同步局域网内各终端的可信状态;各终端也能够通过通信模块发起通信连接请求,并将可信报告传输至安全管理中心进行可信状态的验证。图4 为终端的度量任务执行状态,图5为安全管理中心向终端下发可信策略。

图4 度量任务执行状态

图5 安全管理中心下发可信策略

通过下列测试用例使终端可信状态发生改变:

1)篡改关键文件,导致关键文件度量状态异常,使度量失败并记录在安全管理中心度量日志中,篡改前后效果如图6和图7所示;

图6 篡改前安全管理中心度量日志

图7 篡改后安全管理中心度量日志

2)对敏感文件进行读写操作,引起非法访问,使操作运行失败,相应敏感操作被记录并上传至安全管理中心,如图8所示。

图8 敏感操作记录

在以上测试用例中,安全管理中心依据相应可信策略判定此终端的可信状态为“异常”,并与该终端断开连接,该终端与可信局域网内其他终端无法再进行通信,说明了本方案的有效性。

5 结语

本文基于海光、龙芯、飞腾的国产硬件平台与麒麟、统信等国产操作系统,设计并实现了一种基于国产管理平台的安全可信网络连接架构,为舰艇一体化网络提供边界安全防护。该架构在TCA 模型的基础上进行完善,提出了一系列具体的可信策略,定义了可信状态报告的形式及内容,并通过可信策略判定机制对终端进行可信状态的判断及访问资源的控制。同时该架构建立了一个独立的安全管理中心作为第三方仲裁平台,避免了合谋攻击等安全威胁,能够为全船信息安全集中管理平台的可信化建设提供设计思路。所提出的架构设计已经过实验验证,在功能完整性和准确性方面均得到了所期望的效果,可直接用于现代舰船一体化信息网络安全建设。

同时,本架构中尚存在一些不足之处,有待进一步完善。如安全管理中心未设置冗余,当存在安全管理中心离线等情况时,各终端安全状态如何进行实时更新,以及两终端之间如何建立点对点安全通信;在安全管理中心作为唯一第三方仲裁机构的情况下,管理员的权限效用较高,对管理员的身份验证方式还需完善;终端可信根可采用另一国产可信芯片TPCM,功能较于TCM 更为全面,在加密存储和密钥生成等方面比TCM更具优势。

猜你喜欢

网络连接可信性管理中心
基于可信性的锅炉安全质量综合评价研究
漾皮肤管理中心
宸山皮肤管理中心
在区间上取值的模糊变量的可信性分布
泰钢能源管理中心系统的建立与应用
个性化设置 Win10 的网络连接信息
运动想象的大尺度动态功能网络连接
Five golden rules for meeting management
基于可信性理论的风电场电能质量模糊综合评估
关于在蒙医综合医院建立慢病健康管理中心的探讨