基于可信计算的跨网数据安全交换技术

2021-11-02 03:34超,韩翔,刘钊,赵
计算机工程与设计 2021年10期
关键词:数据文件应用程序传输

李 超,韩 翔,刘 钊,赵 利

(1.公安部第一研究所 信息安全部,北京 100048; 2.中国人民公安大学 信息网络安全学院,北京 100038)

0 引 言

为了确保网络的安全,现阶段各个领域都采取了物理隔离的方法进行数据交换,主要有移动介质拷贝、双网卡主机、FTP传输、网闸摆渡和数据加密等方式。但是这些方式因物理隔离导致跨网数据交换产生困难并容易产生传输时延,且安全性能较差。研究如何设计一种在不同网络之间进行数据安全交换的方法,防止交换数据泄露、控制数据访问权限,实现跨网络数据安全交换,具有重要意义。

本文针对现有技术在跨网数据交换过程中的不足,设计并实现了一种软硬件相结合的、基于可信计算的跨网数据安全交换方案。该方案采用可信计算对系统进程、系统数据资源进行加固防护,采取了内外兼防、防内为主的模式来保护数据交换系统。从硬件层面防止系统数据被篡改,并控制数据访问权限,防止非法程序读取数据。同时为了保证系统自身操作行为安全,对数据交换行为进行审计,便于追踪溯源。通过测试,该系统可防止系统进程被篡改、数据泄露、网络黑客入侵和病毒攻击等问题。

1 跨网数据交换技术现状

1.1 移动介质拷贝

传统的方式是将需要跨网交换的数据人工拷贝至移动硬盘等移动存储介质进行跨网数据交换。移动硬盘等移动存储介质容量大、便于携带、使用方便灵活,在进行跨网数据交换时,由于实现了物理隔离,故其具有比较高的安全性。但此种方式存在几个方面的不足:只有部分被授权的人员才有资格进行数据的拷贝,无满足日益增长的数据交换;实时性较差,无法实现即时传输;存在一定的安全隐患,容易导致数据拷贝错误、被篡改问题,移动存储介质容易被病毒感染[1],交换数据缺乏审计,无法保证数据传输的完整性。

1.2 双网卡主机

双网卡主机是指在一台主机上安装两块网卡,两块网卡分别连接两个不同的网络,将其中一个网络的数据通过双网卡主机传输到另一个网络中。采用双网卡主机的跨网数据交换方式,数据传输的速度较快,可对数据文件进行审查,易对病毒进行排查,并可集中管控数据。但是该传输方式的安全性难以得到保障,并且硬件的实施成本较高,缺乏传输审计功能。

1.3 FTP传输

文件传输协议(file transfer protocol,FTP)是用于在网络上进行文件传输的一套标准协议,是比较普遍、传统的一种跨网数据传输方式,FTP允许用户以文件操作的方式(如文件的增、删、改、查、传送等)与另一主机相互通信,此种方式实施的成本较低,可检查文件中是否存在病毒,操作相对简单。但是FTP传输不适合大文件的传输,且该方式的安全性难以保证,有着很大的传输时延,容易出现传输错误、传输中断等问题,缺少审计的功能。

1.4 网闸、光闸摆渡

网闸(GAP),全称安全隔离网闸,通过渡船式的数据传输实现内外网数据的摆渡。网闸一般由内部主机、外部主机和专用隔离开关系统组成,在同一时间点,网闸只与内部网络或外部网络其中一个网络进行数据交换,即当网闸连接到外部网络时,此时该网闸会自动同内部网络的主机断开,保证内部网络和外部网络不进行信息的交换,实现两个网络之间的物理隔离[2]。光闸(FGAP)是在网闸的继承和发展,用于涉密网到非涉密网、高密级网络到低密级网络的数据传输,防止涉密网和高密级网络关键敏感信息的泄露。光闸的基本原理是基于光的单向性,采用分光装置将待传输的数据镜像到目标位置,实现数据的传输[3]。使用网闸、光闸进行数据跨网络的单向传输,可能会产生单通道失效的问题,且其传输速率已确定,无法扩展,无法满足各个应用不同传输速率的要求,没有交换记录,无法对数据交换行为进行审计。

1.5 数据加密传输和存储

数据加密传输和存储的跨网数据交换流程一般由数据采集、数据交换和数据分发3个主要模块组成。数据采集模块从源端数据源获取业务数据,对业务数据进行格式检查、安全过滤等操作,对不符合要求的数据拒绝处理。数据交换模块先将业务数据文件进行软件级加密处理,再把加密后的数据文件写入磁盘数据目录中,数据交换模块从磁盘数据目录中读取数据文件,并将数据文件交换至对端数据单元,将加密后的数据文件写入磁盘数据目录中。数据分发模块从磁盘中读取加密的文件,检查数据文件完整性,拒绝处理不完整数据文件,并进行解密处理,获得原始数据,最后将解密后的业务数据分发至目标数据源。

数据加密传输和存储的跨网数据交换的方式存在的不足:操作系统内部对执行代码未做一致性校验;操作系统内部对资源访问未做严格的控制;定期系统升级可以防范已知威胁,但对于未知威胁的防护能力弱;业务数据在数据交换系统内部存在数据泄露风险。

上述方式均未记录数据交换的过程,不能对数据交换行为进行审计,在交换过程中也未对数据完整性进行校验,故无法保证数据传输的完整性。随着黑客入侵、病毒攻击、内部违规操作等网络安全问题不断升级,上述方式已无法满足人们对跨网数据交换的需求。

2 基于可信计算的跨网数据安全交换技术方案设计

可信计算是在计算和通信系统中广泛使用基于硬件安全模块支持下的可信计算平台。可信计算是在计算和通信系统中广泛使用基于硬件安全模块支持下的可信计算平台[4],其组件、操作或过程的行为在任意条件下是可预测的[5],并能很好地抵抗应用程序软件、病毒以及一定物理干扰造成的破坏,可以维护计算机系统用户本身的利益和外来用户的正常运行[6],提高了系统整体的安全性。

现阶段可信计算的研究较为领先的是可信计算平台联盟(trusted computing platform alliance,TCPA)和微软的下一代安全计算基[7]。

2.1 跨网数据交换方案设计

为解决现有技术在跨网数据交换过程中对数据保护力度不足的问题,本文提出了一种采用可信计算加固对系统进程、系统数据资源进行防护的方案,可防止系统进程被篡改、数据泄露等问题。

2.1.1 硬件设计

基于可信计算的跨网数据交换方案中的硬件结构设计将整个数据交换过程分为外部网络、隔离区和内部网络3个部分。内、外部网络是数据交换的数据源和目的地,隔离区是基于可信计算的数据交换系统。硬件结构为双主板主机构成,分为外网交换单元和内网交换单元,内部交换单元接收并转发来自内部网络需要交换的数据,外部交换单元接收并转发来自内部交换单元的数据。两块主板上均安装可信加固硬件,在硬件层面解决了数据防篡改问题。

来自外部网络的数据传输到隔离区后,先在外网交换单元进行数据接收格式检查,实现安全过滤,再传输到内网交换单元,做完整性校验后进行数据分发;来自内部网路的数据也需传输到隔离区,通过内网交换单元进行数据格式检查,实现安全过滤,在外网交换单元进行数据的完整性校验和数据分发。通过基于可信计算的系统硬件结构实现应用可信、配置可信、访问可信。硬件设计如图1所示。

图1 硬件设计

硬件结构:

系统硬件采用双主板设计,内部两块主板,分别为外网交换单元(主板1)和内网交换单元(主板2),中间由高速专用通道连接,硬件内部结构如图2所示。

图2 硬件内部结构

(1)外网交换单元(主板1)对外提供网络接口,实现与外部网络的双向网络连接、通信。内网交换单元(主板2)对外提供的网络接口实现与内部网络的双向网络连接、通信。

(2)外网交换单元内部发送光纤网卡与内网交换单元内部接收光纤网卡用单向光纤线连接,实现数据从外网交换单元单向发送至内网交换单元。

(3)外网交换单元内部接收光纤网卡与内网交换单元内部发送光纤网卡用单向光纤线连接,实现数据从内网交换单元单向发送至外网交换单元。

(4)内网交换单元和外网交换单元主板均通过PCI-E接口安装可信加固卡,实现可信计算。

实现原理:

(1)外网交换单元和内网交换单元主板上均安装可信加固卡硬件,通过可信加固卡硬件安全模块,建立从信任根开始到硬件平台、操作系统、应用程序的可信链,确保整个跨网数据安全交换系统可信[8]。

(2)外网交换单元和内网交换单元中间由两条单向高速专用数据传输通道连接,分别为数据单向进通道和数据单向出通道。外部网络的数据要传输至内部网络,使用数据单向进通道,内部网络的数据要传输至外部网络,使用数据单向出通道,两个通道独立传输数据、互不影响。专用通道的发送和接收网卡采用万兆光纤网卡设计,满足数据高速传输要求。

硬件材料组成:

(1)双主板主机:2U机架式机箱,内部上、下两块主板,每块主板都配置有CPU、内存、磁盘等硬件器件。其中CPU采用国产龙芯CPU,搭载国产中标麒麟操作系统,实现主要硬件部件到操作系统的国产化方案。

(2)万兆光纤网卡:两块万兆光纤网卡分别安装在两块主板上,用于两块主板之间的单向高速专用通道连接。

(3)可信加固卡:可信加固块是一个含有密码运算部件和存储部件的小型片即可信硬件安全模块,通过密钥技术、硬件访问控制技术和存储加密等技术保证系统和数据的信任状态[9]。

2.1.2 软件设计

跨网数据交换的软件主要由数据采集、交换和分发3个模块组成。以下是跨网数据交换的全流程,如流程如图3所示。

图3 跨网数据交换流程

数据进行跨网交换流程具体如下:

(1)数据采集:从数据源获取业务数据;

(2)数据检查:对业务数据进行格式检查、安全过滤等操作,拒绝处理对不符合要求的数据;

(3)数据加密:将业务数据文件做加密处理;

(4)数据写入:将加密后的数据文件写入磁盘数据目录中;

(5)可信检测:在进程读取数据文件时,可信加固程序将判断该进程是否为经过认证,并进行一致性校验,判断程序是否被篡改,只允许通过可信认证且未经篡改的程序进程读取数据文件,保护数据安全;

(6)数据读取:数据交换模块从磁盘数据目录中读取数据文件;

(7)数据交换:数据交换模块将数据文件从外网交换单元交换至内网交换单元;

(8)数据写入:将加密后的数据文件写入磁盘数据目录中;

(9)可信检测:无论是数据交换模块还是数据分发模块以及任何想要读取数据文件的行为时都要进行可信检测,只允许通过可信认证且未经篡改的程序进程读取数据文件,保护数据安全。

(10)数据读取:数据分发模块从磁盘数据目录中读取数据文件;

(11)完整性校验:检查数据文件完整性,拒绝处理不完整数据文件;

(12)数据解密:将数据文件解密,获得原始数据;

(13)数据分发:将解密后的业务数据分发至目标数据源。

2.2 跨网数据交换审计设计

基于可信计算的跨网数据传输依赖于硬件设备,故无法得知数据传输的过程信息和结果,为了防止所有待传输数据出现遗漏,或因网络中断等原因引起的传输中断,保证传输数据的完整性,该方法设有跨网数据交换的审计功能[10]。审计的功能主体为审计日志,审计日志的内容包括数据交换的起止时间、发送方和接收方端口、交换的内容、管理员的操作行为等。通过查阅日志信息,发送方可核实待传输数据是否已经完成传输,以及造成传输中断的原因和中断位置,接收方可判断是否接收已全部待接收数据。

审计日志主要记录了所有操作人员和管理员的所有操作行为。日志记录实行统一标准的格式加密存储和传输,并定期备份和存档,只有被授权的审计管理人员才有权限查看存档。审计人员通过定期查看存档,提取并查看交换的历史记录,核实交换内容,排查非法传输行为,且查看行为也将被记录,避免出现未预期的删除、修改或覆盖等行为。若日志信息涉及到涉密的内容,需要对日志信息进行脱敏处理,维护敏感信息的安全性。审计员可以通过审计日志用来判断敏感信息是否被泄漏,查实审计记录中的发送方和接收方等信息,追查造成泄漏的责任主体,追究相关责任[11]。

3 跨网数据安全交换技术的安全性分析

3.1 对数据文件的保护

可信加固对数据文件的保护。任何对数据目录文件的读取行为都将受到可信检测,非认证程序不被允许访问数据目录,详细实现过程如下:

(1)可信加固程序实时监控数据目录/data/;

(2)监测到有读取数据目录文件的行为时,获取数据读取进程,将进程程序与白名单中的程序比较,判断是否为已认证程序;

(3)如果是非认证程序,则拒绝数据文件读取操作。数据文件保护流程如图4所示。

图4 数据文件保护流程

通过对数据文件的保护,可以有效防止攻击者非法获取数据内容。使用U盘等复制数据、通过网络发送文件至其它服务器、篡改数据文件、删除数据文件等不法行为都会失败,保障数据不被泄露、篡改,任何人员不能非法传输数据。

3.2 对应用程序的保护

可信加固对应用程序的保护,包括应用程序启动检测和应用程序文件篡改检测,详细实现过程如下:

(1)白名单控制机制:首先对系统进行完整扫描,对二进制文件、可执行文件做哈希值记录,保存于白名单中;

内核模块根据白名单库对程序执行进行控制。当检测到执行程序的启动时,内核模块首先提取启动程序的哈希值,然后对比白名单库中的内容哈希值,如果白名单库中存在该记录,则允许其执行,反之则拒绝程序执行;

(2)实时监控应用程序目录/app/;

(3)监测到有应用程序文件修改行为时,提取拟修改文件内容的哈希值,然后比对白名单库中的内容哈希值,如果白名单库中存在该记录,则允许修改,反之则拒绝修改。

通过可信加固对应用程序保护后,禁止更换程序文件、篡改程序文件等行为,数据交换程序无法被篡改,攻击者无法获取数据,可以有效防止攻击者通过非法篡改应用程序窃取数据。应用程序保护流程如图5所示。

图5 应用程序保护流程

4 跨网数据交换安全性验证

4.1 跨网数据交换环境测试验证

本文在进行基于可信计算的跨网数据交换安全性测试中,分别从硬件环境、软件环境和可信环境3个方面进行了准备。

4.1.1 硬件环境

采用2U标准机架式工控主机,内置上下两块主板,每块主板配置:CPU龙芯3A4000 1.5 GHz~2.0 GHz,8 G内存,240 G固态硬盘,通过PCI-E接口扩展可信加固卡和万兆光纤网卡。硬件设备内部设计如图6所示。

图6 设备内部实物

4.1.2 软件环境

在测试环境中,我们使用国产中标麒麟V7的操作系统,安装了可信华泰公司的可信终端控制软件、可信操作系统免疫平台、数据采集客户端、数据交换系统、监管审计系统。

4.1.3 可信环境

(1)白名单与静态度量

通过可信操作系统免疫平台为可信终端配置程序白名单,如图7所示。

图7 程序白名单信息

将系统运行所需软件程序纳入静态度量防护中,如图8所示。静态度量指在一个实体发生运行空间转换,产生状态翻转时触发的一次完整性度量,包括操作系统引导期间的度量,进程启动时度量等。

图8 静态度量策略

(2)数据文件授权与保护

将数据目录/data/的读、写、创建、删除和获取权限授权给数据交换进程dataproc,并限制其他用户、进程等主体访问,如图9所示。

图9 数据目录保护策略

(3)应用程序保护

将数据交换应用程序目录/app/dataproc的读、执行和获取权限授权给root系统用户,并限制其他用户、进程等主体访问,如图10所示。

图10 程序目录保护策略

4.2 数据文件保护测试验证

4.2.1 测试准备

(1)首先,可信终端已开启数据文件保护自主访问控制策略;

(2)其次,假定攻击者已通过某种手段获取到系统的root权限。

4.2.2 测试过程

(1)将数据文件复制到U盘上,复制操作失败;

(2)将数据文件通过网络发送到其它服务器,发送操作失败;

(3)查看数据文件内容,查看操作失败;

(4)篡改或替换数据文件,篡改和替换操作失败;

(5)删除数据文件,删除操作失败。

4.2.3 测试结论

测试过程及结果记录如图11所示。

图11 数据文件保护测试验证过程及结果

通过测试验证,发现跨网的交换数据和文件不可被泄露或篡改,不能非法传输业务数据。

4.3 应用程序保护测试验证

4.3.1 测试准备

(1)首先,可信终端已开启应用程序保护自主访问控制策略,应用程序文件信息已录入白名单库;

(2)其次,假定攻击者已通过某种手段获取到系统的root权限。

4.3.2 测试过程

(1)更换程序文件,更换文件操作失败;

(2)篡改程序文件,篡改文件操作失败。

4.3.3 测试结论

测试过程及结果记录如图12所示。

图12 应用程序保护测试过程及结果

通过测试验证,发现数据交换程序无法被替换或篡改,无法通过替换或篡改应用程序进而非法获取业务数据。

4.4 数据交换测试

该部分测试为在跨网数据交换系统在全部开启可信安全策略的情况下,验证跨网数据交换是否满足用户对于功能与性能的要求。

4.4.1 测试准备

首先对数据交换任务进行配置,分别配置外网和内网数据源信息,如图13所示为配置内网数据库资源。

图13 配置内网数据库资源

4.4.2 数据交换过程

(1)创建数据交换任务:我们在系统的任务管理模块中创建数据交换任务,并配置数据库表,如图14、图15所示。

图14 选择任务类型

图15 配置数据库表

根据上述数据交换任务配置过程,创建多个不同类型的数据交换任务。

(2)数据交换过程:在启动数据交换任务后,在源端数据源中持续放入数据,查看目标数据源中是否有数据持续传入。

4.4.3 测试结论

检查数据准确性,并记录数据传输时间,测试数据交换传输性能。具体测试数据及结果见表1。

表1 数据交换任务性能

通过测试验证,发现数据交换系统在数据交换过程中具有较高的跨网数据交换效率,同时可以保证系统安全、应用安全和数据安全的能力。

5 结束语

本文针对跨网络隔离环境下的移动介质拷贝、双网卡主机、FTP传输、网闸摆渡、数据加密传输和存储等数据交换方式存在的不足,提出一种基于可信计算的跨网数据安全交换的方法,设计了软硬件结合的跨网数据交换系统,并进行了测试验证。该方法采取了内外兼防、防内为主的模式来保护数据交换系统,从硬件层面防止系统数据被篡改,并控制数据访问权限,只允许合法数据交换进程访问磁盘上的业务数据,防止非法程序读取数据,以免数据泄露。同时为了保证系统自身操作行为安全,对数据交换行为进行审计,便于追踪溯源。

经测试验证,本方法保护业务数据在经过跨网数据交换系统存储、传输过程不被任何非法程序进程、设备及人员访问,避免出现数据泄露,增强了跨网数据传输的安全性;同时保护了核心配置文件不被非法篡改,对系统所有操作行为进行安全审计,提高了系统自身的安全性,从而可保证数据在跨网传输过程的完整性和不可抵赖性。

猜你喜欢
数据文件应用程序传输
混合型随机微分方程的传输不等式
牵引8K超高清传输时代 FIBBR Pure38K
删除Win10中自带的应用程序
关于无线电力传输的探究
谷歌禁止加密货币应用程序
数据文件恢复专题问答
数据文件安全管控技术的研究与实现
SQL数据文件恢复工具
支持长距离4K HDR传输 AudioQuest Pearl、 Forest、 Cinnamon HDMI线
三星电子将开设应用程序下载商店