基于正则表达式的协议行为审计技术研究

时间:2022-05-02 05:43:45

基于正则表达式的协议行为审计技术研究

摘 要:协议行为审计技术通过在线深度解析应用层协议来分析用户行为并进行审计,为人工分析监测网络安全事件提供依据,达到增强网络安全的目的。重点探讨了利用正则表达式进行协议行为解析的技术,并提出一个灵活、可扩展的协议行为审计技术框架。基于该技术框架实现了一个支持HTTP协议、SMB协议和TNS协议的协议行为审计系统,通过详细的实例介绍阐明了利用正则表达式进行协议行为解析技术在该系统中的运用过程。最后,该系统的测试结果验证了基于正则表达式的协议行为审计技术的有效性。关键词:协议行为审计; 正则表达式; 协议解析; 安全审计; 信息安全

中图分类号:TP309文献标识码:A

文章编号:1004-373X(2010)19-0097-04

Research of Protocol Behavior Audit Technology Based on Regular Expressions

ZHANG Yun-ming1, WANG Yong-jun2

(1.Institute of Continuing Education, National University of Defense Technology, Changsha 410073, China;

2.Institute of Computer, National University of Defense Technology, Changsha 410073, China)

Abstract: The users′ behavior is analyzed and the audit is performed with the protocol behavior audit technology through the on-line analysis of the application layer protocol. The evidence is provided for monitoring network security by the protocol behavior audit, which realizes the purpose of enhancing the network security. The technology of the protocol behavior analysis is discussed emphatically with the regular expressions. A technology framework of the flexible and scalable protocol behavior audit is proposed. Based on the technology framework, a protocol behavior audit system was implemented for auditing the HTTP protocol, SMB protocol and TNS protocol. The process of using the technology of protocol behavior analysis based on regular expressions in this system is elaborated through the introduction of the detailed example. The testing results of the system verify the effectiveness of the protocol behavior audit technology based on regular expressions.Keywords: protocol behavior audit; regular expression; protocol analysis; security audit; information security

0 引 言

随着网络的应用普及,网络安全问题日益凸显,网络安全研究者从各种角度考虑来研究包括防火墙、病毒查杀、入侵检测、网络隔离、安全审计等在内的各种技术以增强网络的安全性。网络行为审计技术作为网络安全技术的必要组成部分,用于检测网络中的异常流量和活动并及时报警,在内网安全中发挥着重要作用。网络行为审计技术结合了网络管理中的流量分析技术和网络安全领域的协议分析技术,在国内很少明确提出,但是该技术在上网行为审计产品和数据库审计产品中得到体现。网络行为审计因为涉及范围广,本质上又是比较基础的深度包检测(Deep Packet Inspection,DPI)、深度/动态流检测(Deep/DynamicFlow Inspection,DFI)技术,目前出现几种应用对象更加专一的衍生技术,包括数据库行为监控、内容监控和过滤等。协议行为审计技术就是网络行为审计技术的延伸,利用网络行为审计的基本思想,着重于协议的行为分析和审计技术的应用,解决网络中应用层协议行为的深度检测和审计问题。

1 相关技术现状

1.1 网络安全审计

网络安全审计的概念并没有统一的认识[1]。安全审计[2]是指为了检查系统的控制是否足够,为了保证与已建立的策略和操作实施相符合,发现安全中的漏洞,以及为了建议在控制、策略和实施中做指定的改变,而对系统记录与活动进行的独立观察和考核。把安全审计限定在网络安全领域,以网络安全为目的的安全审计,就是网络安全审计。一般来说,网络安全审计包含日志审计和行为审计。日志审计是通过查看来自服务器、路由器、主机等网络中设备的各种日志从而评估网络配置的合理性、安全策略的有效性,追溯分析安全攻击轨迹,并能为实时防御提供手段。行为审计是通过对网络中数据包进行协议分析和还原,达到审计服务器、用户电脑、数据库、应用系统的审计安全漏洞、合法和非法或入侵操作、监控上网行为和内容、监控用户行为,确认行为的合规性,确保管理的安全。目前的网络安全审计产品众多,功能各有侧重,不尽相同,但基本都能够实现上网行为的审计。

1.2 行为分析技术

在计算机网络领域,行为分析主要有两种类型:用户行为分析和网络行为分析。用户行为分析是通过对包括用户登录、登录后的操作命令、运行的程序、访问的网络资源等应用层面的行为进行分析,主要从应用服务器、数据库、应用中间件、用户终端等位置去收集用户的行为信息。目前的内网管理设备可以检测到网络下载、即时通讯、上网浏览等用户行为。

网络行为分析[3]是对网络行为异常的探测,利用对网络的被动监测发现通讯和应用中违反安全策略的行为。网络行为分析试图把来自网络中尽量多节点的流动数据结合在一起来综合分析,发现和观察网络内部的具体情况。网络行为分析致力于摘取网络中关键性的能够反映网络行为信息,这些信息其他网络安全设备可能不进行分析。例如,通过监视网络的通讯流,网络行为分析能够发现网络中使用了禁止的协议,能够发现被病毒感染的笔记本电脑或者移动存储设备在防火墙后面的连接等。通过把当前的行为与以前的行为相比较,网络行为分析能够发现没有使用补丁和病毒特征更新的零日攻击和蠕虫爆发。网络行为分析主要是对网络的使用、连接和访问情况进行全局性的分析,从2008年开始,网络行为分析技术逐渐成熟,并且不断地衍生,成为其他新产品的必要技术组成部分。文献[4-7]分别从网络访问控制、网络管理、网络流量检测评估以及网络行为模拟等方面对网络行为分析的应用进行了研究。

1.3 协议行为审计

基于网络行为分析的网络行为审计技术主要关心网络流量、网络连接等网络层面上的行为[8],基于用户行为分析的审计技术则致力于从服务器、主机等网络设备的安全审计日志中分析用户行为。本文侧重于从网络协议本身入手、在线深度解析网络数据包内容、分析出协议行为、以最终达到审计用户活动为目的协议行为审计技术。

协议行为是指执行网络协议所产生的网络活动。协议行为能够准确反映用户在应用网络时的操作行为,所以对协议行为的在线分析能够准确监测到用户操作活动。

协议行为审计技术就是根据网络协议通过对网络数据包进行内容的解析实现对协议对应的网络活动的监测和记录技术。通过对审计数据深入研究还可以发现网络中的异常行为,进而可以采取相应措施进行阻止和控制,改善网络安全环境。协议行为审计技术的核心是在线进行协议解析并生成审计数据记录。

1.4 正则表达式在协议行为审计中的应用

正则表达式[9]是一种描述字符串结构模式的形式化表达方法,具有超强的结构描述能力。它的处理对象是类似字符串一样的对象序列,而围绕计算机所做的大多数工作,都归结为在这个序列上的操作,因此它在软件开发和日常数据处理工作中成为必不可少的工具,在协议识别[10]、报文深度检测中得到广泛应用[11]。正则表达式机制与传统的字符串特征匹配相比,具有匹配效率高,匹配条件灵活的优势。把这个特性用于协议内容的信息提取,结合协议解析技术,可以提高网络中协议行为审计的效率,因此,本文提出基于正则表达式的协议行为审计技术框架。

2 基于正则表达式的协议行为审计技术框架

2.1 总体框架

协议行为审计技术总体框架如图1所示。低层协议解析是指TCP/IP协议族中传输层及其以下的网络协议解析。审计规则检查模块基于可配置策略的协议行为审计考虑进行设计,策略是指可以由使用者指定的审计条件。审计数据生成模块根据协议解析和规则检查后的结果进一步分析提取,生成审计数据,并由审计数据记录模块存储。基于正则表达式的应用层协议解析引擎模块是协议行为审计的核心模块,完成应用层协议行为的分析并输出分析结果。

图1 协议行为审计技术总体框架

2.2 基于正则表达式的协议行为解析

总体框架中基于正则表达式协议行为解析引擎模块的工作流程图2所示。图中虚线左侧所示的是建立正则表达式描述库的过程,这是为解析引擎能够正常运行所做的准备工作,主要依赖于对各个协议标准的掌握和分析程度。图中虚线右侧所示的是解析引擎利用正则表达式描述库进行协议行为解析的过程。

应用层网络协议多种多样,几乎每一种网络应用都有各自的应用层协议,例如网络浏览使用HTTP协议,网络文件共享使用SMB协议。在这里,针对每个网络协议,用一组正则表达式进行描述,并不是描述出完整的协议标准,目的是在于能够以此从网络数据中提取到网络协议相关内容信息,用于分析网络协议行为。

图2 基于正则表达式的协议行为解析示意图

正则表达式选取是从正则表达式描述库中选择相应的网络协议描述子集,并根据该网络协议交互过程所处的阶段选取合适的正则表达式。匹配引擎是构造和运行正则表达式的机制,不同的匹配引擎匹配效率和结果会有不同。协议信息处理能够根据正则表达式提取出的内容信息分析出协议行为和状态,还可决定是否对这些内容信息继续用正则表达式引擎处理或者做其他有利于分析出协议行为的操作。

在该框架下,协议行为解析的能力由正则表达式描述库中可描述的协议多少决定,各个网络协议的正则描述子集互不干扰,并可以随意的添加和删除对某种网络协议的支持,具有灵活方便的可扩展性。

3 系统实现

3.1 系统介绍

根据以上技术理论和框架,实现了一个协议行为审计系统,该系统具有可配置的策略控制模块,能够根据策略的配置准确分析和详细记录协议行为,并且具有灵活的协议扩展架构。已完成的协议行为审计包括HTTP协议行为审计、SMB协议行为审计和Oracle数据库的TNS协议行为审计。

作为从网络安全角度考虑实现的HTTP协议行为审计,该系统实现了记录网页访问过程中的源和目的IP地址,源和目的端口,源和目的MAC地址以及访问网页的完整URL等信息的功能。对SMB协议行为的分析提供了记录网络中什么用户访问了网络中的什么资源、做了什么操作的能力,即当网络中有共享资源的访问发生时,系统可以记录源访问者的用户名、所访问的共享文件或文件夹的完整路径和名字,以及对文件或文件夹所作的具体操作操作。对TNS协议,实现了记录远程Oracle数据库访问过程中的用户名、数据库名、完整的SQL语句,以及分辨出对数据库做出的查询、修改等操作。

协议行为审计系统具有可配置的策略控制机制,能够根据不同的应用需求通过配置策略来灵活管理审计对象。该系统可以分别设定源地址对象、目的地址对象、源端口、目的端口等设定审计的对象,可以分别定制审计的开始日期时间和结束日期时间。针对HTTP协议的行为审计,还可以指定URL中的关键字作为审计条件进行关键字过滤。针对SMB协议可以指定用户名关键字过滤,文件路径关键字过滤,定制一种或多种操作作为审计条件。针对TNS协议可以指定用户名关键字、数据库名关键、SQL语句中的任意关键字进行关键字过滤,还可以定制一种或者多种数据库操作作为审计条件。当系统按照策略配置产生了审计数据后,会把审计数据记录到数据库中,并根据策略配置可以向界面控制程序产生声音报警,方便管理员及时进行人工判断和处理可疑的行为。

3.2 实例:TNS协议行为审计中的数据库名称的获取

基于TNS协议的Oracle数据库远程访问中,如果Oracle数据库版本不同,客户端与Oracle交互过程中数据库名称出现的时机和在数据包中的位置也不相同。协议行为审计系统可以支持Oracle 9i数据库和Oracle 11g数据库两个版本。现在,以Oracle 9i数据库为例来说明如何利用正则表达式解析TNS协议的内容并从中获取数据库名。

在对TNS协议解析时,系统中把TNS协议的交互过程划分为五个状态,每个状态代表了TNS交互过程进入了某个阶段。针对数据库名在TNS的Connect类型数据包所在的位置,制定正则表达式:“.*SERVICE_NAME=([a-zA-Z0-9_\\.]+)”,这个表达式总是能够找到数据包中在关键字“SERVICENAME=”后面紧随着的数据库名,这个数据库名包含的合法字符包括大小写英文字母、数字和“”,“.”两个特殊字符。在初始化状态时,系统对收到的TNS数据包的数据部分执行上述的正则表达式,直到正则表达式正确地获得了数据库用户名,系统把这个用户名存储到TCP会话所绑定的数据结构中,并把状态更改为已获取数据库名的状态。随后系统会对TNS协议交互过程做进一步解析,当协议解析达到了可以表明已经成功连接的状态时,系统才可以确定已经正确的获得了正在被访问的数据库名称。

3.3 系统测试

协议行为审计系统在一个由交换机、Oracle 9i数据库服务器、Web服务器、几台测试主机和Avalanche网络测试仪组成的局域网中进行了功能和性能的全面测试。协议行为审计系统通过把系统的数据包捕获接口连接到交换机的镜像口接入到这个网络。测试结果表明:协议行为审计系统运行良好,在功能方面,完全满足设计要求;在性能方面,HTTP协议行为审计在同时有1 000个HTTP连接和百兆流量的网络背景下,按照策略配置要求审计指定网络地址和URL关键字的Web访问行为,成功率达到99%,TNS协议行为审计和SMB协议行为审计在百兆带宽的流量背景下审计成功率也都能够达到99%以上。

4 结 语

针对网络安全的研究不断深入,但是网络安全事件的发生从未停止,安全现状令人堪忧。这里提出的协议行为审计技术,能够用于网络中的用户行为监控和审计,为及时发现网络中的非法行为提供了一种解决方案。正则表达式在协议行为解析中的运用,增加了协议行为审计的效率和准确性。实现的针对三种协议的协议行为审计系统在测试环境中运行良好,为协议行为审计技术的研究提供了很好的实用范例。针对协议行为审计系统的进一步研究可着眼于利用数据挖掘技术对审计数据的分析上。

参考文献

[1]ZHANG Jun-liang, FANG Ding-yi. LIU Li. Intelligent content filtering model for network security audit system[C]//2009 Second International Workshop.[S.l.]: IEEE Computer Society, 2009: 546-548.

[2]戴宗坤.信息安全实用技术[M].重庆:重庆大学出版社,2005.

[3]江泓,何恩.行为分析技术及其在可信网络中的应用前景[J].信息安全与通信保密,2009(2):67-69.

[4]FRIAS-MARTINEZ V, SHERRICK Joseph, STOLFO Salvatore J. A network access control mechanism based on behavior profiles[C]//2009 Second International Workshop.[S.l.]: IEEE Computer Society, 2009: 3-12.

[5]ZENG Bin, ZHANG Da-fang, LI Wen-wei. Design and implementation of a network behavior analysis-oriented IP network measurement system[C]//2008 First International Workshop.[S.l.]: IEEE Computer Society, 2008: 374-379.

[6]PAN Yan-hui, WANG Tao. Network traffic emulation based on representative network behavior and protocol. 2009 Second International Workshop.[S.l.]: IEEE Computer Society, 2009: 1777-1780.

[7]KIM Taekyu. Ontology/data engineering based distributed simulation over service oriented architecture for network behavior analysis[M]. Arizona: University of Arizona, 2008.

[8]李军,曹文君,李杨.FB-NBAS:一种基于流的网络行为分析模型[J].计算机工程,2008,34(3):165-166.

[9]Jeffrey E F Friedl.精通正则表达式[M].余晟,译.北京:电子工业出版社,2009.

[10]范慧萍,宣蕾,陈曙晖,等.基于正则表达式的应用层协议识别加速[J].计算机研究与发展,2008(Z1):438-440.

[11]陈曙晖,苏金树.基于内容分析的协议识别研究[J].国防科技大学学报,2008,30(4):82-84.

上一篇:差分放大电路单端输入信号的射极耦合传输及等... 下一篇:一种有效的语音信号盲分离方法