APP下载

基于移动Agent技术的隔离网闸内容检查机制研究*

2015-06-07

舰船电子工程 2015年11期
关键词:数据包框架数据库

丁 霞 江 飞

(1.海军指挥学院信息战研究系 南京 211800)(2.国防信息学院信息化建设系 武汉 430010)

基于移动Agent技术的隔离网闸内容检查机制研究*

丁 霞1江 飞2

(1.海军指挥学院信息战研究系 南京 211800)(2.国防信息学院信息化建设系 武汉 430010)

隔离网闸为不同信任域网络之间的安全隔离与信息交换提供了技术支持,而处于内、外网处理单元中的内容检查机制显得尤为重要。论文在对移动Agent技术研究的基础上,将其应用于隔离网闸当中,提高了内容检查模块的过滤效率。

隔离网闸;内容检查;移动代理

Class NumberTP391

1 引言

隔离网闸为不同信任域网络之间的安全隔离与信息交换提供了技术支持,满足了许多对安全性要求较高的政府部门、企业和军事单位的安全需求。隔离网闸技术能实现内部网络与外部网络的物理断开,以保证内部网络数据的安全,但同时又能与外部网络适度地交换数据。随着用户对安全性要求的不断增加,隔离网闸内容检查模块的设计也在不断发展、更新,引入了一些新的技术来进一步完善其过滤功能。本文引入了移动Agent技术,利用它的移动性、自主性来增强内容检查模块的工作性能,提高过滤效率。

2 隔离网闸内容检查机制

隔离网闸系统是由两套各自独立的内、外网处理单元,分别连接着内部可信网络和外部不可信网络,两套处理单元之间是一个类似“网闸”的装置,分时地使用两套系统中的数据通路进行数据交换,达到隔离与交换的目的。为了保障数据交换的安全性,需要在内、外网处理单元中添加内容检查模块实现数据的内容检查。如图1所示。

对于在内部网络处理单元中所添加的内容检查模块来说,其过滤规则的设置是为了防止内部网络中的涉密信息或敏感数据的泄露;而对于外网处理单元中所添加的内容检查模块来说,其过滤规则的设置则是为了阻止外部网络中的非法信息、恶意代码侵入到内部网络,对内部网络造成严重的破坏或者产生不良的影响[1~2]。

图1 隔离网闸的体系结构

3 移动Agent结构研究

3.1 移动Agent的基本概念

移动Agent[2~3]是一种代替人或者其它程序执行某种任务的程序,它可以自主地在异构的网络上按照一定的规程移动,寻找合适的计算资源、信息资源或软件资源,利用与这些资源处于同一主机或网络的优势,就近处理或使用这些资源,代表用户完成特定的任务。

从软件Agent的角度来看,移动Agent是软件Agent家族中的一员。根据是否具有移动属性,软件Agent可以被分为两类:移动Agent和静态Agent。静态Agent一直驻留在其开始执行的位置,通过通信机制与外界交换信息、交互协作,而移动Agent在其生命周期内,可以在不同的网络节点之间移动。在执行过程中,移动Agent可以从一个执行环境迁移,挂起执行线程,把自己的程序代码和执行状态传送到另一个执行环境,并在其中恢复执行。因此,在具备软件Agent特性的基础上,移动Agent有两个最重要的特性:

1)移动性(mobility):将自己连同自己的状态数据一起移动到另一网络结点,并继续执行的特性。这是它和一般Agent的根本区别所在。

2)自主性(autonomy):在没有外界直接干涉和指导下持续运行,并能控制其内部状态和动作的特性。Agent的移动一般是自主决定的。

3.2 移动Agent系统结构

移动Agent系统[3~5]由移动Agent和移动A-gent服务设施(或称移动Agent服务器)两部分组成。移动Agent服务设施基于Agent传输协议(Agent Transfer Protocol,ATP)实现Agent在主机间的迁移,并为其分配执行环境和服务接口。它还要实现容错策略、安全控制策略、通信机制、基本服务设施等功能。Agent在服务设施中执行,通过Agent通信语言(Agent Communication Language,ACL)相互通信并接受服务设施提供的服务。

如图2所示,移动Agent的结构包含以下相互关联的模块:安全代理、环境交互、任务求解、知识库、内部状态集、约束条件和路由策略。

图2 移动Agent的系统结构

移动Agent结构的最外层是安全代理,作为Agent与外界环境通信的中介,执行Agent的安全策略,阻止外界环境对Agent的非法访问。Agent通过环境交互模块感知外部环境并作用于外部环境。环境交互模块实现ACL的语义,保证使用相同ACL的Agent和服务设施之间的正确通信,而通信内容的语义与ACL无关。Agent的任务求解模块包括Agent的运行模块,以及与Agent任务相关的推理方法和规则。知识库是Agent所感知的世界和自身模型,并保存在移动过程中获取的知识和任务求解结构。内部状态集是Agent执行过程中的当前状态,能够影响Agent的任务求解过程,同时Agent的任务求解又作用于内部状态。约束条件是Agent创建者为保证Agent的行为和性能而作出的约束,如返回时间、站点停留时间及任务完成度等,一般只有创建者拥有对约束条件的修改权限。路由策略决定Agent的移动路径,路由策略可能是静态的服务设施列表,或者是基于规则的动态路由,前者适用于简单、明确的任务求解过程,后者能够满足复杂和非确定性任务的求解。

服务设施为移动Agent提供基本服务(包括创建、传输、执行等),移动Agent的移动和任务求解能力很大程度上决定于服务设施所提供的服务。一般来讲,服务设施应包括以下基本服务。

·生命周期服务:实现Agent的创建、移动、持久化存储和执行环境分配。

·事件服务:包括Agent传输协议和Agent通信协议,实现Agent间的事件传递。

·目录服务:提供定位Agent的信息,形成路由选择。

·安全服务:提供安全的Agent执行环境。

·应用服务:是任务相关的服务,在生命周期服务的基础上提供面向特定任务的服务接口。

4 基于移动Agent的内容检查工作模型

本文提出的基于移动Agent的内容检查模型系统不仅可以防止内部网络涉密信息的外泄,同时也可以对非法入侵的外部网络信息进行过滤,防止其对内部网络造成破坏[6,9~10]。基于移动Agent的内容检查工作模型如图3所示。

图3 基于移动Agent的内容检查工作模型

基于移动Agent的内容检查模块只要系统在运行状态,它就会处在不断地挖掘过程中,譬如对“法轮功”、“大法”等关键词进行挖掘。一旦系统运行,挖掘模块将会对所有的网址进行不断的挖掘,如果在网页的内容中发现有这方面的内容,那么就会使系统返回该网页的网址,然后系统就会以文档的形式把这些网址放入数据库中,以便于在监控用户使用的时候进行比较。

内容检查系统的数据库由关键词库、URL库、文档库等组成,是一个分布式的数据库,分为本地数据库和全局数据库。平时挖掘模块把挖掘下来的信息保存在本地数据库中,本地数据库定期地把数据传到全局数据库进行数据库的更新。数据库部分主要是实现对各种关键词和URL的管理、传递、监控,对有关挖掘、过滤过程中所需要的,以及产生的各类数据进行存取、增删、查询、修改、更新。数据库是系统集成的重要信息资源,是整个系统设计的基础部分。

一般情况下,当内部的用户通过关键词搜索网络时,内容检查模块就会根据它要搜索的关键词内容,与数据库(保存了大量的关键词的库)进行比较,看关键词是否被禁止,如果发现要搜索的关键词被禁止搜索,那么系统将切断用户对该关键词进行查询,返回不能查询的结果。反之,如果没有对该关键词禁止,那么内容检查模块将不对该次搜索进行干预,直接把搜索的结果返回给用户。同理,用户对URL进行访问的时候。检查模块也会把该URL和数据库中预先保存的URL库进行比较,看是否允许用户对该URL进行访问。如果允许则不对用户进行任何的限制。反之,就告诉用户不能对该网址进行访问。

网络管理员不定期对内部用户的访问信息进行统计查看,如果发现用户对某些原来不能访问的关键词进行搜索,或者对某些不合法、不健康的网址进行了浏览,但是在数据库中没有对这方面的关键词或者网址加以限制,那么管理员就会把这方面的关键词添加到相应的数据库中,这样当内部用户下一次对相同的内容进行访问的时候,内容检查模块就会对这些关键词或者网址进行相应的处理。使之不能进行访问或查询。

5 隔离网闸中内容检查模块的实现

5.1 隔离网闸中NetFilter框架分析

Linux内核[7~8]版本升级到2.4的时候,Rusty Russell提出了NetFilter框架机制,它提供了一个抽象、通用化的框架,和内核紧密结合在一起,具有以往版本框架都没有的强大功能。NetFilter框架定义的一个子功能的实现就是数据包过滤子系统,但是并不能实现内容检查功能。因此需要利用NetFilter框架良好的可扩充性,将内容检查模块添加进去,实现对数据流的高效过滤。

当数据报流过协议框架中五个检查点的时候嵌入钩子函数是NetFilter框架的重要组成部分,它保证了调用用户函数对数据报进行处理,从而实现包过滤功能。图4显示了这几个检查点和它们相应地在函数中的位置,以及该函数所在文件名称。

图4 NetFilter框架

当一个数据报在通过NetFilter框架的时候,它将经过上图所示的流程,从上图可以看到,Net-Filter框架共有五个钩子函数,分别是:

[1] NF_IP_PRE_ROUTING

[2] NF_IP_LOCAL_IN

[3] NF_IP_FORWARD

[4] NF_IP_POST_ROUTING

[5] NF_IP_LOCAL_OUT

5.2 隔离网闸中内容检查模块的实现

利用NetFilter框架对网络中的信息内容进行过滤,需要从网络数据包中还原出原始数据,再通过内容检查算法对原始数据进行判断。系统利用NetFilter框架捕获数据包,并直接在内核态下对数据包进行重组,还原出原始数据,再将原始数据送给内容检查模块。根据已有的过滤规则,通过内容检查模块就可以直接对原始数据进行分析处理。

为了进一步提高不同信任域网络之间的安全性,在NetFilter框架中加入内容检查模块,对IP数据包的数据内容进行检查。图5就是添加了内容检查模块的NetFilter框架结构。

图5 添加内容检查模块NetFilter模型

如图5所示,在NetFilter框架的原有模型中添加了内容检查模块、修正特征库、输入驱动A和输出驱动B。图中显示了三种不同数据流的流向。

1)在图中的[2]、[3]、[5]三个检查点分别添加内容检查模块提供内容过滤功能。

2)修正特征库子系统提供关键词词频数组,关键词词频数组是内容检查模块进行过滤的依据。

3)输入驱动A输入关键词词频数组,而输出驱动B输出内容过滤的结果。

NetFilter框架处于Linux内核中,而修正特征库子系统处于Linux用户空间,输入驱动A和输出驱动B为处于用户空间的修正特征库和处于内核的内容检查模块之间提供了特征词词频数组交换的接口。输入驱动A负责关键词词频数组的输入,输出驱动B负责网络内容过滤结果的输出。

内容检查模块在NetFilter框架的钩入点和包过滤模块钩入点是一样的,分别是[2]、[3]、和[5]三个检查点,三个过滤模块刚好覆盖所有的待过滤数据包,而且不会有重复过滤的现象出现,这样的设置方式是基于下面两点考虑:

1)效率:先进行包过滤,如果数据包没有能通过包过滤则不必进行内容过滤,提高了过滤的效率。从NetFilter框架可以看出一个数据包只能而且必须经过这三个过滤点中的一个,所以所有的数据包,正好被过滤一次,避免重复过滤,也提高了过滤的效率。

2)模块自身的安全:进入的数据包通过包过滤之后,才可以进行内容过滤,包过滤对内容检查模块起到了保护的作用。

6 结语

隔离网闸为不同信任域网络之间的安全隔离与信息交换提供了技术支持,而内容检查机制在内外网主机之间的安全机制中所处的地位是至关重要的。因此本文通过对移动Agent技术的分析研究,并将之引入到隔离网闸中,利用它的移动性和自主性,可以很好地完成对内、外网之间交换数据信息检查的工作。移动Agent技术的引入,不仅满足了信息过滤准确性的要求,同时也保证了信息过滤的实时性。

[1]万平国.网络隔离与网闸(国家信息化安全教育认证(ISEC)系列教材)[M].北京:机械工业出版社,2004:1-20.

[2]张妹璞,周安民,吴少华.一种改进的安全隔离网闸实现研究[J].微计算机信息,2008,24(1-3):45-47.

[3]黄慧敏.基于移动Agent的数据挖掘技术研究[D].重庆:重庆交通大学硕士学位论文,2011:19-26.

[4]孙超,陈钢.基于agent技术的统一身份认证系统[J].计算机应用研究,2005,22(3):138-140.

[5]李钰.多Agent系统结构及Agent间交互的研究[D].成都:电子科技大学硕士学位论文,2003:12-43.

[6]任晓明,杨大鉴.移动代理的体系结构分析[J].计算机工程与应用,2001,27(1):62-64.

[7]岳红梅,石冬雪,徐咏梅,等.基于嵌入式LINUX的网络隔离系统研究与实现[J].计算机工程与应用,2005,(5):141-143.

[8]周永明.网络隔离与安全交换原型研究[D].上海:同济大学硕士学位论文,2006:13-49.

[9]WANG Hai-yan,WANG Ru-chuan.Two-step mobile agent based authentication architecture:towards effective grid authencation[J].Trans of Nanjing University of Aeronautics and Astronautics,2008,25(1):61-66.

[10]YANG Li.Application research of digital gas fields production management information system based on mobile agent[J].Application Research of Computers,2006,23(7):172-175.

Mechanism of Content Checkingof the Gap Based on Mobile Agent Technology

DING Xia1JIANG Fei2
(1.Department of Information Warfare Studies,Naval Command College,Nanjing 211800)(2.Department of Informationized Construction,Academy of National Defense Information,Wuhan 430010)

The gap provides technical sustain for secure isolation and information exchange between the non-trusted network and trusted network,and the mechanism of content checking is very important among the mechanisms of inner and outer network host computer.This paper applies the study of mobile agent technology in gap,and highly improves filter-efficiency of the module of content checking.

gap,content checking,mobile agent

TP391DOI:10.3969/j.issn.1672-9730.2015.11.027

2015年5月4日,

2015年6月25日

丁霞,男,硕士,讲师,研究方向:信息安全。江飞,男,硕士,讲师,研究方向:网络与信息安全。

猜你喜欢

数据包框架数据库
二维隐蔽时间信道构建的研究*
有机框架材料的后合成交换
框架
民用飞机飞行模拟机数据包试飞任务优化结合方法研究
C#串口高效可靠的接收方案设计
数据库
数据库
数据库
数据库
关于原点对称的不规则Gabor框架的构造