SSL/TLS VPN技术在警务工作中的应用探讨
2023-01-19时浩孙兵兵公安部第一研究所
时浩 孙兵兵 公安部第一研究所
引言
2022年7月,由工业和信息化部网络安全产业发展中心牵头组织编制的《数据传输安全白皮书》正式发布。书中指出,随着新一代信息技术的迭代发展和数字经济的快速推进,各类数据海量汇集,数据安全问题日益凸显。数据传输安全作为数据全生命周期安全的关键环节,对于保障数据整体安全有着重要的意义。
目前,在日常警务工作中,随着各类信息化设备的大量部署,不断的产生海量数据。其中,不乏在警务工作重点、热点区域获取的数据需要传输给系统、指挥中心或执勤民警。这些数据在传输中面临着被篡改、泄露、截取、监听等安全风险。数据在传输过程中的安全性、完整性对于保障警务工作的执行以及公共安全有着重要意义。
SSL和TLS是数据传输认证及加密协议,旨在为信息传输提供安全通信通道。目前,较为常用的SSL/TLS VPN技术,其客户端形态多样,成本相对低,适合部署于各类警用设备,在SSL/TLS VPN技术应用中基于数字证书来实现身份认证、数据校验、数据加密,是一种数据安全传输解决方案。
本文首先简单介绍了SSL/TLS协议及格式,然后根据目前的应用情况总结了使用中遇到的痛点问题,同时提出了解决方案,并进行了实际应用,并结合卫星互联网热点,对应用进行了展望。
一、SSL/TLS协议简介
SSL(Secure Socket Layer)/TLS(Transport Layer Security)一般认为其工作在OSI会话层,对下使用TCP或者UDP协议,TLS协议主要包含以下核心内容:协议格式及流程,认证及密钥交换算法。
宏观上,SSL/TLS以记录协议实现,记录协议格式如图1所示, 每一条记录以一个短标头起始,标头包含1字节的类型、2字节的协议版本和2字节的长度。记录协议主要有四个核心子协议:握手协议(Handshake Protocol)、密钥规格变更协议(Change Cipher Spec Protocol)、应用协议(Application Data Protocol)、警报协议(Alert Protocol)。
握手协议是TLS协议中最精密复杂的部分,主要分以下子协议:ClientHello、ClientKeyExchange、ServerHello、ServerKeyExchange、Certificate、CertificateVerify。
SSL/TLS通过握手协议实现对加密套件的协商、服务端和客户端的身份认证,以及会话密钥的交换。
SSL/TLS协议的技术特点,满足了公共安全行业在传输安全方面的应用需求,在行业内得到了很好的应用,不过在应用中也渐渐显露出一些问题。
二、SSL/TLS VPN应用中的问题
目前SSL/TLS VPN产品已经相对成熟,有很多厂商可以提供成套的解决方案,但是随着物联网不断的发展,警用设备物联应用需求增长,现有的SSL/TLS VPN产品在应用过程中遇到了问题:
(1)一些嵌入式物联设备,设备硬件CPU的处理能力较差,无法安装VPN客户端软件,通常都是以VPN客户端整机设备的形式连接物联设备进行使用,需要网线、串口线等接口进行设备之间的连接,此方案需要外部接口连接,有安全风险,易受到破坏,同时设备体积大,使用受限。
(2)针对硬件CPU处理能力较强的物联设备,可以安装VPN客户端软件,需要根据用户当前业务终端的硬件和操作系统进行软件适配,需要开发周期和开发费用,软件适配周期长,部署成本高。
(3)当前SSL/TLS VPN应用中,核心的数字证书和私钥很多都在操作系统层面有缓存,有泄露的风险,即使是存储在专用的硬件介质中,如TF卡,UKey等,加密过程也需要硬件CPU和硬件介质的交互,存在安全隐患。
鉴于以上问题,本文以安全芯片为基础,使用链路共享技术,对SSL/TLS软件代码进行优化,将VPN客户端软件全部集成到安全芯片内,解决以上问题。
应用时,直接提供给第三方使用带有VPN-Client的安全芯片,可以与警用设备集成,也可以独立设备与警用设备外接,因为软件全部集成到芯片内部,无需和用户设备进行软件层面的适配,应用非常方便。数字证书、密钥等敏感信息全部在芯片内部,安全性大大提高,并且在服务端以数字证书信息为基础开发了特色功能。
三、解决方案核心技术
(一)链路共享技术
SSL/TLS协议提供了数据安全传输的通信机制,很多软件开发套件实现了协议相关接口,可以为应用程序开发提供便捷的编程接口,不过在应用中,存在如下问题:
(1)SSL/TLS编程接口和标准的TCP/UDP编程接口有差异,在调用流程上也不尽相同,如果应用程序已经开发完毕,面临软件层面的修改,工作量较大。
(2)如果一台设备的不同应用程序都调用TLS/SSL相关接口,每个应用程序都需要一套根证书和用户证书,面临着证书管理的问题。证书在操作系统层面统一管理可以解决,这就需要开发应用的不同厂家共同遵守证书的调用规则,这牵涉到操作系统和不同的应用开发厂家,统一调用标准也很困难。
鉴于这种情况,以虚拟网卡技术为基础,在芯片内部实现了安全链路共享。
由SSL/TLS VPN软件本身使用SSL/TLS标准的编程接口建立通信连接,然后将建立的连接共享给设备上的应用程序;各个应用程序无需再单独建立SSL/TLS连接,只需要使用一个VPN软件建立的连接即可。整个过程中,VPN服务端和客户端软件负责安全连接的建立和对其他应用程序的通信数据进行流转,链路共享实现了安全连接的共享。在客户端和服务端对应设备上生成虚拟网卡,VPN服务端和客户端借助虚拟网卡,采用SSL/TLS协议建立安全连接,形成安全隧道。然后通过修改TCP/IP协议栈的路由表为其他的应用程序打开隧道入口,使其他的应用程序可以通过安全隧道传输数据,链路共享技术的数据流转基本原理如图2所示,应用程序发送数据流程如图中蓝色箭头所示。
(1)应用程序通过标准的Socket编程接口将应用数据发送到系统TCP/IP协议栈;
(2)协议栈根据路由信息转发数据,VPN安全隧道建立后,VPN进程会修改TCP/TP协议栈的路由表,将需要加密的数据流指向虚拟网卡,TCP/IP协议栈将应用数据转发到虚拟网卡;
(3)虚拟网卡的另一端直接和VPN进程相连,VPN进程将来自虚拟网卡的数据整体进行加密;
(4)然后重新发送到系统的TCP/IP协议栈;
(5)协议栈根据路由信息通过物理网卡将数据发送到网络上。
数据的接收过程与发送过程正好是相反的,如图中的灰色箭头所示。
(二)安全芯片集成VPN客户端
为提高应用时的性能和安全性,在以下方面进行了优化:
(1)算法国产化,将SSL/TLS VPN认证和加密涉及到的算法全部升级为国密算法,提高安全性。
(2)针对嵌入式设备,提高集成度,优化实现SSL/TLS VPN的软件代码,以软件模块的形式集成在专用安全芯片内,认证和加密过程全部在芯片内部完成,提升安全性,方便第三方集成应用,架构变化如图3所示。针对嵌入式物联设备,通常有两种接入方案,一种是在设备操作系统层面适配VPN客户端软件,一种是VPN客户端设备使用外部接口相连接,两种架构都存在章节二梳理的相关问题。安全芯片方案架构的VPN客户端软件和证书全部集成到安全芯片,可以方便的和物联设备进行集成,解决以上问题。
(三)组管理、组播通信
新增特色功能,是在VPN客户端增加子网组网功能,实现客户端所在的子网之间的数据互通。VPN服务端根据客户端数字证书信息和IP地址划分不同的组,实现组管理和组通信。如图4所示,VPN-Client和VPN-Server通过公众移动网络和互联网络建立安全连接,VPN-Client1的数字证书为Crt1,IP地址为192.168.1.0/24,划分为组1,VPNClient2的数字证书为Crt2,IP地址为192.168.2.0/24,划分为组2,VPN-Server可以根据数字证书和IP地址的对应关系,向指定的组发送数据。不同的组,也可以根据这种对应关系,向指定的组发送数据。
四、警务业务场景应用
警务物联设备形态多样,如图5所示,常见的有视频监控设备、智能机器人、交通诱导屏、传感器等设备。设备根据自身条件,可以选择安装VPN Client软件,也可以在不便于适配软件的条件下外接专用VPN Client设备,也可以集成安全芯片。设备通过连接VPN终端,将业务数据加密后,通过有线网络或者运营商无线通信网络,基于数字证书完成身份认证,协商交换会话密钥,建立加密通信隧道与VPNServer联接,由VPN-Server解密收到业务数据后,转发业务数据到实际的应用服务器。
VPN客户端形态多样,包括安全芯片、嵌入式终端设备、App等,应用方便,以VPN客户端内使用的数字证书为基础,VPN服务端可实现对设备的管理,接入的VPN客户端的物联设备可组成虚拟网络,实现对物联设备的跨NAT管理。
在实际的应用中,可以快速的对已有物联设备进行安全改造,或者配合第三方厂家开发新产品,应用效果良好。
五、应用展望
卫星互联网技术将是未来下一代移动通信技术的重要组成部分。卫星互联网是指利用位于地球上空的各类卫星平台向用户终端提供宽带互联网接入服务的新型网络。当前主要是指利用地球低轨道卫星(Low Earth Oribit Satellite,LEO)实现的低轨宽带卫星互联网。2010年前后,全球三大低轨通信(Globalstar、Orbocomm、Iridium-NEXT)都开始了换代升级。我国于2016年在“十三五”国家科技创新规划中提出具体要求,同时2020年将卫星互联网纳入“新基建”体系,并推出了相应的低轨通信星座计划。卫星互联网技术将实现卫星终端的小型化、便携化,相比于当前的卫星终端可以适用于更多的场景;随着卫星互联网产业链的成熟,卫星通信设备使用成本将大幅下降,足以支撑各类用户普遍使用;低轨宽带卫星技术将提供更高的带宽,将为入网用户提供大众化的宽带通信服务。
当卫星通信网络与公众移动网络互联互通以后,卫星终端用户可以开展与公众移动网络相同的业务应用。基于SSL/TLS协议的VPN技术可以在卫星互联网中发挥重要作用,可为远程用户提供VPN加密传输通道,确保通信完整性、保密性及抗抵赖。
如图6所示,智能设备、传感设备连接VPN终端,通过卫星接收终端接入卫星互联网,采集的数据通过星间链路转发到地面信关站,然后经互联网发送到业务中心,如图中红色1-2-3-4-5链路所示。以VPN客户端设备为中心,组建设备组,设备组之间可实现信息互通。
便携卫星终端可集成安全芯片模组,终端采集的数据通过星间链路转发到应急通信车VPN-Server,经过解密后在应急通信车展示,如图中蓝色a-b链路所示。
基于卫星的远程无线通信相比有线通信,在时延方面一般要大,而且无线的开放空间,更容易受到干扰,根据这些特点,结合VPN技术,后续可开展更深入的研究。
六、结语
SSL/TLS VPN技术已经发展应用多年,成熟可靠,为数据的安全传输提供了有力的保证,其技术特点非常契合公共安全行业的安全需求,本文梳理了目前应用中的痛点、难点,并提出了相应的解决方案,并在实战中进行检验,取得了良好的效果。