Bypass技术在动态取证串联模式中的应用
2013-09-17王鹏
王鹏
中国人民公安大学 北京 100038
0 前言
基于现行刑诉法,动态取证研究的主要热点:一是利用入侵检测系统IDS来检测非法的入侵或恶意行为,对这些行为记录日志,并将日志作为网络取证的主要证据源;另外一个研究方向是将动态取证同诱骗技术结合起来,利用蜜罐等诱骗系统来收集证据,这种取证方式可以减少取整量,拖延攻击者对真实目标的攻击,但蜜罐系统有个致命的缺陷:有可能被用来作为进一步攻击的跳板。2013年1月1日,新的刑事诉讼法实施以后,电子数据被列为法定证据范畴,同时合法的利用技术侦查措施取得的电子数据将可以作为诉讼证据使用,这使得动态取证的研究领域进一步扩展,取证的目标可以瞄向广袤的互联网世界。基于新刑事诉讼法的动态取证,对网络数据流的监控将成为主要的动态取证方式。常见的网络数据流监控模式可以分为两种:一种是旁路监控模式,另一种是串联监控模式。两种监控模式各有优缺点:
1 旁路模式的优缺点
1.1 优点
(1) 旁路监控模式部署起来比较灵活方便,只需要在交换机上面配置镜像端口即可,不会影响现有的网络结构。
(2) 旁路模式分析的是镜像端口拷贝过来的数据,对原始传递的数据包不会造成延时,不会对网速造成任何影响。而串联模式是串联在网络中的,那么所有的数据必须先经过监控系统,所以会对网速有一定的延时。
(3) 旁路监控设备一旦故障或者停止运行,不会影响现有网络。而串联监控设备如果出现故障,会导致网络中断。
1.2 缺点
(1) 需要交换机或者路由支持“端口镜像”功能才可以实现监控。
(2) 旁路模式采用发送RST包的方式来断开TCP连接,不能禁止UDP通讯。对于UDP应用,一般还需要在路由器上面禁止UDP端口进行配合。而串联模式不存在该问题。
(3) 有丢包的现象。
2 串联模式的优缺点
2.1 优点
(1) 利用windows自带的“网关”、“网桥”功能即可实现,不需要硬件设备的支持。
(2) 可以禁止UDP通讯数据包。
2.2 缺点
(1) 与“旁路监控”相比较,“网关”、“网桥”的配置更加复杂些。
(2) 串联模式,所有网络数据流都经过监控设备,对网速有少许的影响。
(3) 串联监控设备故障(断电或死机)会导致网络中断。
在新的刑诉法框架下,对于重特大案件的网络监控取证,尤其是对加密通道的监控取证,往往要求既不能丢包又不能因为设备故障、中断网络而“打草惊蛇”,影响整个取证工作。因此需要针对实际需要,设计一种新型的监控模式——3G远程控制串联+路模式:在串联模式下引入旁路的思想,将BYPASS技术应用于串联监控模式当中,从而把串联模式和旁路模式结合起来。这样,网络监控设备可以实现既不丢包又不会因挡机而断网的功能。同时,在网络监控设备中加入一个“3G工作监控模块”来实现远程控制和检测网络监控设备工作状况的功能。
3 旁路技术概述
旁路,英文为Bypass,顾名思义,也就是说可以通过特定的触发状态(断电或死机)让网络数据流不通过网络监控设备,而直接物理上导通。所以有了Bypass后,当网络监测设备故障以后,还可以让网络导通,当然这个时候这台网络设备也就不会再对网络中的数据流进行监控处理了。此时,3G工作监控模块会立即将网络监控设备故障的信息通知指挥中心,及时维护设备。图1、图2说明了旁路技术的工作方式:其中网络监控设备分上行、下行端口及光纤、非五类线端口,五类线端口连接采用正线连接;3G工作模块是嵌入式系统,用来远程登陆控制网络监控设备并检测其工作状态,工作模块软件采用客户端系统实现控制;旁路功能工作时,起到直通的功能。
图1 网络监控设备处于正常监控模式
图2 (网络监控设备故障Bypass启动模式)
4 旁路技术分类及应用方式
Bypass一般按照控制方式或者称为触发方式来分,可以分为以下几个方式:
(1) 通过电源触发。这种方式下,一般是在设备没有通电的情况下,Bypass功能打开,如果设备一旦通电后,Bypass立即调整为关闭状态。
(2) 由GPIO来控制。在进入OS后,可以通过GPIO来对特定的端口操作,从而实现对Bypass开关的控制。
(3) 由Watchdog来控制。这种情况实际是对方式2的一种延伸应用,可以通过Watchdog来控制GPIO Bypass程序的启用与关闭,从而实现对Bypass状态的控制。使用这种方式后,平台如果死机就可以由Watchdog来打开Bypass。具体流程如图3:
图3 Bypass功能流程图
在实际的应用中,这3种状态往往是同时存在的,尤其是1和2两种方式。一般的应用方法为:在断电的情况下,设备处于Bypass打开状态,然后设备上电后,由于BIOS可以对Bypass作操作,所以在BIOS接管设备后,Bypass仍然处于打开状态,然后OS启动,当OS启动后,一般会执行GPIO的Bypass程序,将Bypass关闭,这样可以应用程序就可以发挥作用了。也就是说在整个启动过程中,几乎不会造成网络的断开。只有在设备刚刚上电到BIOS接管这短短的2-3秒钟的时间会使网络断开。
5 Bypass实现的原理分析
简单说明了Bypass的控制方式后,再对Bypass工作原理作一下简要的说明。Bypass的工作原理主要从硬件和软件两方面来分析。
5.1 硬件方面
在硬件层面上,要实现Bypass,主要使用的就是继电器。这些继电器主要连接各个网口信号线上,下图以其中一根信号线来说明继电器在其中的工作方式。以电源触发为例,当断电的情况下,继电器内的开关将会跳拨到1的状态,即将LAN RJ45入接口上的线直接和LAN RJ45出导通;而当设备通电后,开关就会导通到2上。
继电器开关示意图
5.2 软件方面
在Bypass的分类中谈到了GPIO和Watchdog两种方式来控制、触发Bypass,实际上这两种方式都是对GPIO作操作,然后由GPIO来控制硬件上的继电器作相应的跳转。具体就是相应的GPIO如果被置成高电平,那么继电器就相应的跳转到位置2,相反如果GPIO置成低电平,则继电器就跳转到位置1。对GPIO写入“0”或“1”,就可以实现对Bypass进行开关的控制。另外对于Watchdog Bypass,实际上是在上面的GPIO控制的基础上,增加Watchdog控制Bypass。首先系统激活Watchdog功能,通常情况下,当Watchdog生效后,系统会Reset;但如果使用了Watchdog Bypass功能,则在Watchdog生效后,系统不会Reset,而是将相对应的网口Bypass打开,使设备呈现为Bypass状态。实际这种Bypass,也是通过 GPIO来控制 Bypass的,只不过这种情况下,向GPIO写入低电平的工作由Watchdog来执行,不需要另外编程来写GPIO。值得注意的事,如果使用了Watchdog Bypass,则Watchdog将不能再让系统Reset了。
6 结束语
旁路技术应用于串联网络监控模式虽然可以解决不丢包、不断网的问题,但在网速上还是有影响的,尤其是监控网络内多台计算机时,对网速延时较大。设备提供的光纤接入端口可以有效解决网速延时问题,待光纤入户普及工程结束时,串联旁路技术对网速的延时将会被忽略。或许那时,会有更好的技术解决方案。
[1]孙知信.网络异常流量识别与监控技术研究[M].北京:清华大学出版社.2010.
[2]http://www.youxia.org/2008/10/Bypass-JieShao.html.
[3]http://www.softbar.com/blog/post/64.html.