当前位置:文档之家› Snort-入侵检测系统规则集的优化

Snort-入侵检测系统规则集的优化

Snort-入侵检测系统规则集的优化
Snort-入侵检测系统规则集的优化

Snort-入侵检测系统规则集的优化

陈金柱1李逸波2朱乾坤3

(1.海军航空工程学院学员旅,山东烟台,264001;

2.海军航空工程学院自动控制系,山东烟台,264001;

3.海军航空工程学院网络中心,山东烟台,264001)

摘要:随着网络的发展,入侵检测系统将成为一个重要瓶颈。本文根据TCP/IP协议的特点对Snort-入侵检测系统规则集进行了优化设计。

关键词:Snort,入侵检测系统,规则集

0 引言

入侵检测系统(IDS)从计算机网络系统的若干关键点收集信息(如系统日志、审计数据和网络数据包等),然后通过分析这些信息来判断网络系统中是否有违反安全策略的行为和是否存在攻击。入侵检测依赖于两个假设:①用户和程序的活动是可以观察的。例如:系统审计机制。②正常活动和入侵(异常)活动有截然不同的行为。异常的活动被标识为入侵。入侵检测系统有多种分类。

根据检测方法,入侵检测分为两种类型①:误用检测(misuse detection)和异常检测(anomaly detection)。误用检测是将已知的攻击方式以某种形式存储在知识库中,然后通过判断知识库中的入侵模式是否出现来实施检测,如果出现,说明发生了入侵。该方法的优点是检测准确率较高,缺点是只对已知攻击类型和已知系统安全漏洞进行检测。而异常检测是指将用户正常的习惯行为特征存储到特征数据库中,然后将用户当前行为特征与特征数据库中的特征进行比较,若两者偏差足够大,则说明发生了异常。这种方法的优点是能检测未知的攻击类型,缺点是误检率较高。

根据检测的数据源,入侵检测系统可以分为基于主机的入侵检测系统和基于网络的入侵检测系统。基于主机的入侵检测系统是通过分析审计数据和系统日志来发现可能的入侵。基于网络的入侵检测系统是通过分析网络数据包来检测可能的入侵。下面介绍一个免费的轻量级的入侵检测系统——Snort。

1 Snort入侵检测系统

Snort是一种基于网络的入侵检测系统,通过误用检测规则来检测攻击。Snort规则就是使用“一种简单的、轻量级的描述语言”来描述网络上带有攻击标识的数据包。Snort规则文件是Snort的核心,是Snort的攻击知识库。如果只有Snort的可执行程序,而没有规则文件,那么Snort就不能真正实现入侵检测功能,即不能识别任何攻击。

Snort规则在逻辑上分为两部分:规则头(Rule Header)和规则选项(Rule Option)。规则头定义了规则的行为、所匹配网络包的协议、源地址、目标地址及其网络掩码、源端口和目标端口等信息;规则选项则包含了所要显示给用户查看的警告信息以及用来判定此数据包的其他信息(如:tcp的flags字段,数据字段的内容等)②。

下面是一个简单的规则:

alert tcp any any ->192.168.1.0/24 111(content:“|00 01 86 a5”|;msg:“mountd access”;)

上例中,括号左边部分为规则头,括号里面部分为规则选项,规则选项中冒号前的部分称为选项关键字(Option Keyword),这里需要注意的是规则选项并不是任何规则都必需的,它只是用来明确地定义表示的是某种攻击、需要采取某种行为(如警告等)。只有当组成规则的各个元素都为真时才能触发相应的操作。综合起来考虑,规则里限制数据包的各元素的关系是逻辑与;同时规则库中的各条规则之间的关系可以被认为一个大的逻辑或(进行逻辑或操作的各元素只要有一个为真时,整个表达式即为真)。

如图1,所有规则按照规则头排列成主链,然后根据规则选项把规则插入到这个链表中,构成规则集,这样每一个选项节点就对应一条规则。规则头节点主要记录了规则头信息,包括源IP/端口、目标IP/端口,并用指针指向下一个规则头节点、附属于它的规则选项列表和规则头列表结构。规则选项节点存放所有规则选项的信息和处理插件的处理函数列表(option function),分别指向规则头节点的指针和关联选项节点的指针。

图1 规则集

Snort就是这种基于规则匹配的网络入侵检测系统。而规则是根据源IP、目标IP、源端口范围和目标端口范围等属性分类组织成为规则集的。这样,当一个数据包被检测时,Snort检测每个规则集的上述四个参数以决定是检测该规则集还是转移到下一个规则集。如果数据包与规则集的四个参数相匹配,该规则集中的规则依次得到检测,并且每条规则中的其余的参数也按顺序检测。当该规则集中的所有规则被检测完以后,接着搜索下一条规则集中的四个参数,检测过程重新开始。每一个数据包都必须经过从头到尾的匹配过程。

这样,入侵检测就是把从网络上捕获的数据包和规则集进行匹配的过程。如果存在一条匹配该数据包的规则,就表示检测到了攻击,然后按照规则所指定的行为进行处理(如警告等);如果搜索完所有规则集都没有找到匹配的规则,就认为该数据包正常。

通常,当规则数量很少时,上述检测方法是很高效的。可是,当规则集中有很多条规则时,标准检测方法会变得非常低效。规则检测速度变慢,是由于每个数据包都必须检测每条规则集中的各个参数。

然而,根据规则集的结构和匹配过程的分析可知,许多匹配过程是根本不需要的,存在许多可优化的地方。另外,随着目前网络带宽的不断加大,IDS将成为网络带宽的一道瓶颈,入侵检测系统规则集的优化将给入侵检测系统的提供了更大的机遇。

2规则的优化

为了提高规则检测的处理速度,需要使用基于规则集检测方法。规则优化器必须进行规则集的构造和选择。

2.1规则集的构造

使用规则优化器构造规则集对基于规则集检测方法是必要的。规则优化器必须满足两个要求:(1)尽可能构造最小的、最高效的规则集;(2)构造离散化的规则集。这样,使得每个数据包仅需搜索一个规则集。

在初始化阶段,规则优化器利用最具独立性的Snort规则参数来构造规则集。因为每类传输协议有让其独立的不同参数,所以所选的规则参数对于不同传输协议是不同的。例如:TCP规则集可以根据源端口和目标端口来区别于其它的TCP规则集,而ICMP规则集可以根据该规则的ICMP类型加以区别。规则优化器利用具有独立性的参数构造规则子集。这样使得多规则检测引擎所需检测的规则集更小。更重要的是,它允许根据数据包的特征让其分别通过相应的规则子集。

2.2规则集的选择

当Snort运行时,规则优化器为每个数据包选择一个规则集。规则集的选择依赖于收到的数据包的一些参数和规则集中参数的匹配结果。这样,规则优化器只选择那些能匹配该数据包的规则并且只过滤多规则搜索引擎需要处理的规则。此后多规则搜索引擎可以进一步通过基于规则集的检测方法检测内容③。对于一些异常数据包,有可能会选择两个规则集,这种情况称为“独立冲突”。

3规则优化器的实际应用

规则优化器根据传输协议的独立参数把规则分成可定义的、小规则集,以提高Snort检测速度。经分析,源端口、目标端口可作为TCP/UDP数据包的独立参数;ICMP类型可作为ICMP数据包的独立参数;传输协议ID可作为IP 独立参数。下面将分别给予介绍:

3.1 TCP/UDP

TCP/UDP协议中最独立的属性是源端口和目标端口。通常情况下端口有两种类型:保留端口号和非保留端口号。这意味着主机之间大部分通讯有一个保留端口(通常是服务器端)和另一是非保留端口(大于1024且通常是客户端)。该属性允许规则优化器使用保留端口作为独立参数。大家都知道,TCP/UDP在客户和服务器之间是双向通讯的。也就是,Snort所检测的数据包是从客户到服务器和从服务器到客户的。因此不必应用所有规则到客户通讯和服务器通讯的每一个数据包。规则优化器根据独立端口位于源端口或还是位于目标端口来对规则分组。如果独立端口位于源端口,通常数据流来自服务器,选择服务器响应规则。而当独立端口位于目标端口时,通常数据流来自客户端,选择客户请求规则。如果源端口和目标端口都是非保留端口时,这样情况的比较少,使用通用规则对其进行处理。如图2所示。

图2 TCP/UDP规则的细化

可是,当源端口和目标端口都是保留端口,需要检测多个规则集,出现了独立冲突。独立冲突可分为两种类型:已定义独立冲突和未定义独立冲突。已定义独立规则出现是很正常的,未定义独立冲突很少发生,而当它发生时可能是恶意或异常事件。

对于已定义独立冲突通过检测由两个合法独立规则集合并而成的一个已定独立冲突规则集加以处理。一个合法的独立冲突的例子是在服务器之间DNS查询中。此时,两个端口号都是53,那么应该用哪一个规则集来处理这种数据包?应该是两个。这种情况下,合法独立冲突通过协议加以定义,把处理源端口和目标端口都为53的DNS查询规则合并,并加入到已定义独立冲突规则中。

当未定义的独立冲突发生时,也同样需要检测多个规则集。仿效已定义的独立冲突的处理那样处理所有的未定义独立冲突产不可能,因为地址空间太大。例如,如果有1000个独立的源端口和1000个独立目标地址规则集,这样将有1000000个独立冲突端口规则集。考虑到一个规则集需要的存储器,这是不现实的。现在,依赖于用户所需要的性能,未定义的独立冲突有三种处理的方法:双重检测、首先命中检测和随机检测。

(1)双重检测

双重检测是处理未定义独立冲突的最基本类型。既然对应一个未定义独立冲突对两个规则集,双重检查就检查两个规则集,大约花两倍的检查时间。双重检测保证发现一个数据包中的所有事件,但是,这种方法更容易通过构造引起未定义独立冲突的数据包来强制双重检查而导致拒绝服务(DoS)攻击。

(2)首先命中检测

首先命中检测方法类似于双重检查方法,因为它也检查两个规则集。不同的是如果事件发生在首先被检测的第一个规则集中,那么第二个规则集将不检测。如果在第一规则集有一个产生的事件,这相对于双重检测来说能改善性能。

(3)随机检测

随机检查方法随机选择两个规则集中的一个。通过用这种方法,它阻止由于未定义独立冲突引起的DOS攻击。但是这也不能保证发现所有的事件。

在三种不同的检查方法中,首先命中检查方法是一种中间方案。它有助于阻止由于双重检测方法而导致的DoS 攻击,也可以产生为对每个未定义独立冲突(如果可能)产生事件。但是,它不能保证像随机方法不可能产生DoS 攻击,也不能保证像双重检查方法被发现所有事件。

3.2 ICMP

ICMP规则只用ICMP类型域来优化ICMP规则集。没有类型域的规则被认为是通用ICMP规则并且被加到规则集后面。这样,当ICMP类型的某类数据包到来时,使用相应类型的规则进行处理,没有类型域则使用通用规则加以处理。例如,类型代码8(回显请求)的ICMP数据包把类型代码8作为参数选择类型8的规则集加以检测,而不需要检测其它规则。如图3所示。

图3 ICMP 规则的细化

3.3 IP

规则优化器使用IP 传输协议域作为独立参数来对IP 协议进

行优化。包括TCP/UDP 或ICMP 在内的所有IP 规则被分解成特

殊的协议规则集。而除TCP/UDP 或ICMP 之外的其它协议根据

传输协议域被分解成的IP 规则集。而不包括IP 协议域的规则被

认为是通用IP 规则并被添加到TCP/UDP 、IP 和ICMP 规则集后

面。如图4所示④。

图5 优化规则集的总体结构 如图5,这样就构造了一个规则集优化的总体结构,其实只是比图4的更详细一些。当获得一个数据包后,首先判断是否具有IP 协议域,如果没有,使用通用IP 规则加以处理;如果有IP 协议域,则进一步判断是TCP/UDP ,ICMP 和其它,如果是TCP/UDP 则根据独立参数据使用相应规则集予以处理,如图2所示;如果是ICMP 类型则根据其独立参数,使用相应规则集予以处理,如图3;否则使IP 规则加以处理;最后根据检测结果,判断是否是恶意的数据包或发生了入侵。

4结论

规则优化器是通过构造最小的规则集,然后根据数据包的独立参数来选择合适的规则集,消除了对大量无关规则集的检测,大大提高了Snort 入侵检测系统的检测效率,对解决其瓶颈问题大有帮助。

参考文献

① 戴英侠 连一峰 王航 系统安全与入侵检测[M]清华大学出版社2002年3月 第33页

② 韩东海 王超 李群 入侵检测系统实例剖析[M]清华大学出版社2003年5月第54、108页 ③

Marc Norton,Daniel Roelker. SNORT 2.0 RULE OPTIMIZER Sourcefire.Inc 2003.2 ③Douglas https://www.doczj.com/doc/1011703432.html,er 著 林瑶 蒋慧 杜蔚轩译 谢希仁校 用TCP/IP 进行网际互联 第一卷:原理、协议与结构[M]电子工业出版社科院2001年12月 第四版 406页

Windows平台下基于snort的入侵检测系统安装详解

Windows平台下基于snort的入侵检测系统安装详解 序言:最近公司网络总是不间断出现点问题,也搭建了一些流量监控服务器进行监控和分析;也一直在关注网络安全方面的知识。看到snort IDS是一个开源的软件,突然想学习下。就有了搭建Windows下Snort IDS的想法。一下内容参考网络上的资料。 1.软件准备 Apache,php,mysql,winpcap,snort,acid,adodb,jpgraph等 2.软件安装 window平台:windows xp sp3 (1)apache的安装 一路下一步,具体配置如下图:

安装完成后验证web服务是否运行正常 (2)mysql安装

(3)php安装 解压php压缩包到C盘下并命名为php 复制c:\php\phpini-dist到c:\windows下并重命名为php.ini 复制c:\php\php5ts.dll,c:\php\libmysql.dll 到 c:\windows\system32下复制c:\php\ext\php_gd2.dll到c:\windows\system32下 修改 c:\apache\conf\httpd配置文件 添加LoadModule php5_module c:/php/php5apache2_2.dll AddType application/x-httpd-php .php 重启apache服务 在c:\apache\htdocs\下新建test.php http://x.x.x.x/test.php验证php能否工作

snort入侵检测实验报告

实验:入侵检测系统(Snort)的安装与配置 一、实验目的 学会WINDOWS下SNORT的安装与配置 二、实验环境 WinXP虚拟机 三、实验步骤与结果 一.在“我的电脑”中C盘中建立文件夹“zhangxiaohong” 二.安装WinPcap,运行WinPcap_4_1_2.zip,默认安装。 三.安装mysql,运行mysql-5.0.22-win32.zip,选择自定义安装选择安装路径 C:\zhangxiaohong\mysql 下,安装时注意:端口设置为3306(以后要用到),密码本实验设置成123 四.安装apache 1.运行apache_ 2.2.4-win32-x86-no_ssl.zip,安装到c:\zhangxiaohong\Apache 2.安装Apache,配置成功一个普通网站服务器 3.出现Apache HTTP Server 2.0.55的安装向导界面,点“Next”继续 4.确认同意软件安装使用许可条例,选择“I accept the terms in the license agreement”,点“Next”继续 5.将Apache安装到Windows上的使用须知,请阅读完毕后,按“Next”继续 6.选择安装类型,Typical为默认安装,Custom为用户自定义安装,我们这里选 择Custom,有更多可选项。按“Next”继续 7.出现选择安装选项界面,如图所示,左键点选“Apache HTTP Server 2.0.55”,

选择“This feature, and all subfeatures, will be installed on local hard drive.” 8.即“此部分,及下属子部分内容,全部安装在本地硬盘上”。点选 “Change...”,手动指定安装目录。 9.我这里选择安装在“C:\zhangxiaohong\Apache”,各位自行选取了,一般建议 不要安装在操作系统所在盘,免得操作系统坏了之后,还原操作把Apache配置文件 也清除了。选“OK”继续。 10.返回刚才的界面,选“Next”继续。 11.好了现在我们来测试一下按默认配置运行的网站界面,在IE地址栏打 “.0.1”,点“转到”,就可以看到如下页面,表示Apache服务器已安装成功。 12. 五.安装和配置PHP53、安装winpcap 1.解压php-5. 2.5-Win32到c:\zhangxiaohong\php 2.添加gd图形库支持 复制c:\zhangxiaohong\php\php5ts.dll和c: \zhangxiaohong\php\libmysql.dll文件到 C:\Windows\system32 复制c: \zhangxiaohong\php\php.ini-dist到C:\Windows文件夹并重命名为php.ini, 修改php.ini,分别去掉“extension=php_gd2.dll”和“extension=php_mysql.dll”前的分号, 3.并指定extension_dir="c:\zhangxiaohong\php\ext", 4.同时复制c:\zhangxiaohong\php\ext下的php_gd2.dll与php_mysql.dll到C:\Windows\system32 在C:\zhangxiaohong\apache\conf\httpd.conf中添加 LoadModule php5_module c:/zhangxiaohong/php/php5apache2.dll AddType application/x-httpd-php .php AddType application/x-httpd-php-source .phps AddType application/x-httpd-php .html AddType application/x-httpd-php .htm 5.重启Apache服务 在C:\zhangxiaohong\apache\htdocs目录下新建webinf.php(文件内容为:)并使用访问测试是否能够显示当前Apache服务器的信息,如果能够显示表明Apache和php工作基本正常 六.安装snort 1.运行Snort_2_9_0_5_Installer.exe 安装在C:\zhangxiaohong\Snort下即可, 运行C:\zhangxiaohong\Snort\bin\snort.exe或者在DOS中找到该位置, 如果安装Snort成功会出现一个可爱的小猪 2.并按照以下修改C:\zhangxiaohong\Snort\etc\snort.conf文件

Snort网络入侵检测五种病毒

入侵检测技术实验Snort网络入侵检测 学院: 班级: 姓名: 学号:

一、实验目的 1)掌握数据库的使用方法和MySQLfront的安装使用方法 2)掌握wireshark抓取数据包分析关键特征以及相关格式内容 3)掌握病毒的工作原理和通信过程,交互的信息 4)将这门课的内容结合实际进行分析和实践 二、实验原理 1)实验环境: WinPcap_4_1_2.exe 网络数据包截取驱动程序 Snort_2_9_1_Installer.exe Windows 版本的Snort 安装包 mysql-5.5.18-win32.msi Windows 版本的mysql安装包 MySQL_Front_Setup.1765185107.exe mysql数据库可视化软件 snortrules-snapshot-CURRENT.tar.gz Snort规则库 Wireshark-win32-1.12.0.1410492379.exe抓包分析工具 2)实验环境的搭建 按照所给文档“Windows XP下安装配置Snort”的提示安装所需的软件,下面几个图片是成功安装的图片:

图(1)建立snort库 图(2)成功建立snort库

图(3)成功启动snort进行检测 至此,实验环境搭配成功。 三、实验内容 1)测试检测效果 测试虽然成功启动snort,但不能确定是否成功,故此测试任意IP端口 进行测试 配置此时的规则,修改local.rules文件,改规则为:alert ip any any -> any any (msg: "IP Packet detected";sid:1000000;) 此时结果如下图:

Snort入侵检测系统

Snort入侵检测系统 赵鹏通信一团技术室 摘要本文介绍了Snort入侵检测系统的结构、功能。具体介绍了Snort入侵检测系统各部件的功能,并分析了Snort入侵检测系统的优缺点。 关键词IDS 特征检测规则分析预处理净荷 1 概述 Snort是由一个简单的网络管理工具发展分布式入侵检测系统,被用于各种与入侵检测相关的活动,可以用作嗅探器、包记录器或者网络入侵检测系统NIDS。 作嗅探器时,Snort对发往同一个网络其他主机的流量进行捕获。嗅探器利用了以太网的共享特性。它将网路上传输的每一个包的内容都显示在你的监视器上,包括包头和包载荷。 以包记录器模式运行时,Snort以和嗅探器相似的方式抓包,不同的是将收集的数据记入日志而不是显示在屏幕上。 当Snort以网络入侵检测系统(NIDS)模式运行时,Snort也抓取并存储网络上传输的每一个包,关键的不同在于NIDS模式能对数据进行处理。这种处理不是简单的将数据写入文件或是显示在屏幕上,而是对每一个包进行检查以决定它的本质是良性的还是恶意的。当发现看似可疑的流量是,Snort就会发出报警。 NIDS因其能监控大片网段而比其他类型的IDS更受欢迎,这里要关注的是NIDS模式的Snort。 2 Snort入侵检测系统的组成 Snort有5个主要部件:捕包程序库libpcap、包解码器、预处理程序、检索引擎、输出组件。 图1 Snort组件数据流程图 捕包装置把包以原始状态捕获后送给解码器。解码器是进入Snort的第一步,它将特殊协议元素翻译成内部数据结构。它的目的是剥落包头。利用TCP-IP栈解码并且将包放入

一个数据结构中。在最初的捕包和解码完成后,有预处理程序处理流量。许多插入式预处理程序对包进行检查或操作后将它们交给下一个组件——检索引擎。检索引擎对每一个包的一个方面进行简单的检验以检测入侵。最后一个组件是输出插件,它对可疑行为产生报警。 2.1 捕包程序库libpcap和包解码器 大规模的应用程序很少采用单机模式,Snort通常采用分布式体系对网络进行入侵检测。最典型的安装方式是三层体系,即传感器层、服务器层、分析员控制台。 捕包程序库libpcap和包解码器运行在传感器上,负责对抓来的包进行解释并传递警报。由于传感器必须放置在要监控入侵的网段,为了保证安全,通常只安装Snort和它在之上运行的支撑应用程序。建议Linux或BSD等UNIX类型的操作系统。传感器的两块网卡一块用作捕包接口不分配IP,一块用作管理接口分配IP。捕包程序库libpcap运行在Libpcap平台上,由于Libpcap平台的独立性使得Snort可以被移植到任何地方,成为一个真正与平台无关的应用程序。 2.2 预处理程序 预处理是Snort的一类插件。它在检测引擎之前对数据进行处理,并且努力与不断变化的漏洞和攻击保持同步。可以添加新的协议为Snort提供支持。它既能对数据包操作以便检测引擎能正确分析包,又能检测特征检测所不能单独发现的可疑流量。按功能可以分为三类:数据标准化,协议分析和非特征匹配检测。 数据标准化 新的攻击方法和IDS躲避技术不断涌现,以至Snort的检测引擎要么不能检测,要么检测效率不高。预处理程序可以将数据标准化以便检测引擎能正确对其分析。 多态病毒是为了躲避反病毒程序的特征匹配引擎而将病毒代码任意改造和变异。同样的技术也被用于远程利用,shell代码具有多种形态。Fnord预处理程序能检测出变异的NO-OP sled,从而避免了由于缓冲区溢出使处理器强制执行恶意代码导致的程序崩溃。No-op sled能被许多IDS轻易地检测到,除非它在每次被使用时都做修改。如果没有Fnord预处理,Snort将无法检测多态shell代码。 协议分析 由于检测引擎能分析的协议很少,所以用协议处理程序来协助检测。ASNI_decode就能检测ASNI(Abstract Syntax Notation抽象语法标记)协议中的不一致性。较高的协议比如SNMP、LDAP和SSL都依赖ASNI。几乎所有起用SNMP的设备都受到缓冲区溢出或是拒绝服务(DoS)攻击的影响。 非特征匹配检测 这类预处理程序利用不同特征匹配的方法来捕获恶意流量。例如所谓的侦察攻击通常只是一个报警信号,无法确定是不是攻击。信息收集尝试利用了不合规格的流量,但这些流量通常在性质上是无害的。Portscan2和stream4就能发现这类流量和一些恶意黑客使用的躲避技术。 2.3 检测引擎 检测引擎是Snort的一个主要部件,有两个主要功能:规则分析和特征检测。检测引擎通过分析Snort规则来建立攻击特征。Snort规则被载入到检测引擎并以树形数据结构分

:snort入侵检测系统配置使用

甘肃交通职业技术学院信息工程系《信息安全技术》 实训报告四 专业:智控(物联网方向) 班级:物联1201班 姓名:李永霞 学号:0623120116 时间: 2014年5月28日

snort入侵检测系统配置使用 一、项目概述 1、项目目的:了解snort入侵检测系统的原理;了解snort入侵检测系统的主要功能;掌握snort入侵检测系统的基本安装与配置方法。 2、知识与技能考核目标:能够掌握PHP网站服务器的搭建,能完成snort 入侵检测系统的安装与配置;能利用snort入侵检测系统的三种模式展开简单的检测和分析。 3、设备:微型计算机。 4、工具:网络数据包截取驱动程序:WinPcap_4_1_2.zip ;Windows 版本的Snort 安装包;Windows 版本的Apache Web 服务器;ACID(Analysis Console for Intrusion Databases)基于PHP的入侵检测数据库分析控制台;snort 规则包:rules20090505.tar.gz;Adodb(Active Data Objects Data Base)PHP库--adodb504.tgz;PHP图形库。 二、项目内容: 1、项目内容 snort入侵检测系统的安装;PHP网站服务器的搭建;基于mysql的snort 用来存储报警数据的数据库创建;snort入侵检测系统的配置及使用。 2、方案设计 通过观摩指导老师的操作来掌握snort入侵检测系统的安装与配置。 3、实施过程(步骤、记录、数据、程序等) (1)安装数据包截取驱动程序。 双击安装文件winpcap.exe,一直单击“NEXT”按钮完成安装。

入侵检测系统安装和使用

入侵检测系统安装和使 用 Document number:NOCG-YUNOO-BUYTT-UU986-1986UT

入侵检测系统安装和使用 【实验目的】 通过安装并运行一个snort系统,了解入侵检测系统的作用和功能 【实验内容】 安装并配置appahe,安装并配置MySQL,安装并配置snort;服务器端安装配置php脚本,通过IE浏览器访问IDS 【实验环境】 硬件 PC机一台。 系统配置:操作系统windows 10 。 【实验步骤】 1、安装appache服务器 启动appache服务器 测试本机的80 端口是否被占用, 2、安装配置snort

查看 Snort 版本 2、安装最新版本程序

安装MySql配置mysql

运行snort

1、网络入侵检测snort的原理 Snort能够对网络上的数据包进行抓包分析,但区别于其它嗅探器的是,它能根据所定义的规则进行响应及处理。Snort 通过对获取的数据包,进行各规则的分析后,根据规则链,可采取Activation(报警并启动另外一个动态规则链)、Dynamic(由其它的规则包调用)、Alert(报警),Pass(忽略),Log(不报警但记录网络流量)五种响应的机制。? Snort有数据包嗅探,数据包分析,数据包检测,响应处理等多种功能,每个模块实现不同的功能,各模块都是用插件的方式和Snort相结合,功能扩展方便。例如,预处理插件的功能就是在规则匹配误用检测之前运行,完成TIP碎片重组,http解码,telnet解码等功能,处理插件完成检查协议各字段,关闭连接,攻击响应等功能,输出插件将得理后的各种情况以日志或警告的方式输出。

snort入侵检测技术

Snort入侵检测系统分析 2015年12月6日 Snort入侵检测系统分析 简介 Snort的一些源代码是从著名的TCPDUMP软件发展而来的。snort是一个基于LIBPCA包的网络监控软件,可以作为一个十分有效的网络入侵监测系统。它运行在一个“传感器”主机上,监听网络数据。这台机器可能是一台简陋的运行FREEBSD系统的Pentium100 PC,并且至少有一个网卡。 Snort首先根据远端的IP地址建立目录,然后将检测到的包以TCPDUMP的二进制格式记录或者以自身的解码形式存储到这些目录中.这样一来,你就可以使用snort来监测或过滤你所需要的包.Snort是一个轻量级的入侵检测系统,它具有截取网络数据报文,进行网络数据实时分析、报警,以及日志的能力。snort的报文截取代码是基于LIBPCA库的,继承了LIBPCA库的平台兼容性。它能够进行协议分析,内容搜索/匹配,能够用来检测各种攻击和探测,例如:缓冲区溢出、隐秘端口扫描、CGI 攻击、SMB探测、OS指纹特征检测等等。snort使用一种灵活的规则语言来描述网络数据报文,因此可以对新的攻击作出快速地翻译。snort具有实时报警能力。可以将报警信息写到syslog、指定的文件、UNIX套接字或者使用Winpopup消息。snort具有良好的扩展能力。它支持插件体系,可以通过其定义的接口,很方便地加入新的功能。snort还能够记录网络数据,其日志文件可以是TCPDUMP格式,

也可以是解码的ASCII格式。简单的说,Snort是数据包的嗅探器,也是数据包记录器,还是NIDS。提供数据包嗅探和记录功能只是Snort的部分功能,Snort 的特点就是其入侵检测功能—根据入侵规则匹配数据包中的内容。Snort还是一个自由,简介,快速,易于扩展的入侵检测系统,已经被移植到了各种UNIX平台和winY2k上。同时,它也是目前安全领域中,最活跃的开放源码工程之一。 体系结构 Snort有5个主要部件:捕包程序库libpcap、包解码器、预处理程序、检索引擎、输出组件。 图1 Snort组件数据流程图 捕包装置把包以原始状态捕获后送给解码器。解码器是进入Snort的第一步,它将特殊协议元素翻译成内部数据结构。它的目的是剥落包头。利用TCP-IP 栈解码并且将包放入一个数据结构中。在最初的捕包和解码完成后,有预处理程序处理流量。许多插入式预处理程序对包进行检查或操作后将它们交给下一个组件——检索引擎。检索引擎对每一个包的一个方面进行简单的检验以检测入侵。最后一个组件是输出插件,它对可疑行为产生报警。大规模的应用程序很少采用单机模式,Snort通常采用分布式体系对网络进行入侵检测。最典型的安装方式是三层体系,即传感器层、服务器层、分析员控制台。 捕包程序库libpcap和包解码器运行在传感器上,负责对抓来的包进行解释并传递警报。由于传感器必须放置在要监控入侵的网段,为了保证安全,通常只安装Snort和它在之上运行的支撑应用程序。建议Linux或BSD等UNIX类型的操作系统。传感器的两块网卡一块用作捕包接口不分配IP,一块用作管理接口分配IP。捕包程序库libpcap运行在Libpcap平台上,由于Libpcap平台的独立性使得Snort可以被移植到任何地方,成为一个真正与平台无关的应用程序。预处理程序 预处理是Snort的一类插件。它在检测引擎之前对数据进行处理,并且努力与不断变化的漏洞和攻击保持同步。可以添加新的协议为Snort提供支持。它既

基于Snort的入侵检测系统方案

基于Snort的入侵检测系统 用Snort,Apache,MySQL,PHP及ACID构建高级IDS

第一章入侵检测系统及Snort介绍 在当今的企业应用环境中,安全是所有网络面临的大问题。黑客和入侵者已成功的入侵了一些大公司的网络及。目前已经存在一些保护网络架构及通信安全的方法,例如防火墙、虚拟专用网(VPN)、数据加密等。入侵检测是最近几年出现的相对较新的网络安全技术。利用入侵检测技术,我们可以从已知的攻击类型中发现是否有人正在试图攻击你的网络或者主机。利用入侵监测系统收集的信息,我们可以加固自己的系统,及用作其他合法用途。目前市场中也有很多弱点检测工具,包括商品化的和开放源码形式的,可以用来评估网络中存在的不同类型的安全漏洞。 一个全面的安全系统包括很多种工具: ●防火墙:用来阻止进入及走出网络的信息流。防火墙在商业化产品和开放源 码产品中都有很多。最著名的商业化防火墙产品有Checkpoint (.checkpoint.), Cisco (.cisco.)及Netscreen(.netscreen.)。最著名的开放源码防火墙是Netfilter/Iptables(https://www.doczj.com/doc/1011703432.html,)。 ●入侵检测系统(IDS):用来发现是否有人正在侵入或者试图侵入你的网络。 最著名的IDS是Snort,可以在https://www.doczj.com/doc/1011703432.html,下载。 ●弱点评估工具:用来发现并堵住网络中的安全漏洞。弱点评估工具收集的信 息可以指导我们设置恰当的防火墙规则,以挡住恶意的互联网用户。现在有许多弱点评估工具,比如Nmap(https://www.doczj.com/doc/1011703432.html,/)和Nessus(https://www.doczj.com/doc/1011703432.html,/). 以上这些工具可以配合使用,交互信息。一些产品将这些功能捆绑在一起,形成一个完整的系统。

snort入侵检测系统使用实验

《网络安全技术》实验报告 姓名系别实验地点A406 学号年级班实验时间2012-5-24 成绩评定教师签字 实验项目 一、实验目的 1. 通过实验进一步理解IDS的原理和作用; 2. 学习安装、配置和使用Snort入侵检测系统; 3. 学习分析Snort警报文件; 4. 结合指定的攻击特征,学习如何创建检测规则。 二、实验内容 1. 学习Snort基础知识; 2. 安装工具软件(snort、winpcap和nmap)扫描工具; 3. 使用snort进行Xmax扫描检测和目录遍历攻击; 4. 创建和测试规则; 三、实验步骤 (一)软件安装 1. 打开计算机安装nmap,安装时全部按照默认设置直至安装成功。 2. 如果计算机上没有安装winpcap4.1或以上版本,则需要安装,安装时全部按照默认设置直至安装成功。 3. 打开虚拟机,启动windows server 2003,安装snort,将snort安装在C盘,安装时全部按照默认设置直至安装成功。 4. 在虚拟机上安装winpcap,安装时全部按照默认设置直至安装成功。 (二)将snort用作嗅探器 snort有三种工作模式:嗅探器、数据包记录器、网络入侵检测系统。嗅探器模式仅仅是从网络上读取数据包并作为连续不断的流显示在终端上。数据包记录器模式把数据包记录到硬盘上。网路入侵检测模式是最复杂的,而且是可配置的。我们可以让snort分析网络数据流以匹配用户定义的一些规则,并根据检测结果采取一定的动作。 在虚拟机上(IP:172.28.15.150): 1.单击[开始]-[运行]并输入cmd进入命令行。 2.在命令行中键入cd c:\snort\bin,回车确认。 3.键入snort –h,回车确认,这将显示可以与snort一起使用的命令行选项的帮助文件(认真看一下每一个选项的涵义)。

Snort入侵检测系统实验

Snort 入侵检测系统实验
小组成员:09283012 09283025
1. 实验概述
Snort 是一套开放源代码的网络入侵预防软件与网络入侵检测软件。Snort 使用了以侦 测签章(signature-based)与通讯协定的侦测方法。 Snort 有三种工作模式:嗅探器、数据包记录器、网络入侵检测系统。嗅探器模式仅仅 是从网络上读取数据包并作为连续不断的流显示在终端上。 数据包记录器模式把数据包记录 到硬盘上。网路入侵检测模式是最复杂的,而且是可配置的。我们可以让 snort 分析网络数 据流以匹配用户定义的一些规则,并根据检测结果采取一定的动作。Snort 最重要的用途还 是作为网络入侵检测系统(NIDS)。 本次实验任务主要有: (1) 在虚拟机中的 ubuntu 上安装 Snort。 (2) 描述 Snort 规则并进行检测。
2. 实验环境
1. 2. 3. 4. 主机 CPU: Vmware 版本: Linux 发行版 : Linux 内核: Pentium 双核 T4300 @ 2.10GHz VMware Workstation Ubuntu 11.04 Linux 2.6.38
3. 实验过程
由于 Ubuntu 是 Debian 系的 Linux,安装软件非常简单,而且 Ubuntu 在中国科技大 学有镜像,在教育网和科技网下载速度非常快(2~6M/s),就省掉了出国下载安装包的麻烦, 只需要一个命令即可在几十秒钟内安装好所有软件。
具体实验步骤如下: 1、这里使用 Ubuntu 默认命令行软件包管理器 apt 来进行安装。
以下是代码片段: 以下是代码片段:
$ sudo apt-get install libpcap0.8-dev libmysqlclient15-dev mysql-client-5.1 mysql-server-5.1 bison flex apache2 libapache2-mod-php5 php5-gd php5-mysql libphp-adodb php-pear pcregrep snort snort-rules-default 需要注意的是在安装 MySQL 数据库时会弹出设置 MySQL 根用户口令的界面,临时设置其 为“test”。

snort入侵检测实验报告

实验:入侵检测系统(Snort的安装与配置 一、实验目的 学会WINDOW下SNORT勺安装与配置 二、实验环境 WinXP虚拟机 三、实验步骤与结果 一.在"我的电脑”中C盘中建立文件夹"zha ngxiaoh ong 二.安装WinPcap,运行,默认安装。 三.安装mysql,运行5.0.22,选择自定义安装选择安装路径C:\zhangxiaohong'mysql 下,安装时注意:端口设置为3306 (以后要用到),密码本实验设置成123 四.安装apache 1. 运行 2.2.4,安装到c:\zhangxiaohong\Apache 2. 安装Apache,配置成功一个普通网站服务器 3. 出现Apache HTTP Server 2.0.55 的安装向导界面,点“ Next”继续 4. 确认同意软件安装使用许可条例,选择"I accept the terms in the license agreeme nt”,点"Next ”继续 5. 将Apache安装到Windows上的使用须知,请阅读完毕后,按"Next”继续

6. 选择安装类型,Typical 为默认安装,Custom 为用户自定义安装, 我们这里选 择Custom ,有更多可选项。按"Next ”继续 7. 出现选择安装选项界面, 如图所示,左键点选"Apache HTTPServer 2.0.55 ”: 选择"This feature, and all subfeatures, will be in stalled on local hard drive. ” 8. 即“此部分,及下属子部分内容,全部安装在本地硬盘上”。点选 "Cha nge... ”,手动指定安装目录。 9. 我这里选择安装在“ C:\zhangxiaohong\Apache ",各位自行选取了,一般建 议不要安装在操作系统所在盘,免得操作系统坏了之后,还原操作把 Apache 配置文 件也清除了。选“ OK 继续。 10. 返回刚才的界面,选“ Next ”继续。 壷 这不艮條想頁见的貝面靶 ■I 细虬荊血十卿财网姑号證曲歧崖亍比询刪也■,曲雀底乩11?醴脚曲戌购人斷+如曲杵是土土即此对氨帅(唱匡冋 L 用*爵匚件叫卅〒卞TFUTF 刑二讯予忻啊七诃n 汁gm. 3 暫皿盟电快刼如君車善擋止『自由也他喝卞曲Bfi 皑片亠l tor 4 F~"/K 口 IH| ■£ 12. 五. 安装和配置 PHP53安装 winpcap 1. 解压 php-5.2.5-Win32 到 c:\zhangxiaohong\php 2. 添加gd 图形库支持 复制 和 文件到 C:\Windows\system32 复制 到C:\Windows 文件夹并重命名为, 修改,分别去掉“ extension= ”和“ extension= ”前的分号, 3. 并指定 extension_dir="c:\zhangxiaohong\php\ext" , 4. 同时复制 c:\zhangxiaohong\php\ext 下的与到 C:\Windows\system32 在 中添加 LoadModule php5_module c:/zha ngxiaoh ong AddType applicati on /x-httpd-php .php AddType applicati on /x-httpd-php-source .phps AddType applicati on /x-httpd-php .html AddType applicati on /x-httpd-php .htm 11. 好了现在我们来测试一下按默认配置运行的网站界面,在 IE 地址栏打 ,点“转到”,就可以看到如下页面,表示 Apache 服务器已安装成功。 曰11崔£世「瀆Mk ?fl 业竺 巳£刊5£1,髦可U 庖秦牛崖Ml 齐容,或苦把芝…天uutft 痒. “.0.1

入侵检测试验

实验五:入侵检测技术 一、实验目的 通过实验深入理解入侵检测系统的原理和工作方式,熟悉入侵检测系统的配置和使用。实验具体要求如下: 1.理解入侵检测的作用和原理 2.理解误用检测和异常检测的区别 3.掌握Snort的安装、配置和使用等实用技术 二、实验原理 1、入侵检测概念及其功能 入侵检测是指对入侵行为的发现、报警和响应,它通过对计算机网络或计算机系统中的若干关键点收集信息并对其进行分析,从中发现网络或系统中是否有违反安全策略的行为和被攻击的迹象。入侵检测系统(intrusion detection system,IDS)是完成入侵检测功能的软件和硬件的集合。 入侵检测的功能主要体现在以下几个方面: 1). 监视并分析用户和系统的活动。 2). 核查系统配置和漏洞。 3). 识别已知的攻击行为并报警。 4). 统计分析异常行为。 5). 评估系统关键资源和数据文件的完整性。 6). 操作系统的审计跟踪管理,并识别违反安全策略的用户行为。 2、入侵检测的分类 根据IDS检测对象和工作方式的不同,可以将IDS分为基于网络的IDS(简称NIDS)和基于主机的IDS(简称HIDS)。NIDS和HIDS互为补充,两者的结合使用使得IDS有了更强的检测能力。 1). 基于主机的入侵检测系统。 HIDS历史最久,最早用于审计用户的活动,比如用户登录、命令操作、应用程序使用资源情况等。HIDS主要使用主机的审计记录和日志文件作为输入,某些HIDS也会主动与主机系统进行交互以获得不存在于系统日志的信息。HIDS所收集的信息集中在系统调用和应用层审计上,试图从日志寻找滥用和入侵事件的线索。HIDS用于保护单台主机不受网络攻击行为的侵害,需要安装在保护的主机上。 2). 基于网络的入侵检测系统。 NIDS是在网络中的某一点被动地监听网络上传输的原始流量,并通过协议分析、特征、统计分析等分析手段发现当前发生的攻击行为。NIDS通过对流量分析提取牲模式,再与已知攻击牲相匹配或与正常网络行为原形相比较来识别攻击事件。 3、入侵检测系统 1). 入侵检测系统的特点: 入侵检测系统(Intrusion Detection System)是对防火墙有益的补充,它对网络和主机行为

实验三 Snort入侵检测系统部署

1.1.1安装apache 选择custom安装,指定安装目录c:\apache,运行apache安装端,一直ne xt,直到安装完成。我们验证一下: 图3-1 apache安装成功界面 如出现图3-1这种情况,表明安装成功。 1.1.2安装php 解压php-5.2.4-Win32到c:\php。复制c:\php\php5ts.dll和c:\php\lib mysql.dll文件到c:\windows\system32,复制c:\php\php.ini-dist到c:\win dows\并重命名为php.ini,修改php.ini,分别删去“extension=php_gd2.dll”“extension=php_mysql.dll”前的分号,并指定extension_dir="c:\php\ext ",同时复制c:\php\ext下的php_gd2.dll与php_mysql.dll到c:\windows\sy stem32。 在C:\apache\conf\httpd.conf中添加在下面语句中后面添加(回车)#Load Module ssl_module modules/mod_ssl.so115行LoadModule php5_module "c:/ php/php5apache2_2.dll"和在下面语句中后面添加(回车)ScriptAlias /cgi-bi

n/ "C:/apache/cgi-bin/"385行AddType application/x-httpd-php .php(此处应注意空格),并重启Apache服务。在C:\apache\htdocs目录下新建webinf. php(文件内容为:)并使用http://127.0.0.1/webinf.php访问测试是否能够显示当前Apache服务器的信息,如果能够显示表明Apache和p hp工作基本正常重新启动apache服务,点stop再点击start,使用http://12 7.0.0.1/w e b i n f.p h p测试是否安装成功,成功的界面,如图3-2: 图3-2 安装成功界面 1.1.3安装winpcap与snort 按照向导提示安装一路默认安装即可,安装完成后使用下面命令测试是否安装成功。在命令控制台进入snort根目录,输入命令: c:\snort\bin> snort -W (W为大写) 当你看到左上角有个小猪图形,表明安装成功。如图3-3:

入侵检测实验报告Windows环境下snort的安装及使用

实验报告 学院:计算机院专业:信息安全班级: 姓名学号实验组实验 时间 指导教师成绩实验 项目 名称 Windows环境下snort的安装及使用 实验 目的 学会windows下面snort的安装和应用 实验内容1.安装Apache_2.0.46 2.安装PHP 3.安装snort 4.安装配置Mysql数据库5.安装adodb 6.安装配置数据控制台acid 7.安装jpgraph库 8.安装winpcap 9.配置并启动snort 10. 完善配置文件 11. 使用控制台查看结果 12. 配置snort规则 实验 原理 和 方法 Snort安装书流程及配置方法

实验环境1.PC机 2.Acid安装包 3.Adodb安装包 4.Apache安装包 5.Jpgraph安装包 6.Mysql安装包 7.Php安装包 8.Snort安装包 9.Winpcap安装包 实验 步骤 1.安装Apache_ 2.0.46: (1)安装在默认文件夹C:\apache下:

(2)打开配置文件,将其中的Listen 8080,更改为Listen 50080:

(3)进入命令行运行方式,转入C:\apache\apache\bin子目录,输入下面命令:C:\apache\apache2\bin>apache –k install: 2.安装PHP (1)解压缩 4.3.2至C:\php。

(2)复制C:\php下至%systemroot%\System32,至。 (3)添加gd图形支持库,在中添加extension=。如果有该句,将此句前面的“;” 注释符去掉

相关主题
文本预览
相关文档 最新文档