范慧莉,李裕康
(北京空间机电研究所,北京 100094)
随着计算机技术、网络技术和通信技术的快速发展和应用,信息化的建设也在不断发展,普及程度也在不断的提高,特别是在促成企业单位发生转变的过程,起到了至关重要的角色。它通过实现信息资源的高度共享,高度整合,极大的解放、发展了生产力,更是优化了生产关系,成为了企业提高市场竞争力和可持续发展的重要手段[1]。现代信息技术确实为企事业单位带来无穷的便利,却也带来了幸福的烦恼。信息的高度共享与整合带来的不仅仅是生产效率的提升,更是带来了巨大的安全隐患。病毒、木马、非授权访问、数据窃听、暴力破解等各种黑客手段,都旨在获取这些信息资源以从中谋取不当利益[2]。
为了保护企业信息免受来自互联网的攻击,企业纷纷建立了自己的内部专用网络,并在装有各种控件的专用硬件的帮助下,在航天专网与互联网之间建立起了一扇“安全网络之门”,以控制企业内部宝贵信息的进出,从而实现网络安全。这种手段可以统称为“物理隔离”[3]。物理隔离确实可以非常有效的控制、保护航天专网,能直接将来自网络的攻击隔离在企业之外。然而,经过实践发现,单纯的物理隔离是远远不过的。物理隔离的实现前提,是所有航天专网的设备能且只能通过企业为他设置的“安全网络之门”与互联网发生联系。这就意味着,黑客仍然可以通过,使网内终端设备直接连接企业外部其他的违规设备的方式,来达到绕过企业设置的“安全网络之门”,进而攻击终端,渗透到航天专网以偷窃信息的目的。为了解决违规外联问题,市场上应运而生了众多的违规外联检测监控系统,然而这些系统的侧重点往往使事后取证而非事前防控,且对于内部设备连接互联网之后的控制能力十分有限,对于内网和互联网物理连接的情况还是无能为力,且统一安装代理客户端的部署方式,需要策略以及客户端的整体配合,一旦卸载代理或代理失效,那将让航天专网设备处于毫无防控的状态,而且随着企业航天专网接入设备的日趋多样化、跨平台化、跨语言化,使得常规的基于安装软件代理的防护手段适用性越来越窄,软件生产者必须付出极大的精力与投入才有可能保障代理手段能够适用于各种设备[4]。不具备通用性,和全范围的包容性,显然是此类代理软件在设计思路上的缺陷,因此这样的处置方式远远不能满足网络安全管理的要求。
鉴于企业内部网络设备的种类多样性,功能复杂性,以及新违规外联手段的层出不穷,本文提出了一种无代理违规外联检测方式:通过从底层通讯协议入手,无需安装客户端,能全面覆盖网络内部所有终端的方式,补充了现有违规外联防护手段短板,提高了网络内部的安全性。
国际标准化组织(ISO)将安全定义为“为数据处理系统建立和采取的技术与管理方面的安全保护,保护硬件、软件数据不因偶然和恶意的原因而遭到破坏、更改和泄露”。这是安全在网络定义上的延伸,而对于网络安全管理人员来说,是需要时刻扼守的底线准则。航天专网中,现有的网络安全防护手段措施,大多将防护重点放在了内外网隔离,以及如何抵抗源自外部网络的攻击上(物理隔离,防火墙,入侵防御系统等),而内部网络更多的是通过划分安全域的方式予以一定程度的限制与分隔。然而,对于航天专网内部同一安全域内的各个网络终端,则赋予了极大的“信任”,这导致一旦安全威胁源自内部,这类攻击将具有更大的威胁,更高的可能性对企业造成巨大伤害。而在所有的信息安全事故中,由于网络终端的使用者的疏忽误操作或蓄意泄密所造成的事故约占70%,也就是说,如果企业单位不能有效的控制来自内部的网络安全问题,核心数据和涉密信息的损失将是不可估量的。
对于航天专网而言,最基础的安全手段就是与互联网物理隔离。虽然物理隔离能够从原则上保障外部网络和航天专网之间不存在可以产生通讯的物理链路,切断了信息外泄的外部通道,但是网络安全的重点从来不单单限于免受外部网络的攻击,同时也要时刻监视网络内部的安全情况。由于个人产生误操作,或是外来人员通过外来设备,使内外网互通,最终导致失、泄密或影响信息系统性能,这些行为可以统一定义为“违规外联”。
违规外联使原本物理隔离的航天专网与外部的网络环境之间出现了新的不可控通道,外部网络可能借助此通道,病毒、木马、非授权访问、数据窃听、暴力破解等多种手段侵入违规外联的计算机,非法窃取敏感数据,甚至利用该机器作为跳板进一步渗透内网的重要服务器,甚至进行跨安全域、跨网络破坏,进而导致整个内部网络面临巨大安全风险[5]。
违规外联的手段有很多种,常见手段如表1所示。
通过表1看出,无论是何种方式的违规外联,只要发生,就会产生巨大的安全问题,并极有可能泄露企业核心机密内容,导致巨大的不可挽回的损失。
基于违规手段进行检测,会因为研发周期的不确定性,导致新违规手段一段时间内将没有相应的防护手段。因此,基于违规手段进行检测的方式因其适应性差,不可预期性强的缺点,不适合作为有效的检测手段[6]。
传统违规外联的检测技术主要是利用在计算机上安装代理软件,以此对设备进行管理。但随着网络内接入的终端设备类型越来越复杂多样,此方式也并不能适用于检测特殊设备是否会产生违规外联行为。
本文提出的无代理违规外联检测技术分为两类,一类是主动扫描技术,一类是被动检测技术。其中主动扫描技术适合于非Windows的特殊设备,而被动检测技术适合于具有交互能力但无法安装检测代理软件的办公机。
此技术的探测原理使通过探测设备与被探测设备之间建立TCP的半连接,通过判断通信是否成功建立以来判定目标机是否产生了违规外联。在TCP/IP协议中,要建立TCP连接需要进行三次握手,如图1所示。
所谓三次握手(Three-Way Handshake)即建立TCP连接,就是指建立一个TCP连接时,需要客户端和服务端总共发送3个包以确认连接的建立[7]。
表1 常见的违规外联方式
图1 三次握手流程
基于SYN+ACK的回复来判断目标机器是否产生违规外联的方式有两种,一种是在互联网上部署取证服务器,一种是无需互联网取证服务器,纯内网方式检测。
2.2.1 互联网取证
在互联网上部署取证服务器,然后取证服务器上进行抓包,只要抓到内网的特定探测响应数据包,即可确定有内网机器产生了违规外联行为,其基本原理如图2所示。
探测器模拟外网取证服务器的IP地址向测试机发送TCP SYN扫描数据包,如果测试机没有违规外联,则探测包最终将由于没有路由而被内网路由器(交换机)丢弃;如果测试机产生了违规外联,则测试机会向互联网取证服务器回复TCP SYN+ACK的数据包;如果互联网取证服务器收到探测发送来的TCP SYN+ACK包,则判定有内网机器发生了违规外联,具体违规外联的机器可以根据构造TCP SYN的序列号,并基于TCP SYN+ACK此序列号区分具体机器。
2.2.2 纯内网取证
纯内网探测无需在互联网部署取证服务器,内网探测服务器根据是否有响应数据包来判断测试机是否产生了违规外联,基本原理图如图3所示。
探测器模拟外网IP地址向测试机发送TCP SYN扫描数据包,如果测试机无外网出口,则其TCP SYN+ACK回复包会原路返回给探测器;如果测试机有外网出口,则其TCP SYN+ACK回复包会从外网出口转到互联网上;探测器基于是否收到TCP SYN+ACK的响应包来判断测试机是否产生了外联行为。
主动扫描的检测技术需要一定的前提条件:
1)测试机必须开启某一个TCP监听端口供探测器发送TCP SYN探测包;
2)测试机必须启用路由转发功能(很多操作系统,比如Windows7以及更高版本Windows默认都是不启用此转发功能的,所以不能用此探测技术)。
基于以上两点可见,主动探测技术对于Windows办公机的检测具有一定局限性。基于此本文提出了被动检测技术,以配合主动探测。被动检测技术分为在线违规外联检测和离线违规外联检测两种。
2.3.1 在线检测
图2 互联网取证过程
图3 纯内网取证
在线违规外联检测是测试机同时联通内外网,检测代码实时与外网取证服务器进行通信,根据通信的结果进行取证,基本原理如图4所示。
探测器首先要对WEB服务器页面进行抓取,并进行修改将检测代码附加到页面中,并进行缓存;测试机通过浏览器访问内网WEB服务器,此访问请求会被探测器和内网WEB服务器收到;探测器和内网WEB服务器都给测试机的浏览器回复页面信息,由于探测器的回复比WEB服务器要快,所以浏览器接收并使用了探测器回复的页面,此页面带有检测代码,而WEB服务器回复的页面会被浏览器当做重复数据而丢弃;浏览器执行检测代码,此代码首先从内网探测器上获取测试机自身信息;检测代码将测试机内网信息提交给互联网取证服务器,如果提交失败,则表示测试机没有违规外联行为,如果提交成功则表示测试机产生了违规外联行为,此时互联网取证服务器记录测试机的内网信息;如果检测代码确认违规行为,则将互联网取证信息提交给内网探测器,内网探测器在内部对违规行为进行记录。
2.3.2 离线检测
离线违规外联检测就是利用了检测浏览器Cookie的技术[8],来查看本地是否存留了互联网服务器的残留Cookie信息,并通过技术手段,解决了不同域名之间Cookie无法访问的技术壁垒,基本原理流程如图5所示。
图4 在线检测原理图
图5 离线检测原理图
测试机离开内网,违规访问互联网,此时浏览器会遗留访问互联网的Cookie在硬盘上;探测器首先将检测JavaScript代码附加到页面中,并进行缓存;测试机断开互联网,接入内网,并通过浏览器访问内网WEB服务器;探测器和内网WEB服务器都给测试机的浏览器回复页面信息,由于探测器的回复比真实WEB服务器要快,所以浏览器接收并使用了探测器回复的页面,此页面带有检测代码,而真实WEB服务器回复的页面会被浏览器当做重复数据而丢弃;浏览器执行检测代码,检测代码首先访问互联网服务器,此时浏览器会向内网DNS服务器发送域名IP地址解析请求;内网DNS服务器已经提前配置好将对应IP地址解析为内网探测器IP地址,所以内网DNS服务器回复测试机浏览器对应域名为内网探测器IP;检测代码通过浏览器访问本地的Cookie信息成功,如果发现有互联网残留的Cookie则表示机器曾经接入过互联网,此时向探测器发送违规记录并进行取证。
本文提出的主动扫描和被动检测的无代理违规外联检测技术,并不是取代当前传统基于代理软件的检测模式,而是使两者协同配合,令其在各自适合的环境和适用范围发挥作用,相互辅助,相互弥补,在面临复杂的终端网路设备时,能最终确实的保证网络的安全。