文档库 最新最全的文档下载
当前位置:文档库 › 基于snort的入侵检测系统的研究

基于snort的入侵检测系统的研究

基于snort的入侵检测系统的研究
基于snort的入侵检测系统的研究

摘要

随着网络技术的快速发展和网络应用环境的不断普及,网络安全问题日益突出。入侵检测技术作为一种全新的安全手段,越来越显示出其重要性。随着计算机应用技术和通信技术的发展,互联网已经成为信息传播的重要媒介。计算机网络正在逐渐改变人们的工作和生活方式,对世界经济和文化的发展也产生了深远的影响。然而,网络技术的快速发展以及广泛应用也给人们带来了一定问题。其中尤为突出的就是网络信息安全问题,入侵检测系统正是在这种背景下产生和发展起来的。通过对主机日志或者网络数据的分析,入侵检测系统能够及时的发现入侵行为并进行报警。Snort 是目前最常用的一个强大的轻量级网络入侵检测系统。

首先,本文深入研究了入侵检测技术,概述了入侵检测系统的研究现状,探讨了入侵检测系统的概念、体系架构以及不同分类。并简要描述了入侵检测系统的发展历程.而后着重研究了Snort轻量级入侵检测系统的关键技术,介绍了Snort系统的整体检测流程、插件机制和检测规则等,为项目的设计与开发做了必要的知识储备。接下来明确指出了系统的设计目标和整体设计架构。本文对Snort 进行了深入的研究,从它的特点、体系结构、工作原理等方面进行了分析。实现了Snort 入侵检测系统在Windows 下的构建,利用MySQL 数据库和日志分析控制台ACID 来对报警信息进行图形化管理。针对其中规则匹配算法BM 算法匹配速度比较慢、效率比较低的弱点,采用了一种改进的Sunday 算法来取代BM 算法,此算法结合了BM算法和Sunday算法的优点,使每一次匹配不成功后都能跳过尽可能多的字符以进行下一轮的匹配,且降低了匹配次数,并将该算法在snort系统中进行了实现。

关键词:入侵检测Snort Sunday 算法BM算法

Abstract

Along with the fast development of the network technology and the universal application of the network environment, the security problem in network is increasingly outstanding. And as a new security means, intrusion detection techniques have displayed its important role.With the development of the computer application technology and communications technology, the Internet has become an important medium of information dissemination. Computer network is gradually changing the way people work and live. On the economic and cultural development of the world it also takes a profound impact. However, the rapid development of network technology and extensive application also gave a series of questions to people, which especially is the network information security. Intrusion detection system is in this context produced and developed. Through the analysis of the host log or network packet, intrusion detection system can prompt the discovery of intrusion and the alarm.

First, this thesis deeply researches the technology of intrusion detection, and explores the concept of intrusion detection system. The thesis discusses the concept of intrusion detection systems, including system architecture and the different categories and a brief description of the development process of intrusion detection system. Then, focuses on key technology research of Snort, which is used as lightweight intrusion detection system, introduces the overall detection system proposes that the system design goals and overall design of the structure. this thesis deeply researches the snort from its characteristic, system structure and working principle.Implements the Snort intrusion detection system in the building under the Windows, use the MySQL database and log analysis console ACID to graphical alarm information management.For the rule matching algorithm BM algorithm matching speed is slow, low efficiency of the weaknesses,so proposed an improved algorithm of Sunday to replace the BM algorithm, this algorithm combines the advantages of BM algorithm and Sunday, so that each can be skipped after a match is not successful as many characters for the next round of matches, and reduces the number of matches, and the algorithm was realized in the snort system. KEYWORDS: Intrusion detection Snort Sunday algorithm BM algorithm

目录

1 课题研究背景与意义 (1)

1.1课题研究的背景 (1)

1.2课题研究的意义 (1)

2 国内外研究现状 (3)

3 入侵检测系统概述 (5)

3.1入侵检测系统介绍 (5)

3.1.1 入侵检测系统基本结构 (5)

3.1.2 入侵检测系统工作流程 (6)

3.1.3 入侵检测系统体系结构 (6)

3.2入侵检测系统的相关技术 (7)

3.2.1 snort简介 (7)

3.2.2 snort体系结构及工作流程 (8)

3.2.3 snort规则 (8)

3.3 SNORT处理数据包的瓶颈 (9)

4 基于改进匹配算法的SNORT的设计 (10)

4.1 SNORT的匹配算法及缺陷 (10)

4.1.1 BM 算法 (10)

4.1.2 AC 算法 (11)

4.1.3 Sunday 算法 (11)

4.2匹配算法的优化 (12)

4.2.1 确定首字符串 (13)

4.2.2 模式匹配过程 (14)

4.3改进匹配算法的SNORT实现 (15)

5 实验结果及评估 (17)

5.1系统平台 (17)

5.2实验部署及流程 (17)

5.2.1 实验部署 (17)

5.2.2 实验流程 (18)

5.3实验结果及分析 (20)

6总结与展望 (22)

6.1总结 (22)

6.2展望 (22)

致谢 (23)

参考文献 (24)

1 课题研究背景与意义

1.1课题研究的背景

随着计算机网络和信息化技术的发展,越来越多的电子商务系统、企业信息化平台建立在互联网上,人们在享受网络带来的资源共享及信息交流的同时,也不得不面对黑客和网络入侵者给网络安全带来的威胁。随着计算机和网络技术的不断普及,越来越多的漏洞被人们发现,入侵者的水平也越来越高,手段变得更加高明和隐蔽。所以,网络中计算机系统的安全问题日益成为人们关注的热点。

入侵检测技术[1]作为一种积极主动的防御手段,已成为当今网络安全体系的重要组成部分。而Snort 作为一种开放源代码的入侵检测系统[2]已经得到广泛的应用。它采用的是基于规则的网络信息搜索机制,通过对数据包内容进行模式匹配[3]来检测多种不同的入侵行为和探测活动。但是,由于Snort 只按照规则归类的方法进行规则匹配,而且对数据包内容的模式匹配采用的是Boyer-Moore( 简称BM) 算法,使得其对规则匹配的重复次数过多,模式匹配效率不高,影响了检测系统的整体性能。随着网络资源逐渐增加、网络流量不断提高以及网络攻击类型变化多端,致使Snort 不能满足网络发展的要求,从而漏掉一些复杂的网络攻击行为[4],给系统造成严重后果。因此,如何提高Snort 的检测效率,增强其检测性能己成为入侵检测领域研究的重要内容。

因此,本文试图将规则匹配策略[5]并行化,对于各条件既按照规则本身进行分类,也按照条件分类;同时引入横向淘汰方法,如果一个规则中的一个条件为假,那么就不匹配此规则中的其他条件,在模式匹配过程中采用一种改进的匹配算法,从而能有效地减少数据包的匹配时间,提高了基于Snort 的入侵检测系统的检测效率。

1.2课题研究的意义

论文的选题来源于国家自然科学基金重点项目:基于网络探测的IP网络拓扑[6]发现和性能分析的研究。该项目研究IP网络探测[7]及性能分析技术,包括网络性能、拓扑、无线IP的探测和分析原理及技术、网络性能评价及分析预测技术等。论文主要负责网络入侵检测模块。本文深入研究以开放源代码的形式发行的网络入侵检测系统(NIDS)—Snort入侵检测系统。

面对软件漏洞、内部攻击等网络安全威胁,要想建立完全安全、没有隐患的系统是不可行的,安全不是绝对的,要想提高系统的安全性只能采取一些技术手段来降低风险。传统的安全手段都是集中在“防”上,如在网络边界设置防火墙,防火墙[8]能够具有一定的防范作用,但是防火墙是静态防御,随着攻

击手段的花样迭出,这种传统防火墙的静态防御技术已经没有办法满足需求。首先,黑客能够找到防火墙的后门,进而对内部网络发起进攻;其次,防火墙对于源于网络内部的攻击无能为力;而且防火墙不能实时监测入侵;最后防火墙不能防毒,因此,认为在网络的出口处设置好防火墙就万事皆休的想法是错误的,需要将防火墙与别的安全技术相结合,来建立一种纵深的、动态的防护体系。入侵检测技术是一种主动防御技术,它可以在发生攻击时对攻击行为进行记录,并发出警报消息,甚至可以追踪黑客。入侵检测系统作为整个防护体系的重要部分具有其他安全策略所不可比拟的地位,它能在入侵行为发生前就检测到攻击;在发现攻击行为时,它能将攻击所造成的危害减小到最低;还能将攻击发生时的入侵行为记录下来,并将其作为防范知识加入到策略中,以防止系统再遭受类似攻击。入侵检测系统因其实时性及主动防御的特点,弥补了防火墙的静态防御系统的不足,是网络安全中值得进行深入研究的一个方向。

Snort 入侵检测系统一种著名的开源入侵检测系统,能够有效保护系统信信息安全。目前在全世界已经得到广泛应用。Snort作为一个典型的网络入侵检测系统,将Snort构建于网络中,可在不影响网络性能的情况下对网络进行监测,从而提供对内部攻击、外部攻击和误操作的实时保护。其若干设计原理和实现特点,是目前多数商用入侵检测系统的研发基石。对Snort系统的研究具有较强的商业价值。

本文对Snort 系统的优缺点的分析研究,利用其开源性和支持插件的优势,针对其对新的入侵行为无法检测,漏报率较高和检测速度较低等问题,在Snort 已有的匹配模式[9]上做了一些改进。本文提出的在snort 上应用改进的模式匹配算法,进行网络管理上的应用。如何解决Snort 的检测速度较低、误报率和漏报率较高以及Snort 入侵检测系统无法实时动态检测到新的入侵攻击行为等问题,在应对当网络上的数据随着网络应用的变化、攻击手段变化多端及其变种攻击越来越复杂的具有重要的学术意义和实用价值。

2 国内外研究现状

入侵检测系统(Intrusion Detection System)作为目前网络安全体系中的一种动态防范技术[10]最早源于国外,其研究历史可以追溯到上世纪八十年代初。最初的研究动机是由于人们发现计算机系统的审计记录可以用于识别计算机误用,研究人员可以在对威胁分类的基础上改进审计系统以便其具有误用检测功能。这一时期入侵检测系统的研究还处于试验阶段,主要检测手段是对主机日志的分析,大多是为了保护特殊的网络而进行专门的研究和设计,具有很强的局限性,不能广泛的应用到其它网络环境中。

进入上世纪九十年代,随着网络数据包截获和审计数据分析等技术的成熟,关于入侵检测系统的研究进入了快速发展时期,其主要研究方向也从基于主机的入侵检测系统[11]向基于网络的入侵检测系统转移,入侵检测系统的功能及作用也不仅仅局限于对系统日志的分析,而是逐渐增加了监测并分析网络的活动、检查系统漏洞等功能。直到此时,入侵检测系统才开始由早期的实验室产品逐步转型成为商业产品。计算机互联网行业的高速发展使得网络安全问题变得尤为重要,因而越来越多的研究机构和商业组织开始从事入侵检测等安全技术的研究。随着研究人员的增多,一些其他领域的研究方法也逐渐被引入到了入侵检测系统的研究中。

目前入侵检测系统中应用较为广泛的技术包括神经元网络、人工智能、数据挖掘技术[12]等,这些技术的应用使得规则解析和协议分析等入侵检测方法迅速发展和完善起来。入侵检测系统已经能够针对攻击行为做出适当的反应,并且在有效降低误报率的同时能够对未知的攻击行为进行自学习。在入侵检测产品方面,由于对入侵检测技术的研究比较成熟,国外的研究机构已经成功开发出了多个应用于不同操作系统的典型的入侵检测商业产品。这些商业产品通常是基于服务器或网络进行入侵行为检测的,而且大多采用了误用检测模型。国外主要的入侵检测系统商用产品包括CISco公司的NetRanger Iniemctsec而tysystem公司的Realsecure NetworkAssoeiates公司的CyberCop等等。另外就是最著名的开放源码的Snort轻量级入侵检测系统。

国内的研究工作完全在国际研究范畴之内,很多关键技术都在借鉴国外的经验,没有突破性的进展,在遭遇大规模的或者是突发性的攻击行为时,收效甚微。总体来说,我国商用产品采用的技术主要为误用检测技术,并且向分布式系统方向发展,近年来,我国加大了对整个网络安全方向的研究,同时启动了863 计划,各大高校及研究机构都建立了专门从事网络安全研究的开发团队。总体来说,我国对入侵检测技术的研究还处于初级阶段,技术水平也有待于进一步提高,但是随着人们对网络安全认识的逐步深刻以及国家在这个方向的投入加大,相信用不了多久,我国在入侵检测领域一定能够有所建树。

如今,数据挖掘技术已经渗透于社会各个领域,而且在实际中应用的范例也非常多,但是数据挖掘技术在入侵检测技术中的应用却起步稍晚,时至今日

也只限于尝试探索阶段的实验研究。目前已经有一些研究机构将数据挖掘技术应用于入侵检测中。国内在数据挖掘方面的研究主要是一些高校和研究机构,对其的研究基本还处于产品的研发阶段,不过有很多人提出了比较先进的检测模型和检测技术,例如:浙江大学计算机学院的胡敏等人提出的了实时环境下基于数据挖掘的入侵检测技术。相对于国外大量的商用入侵检测产品,国内对于入侵检测技术研究起步较晚,所以相关产品的商用化程度不高。目前,国内的入侵检测系统商业产品大多是在对Snort系统进行修改的基础上开发出来的。国内主要的入侵检测产品主要有:(1)绿盟科技生产的冰之眼入侵检测系统;(2)方正信息安全技术有限公司生产的方正入侵检测系统;(3)联想网御科技(北京)有限公司生产的联想网御入侵检测系统等等。其中较为著名的产品有北京天融网络安全技术公司的网络卫士系列入侵检测系统,东软的NctEye系列入侵检测系统,中科网威的/天眼0入侵检测系统等。

近些年来,入侵检测的主要创新包括:Forrest 等将免疫原理运用到分布式入侵检测领域;1998 年Ross Anderson 和Abida Khattak 将信息检索技术引进到入侵检测。2000 年 2 月,对Yahoo、Amazon、CNN 等大型网站的分布式拒绝服务(DDos, Distributed Deny of Service)攻击引发了对IDS 系统的新一轮研究热潮。

.

3 入侵检测系统概述

3.1入侵检测系统介绍

3.1.1 入侵检测系统基本结构

入侵检测系统通常由以下4个部分组成,其基本结构如图3-1所示:

图3-1 入侵检测系统基本结构

(1)事件产生器

事件产生器是入侵检测系统中负责原始数据采集的部分,它对数据流和日志文件等进行追踪,然后将搜集到的原始数据转换为事件,并向系统的其他部分提供此事件。

(2)事件分析器

事件分析器接收事件信息,然后对信息进行分析,判断所接收信息是否为入侵行为或异常现象,最后将判断的结果转变为警告信息。

(3)事件数据库

事件数据库是存放各种中间和最终数据的地方。它从事件产生器或者事件分析器接收数据,一般会将数据进行较长时间的保存。事件数据库可以是复杂的数据库,也可以是简单的文本文件。

(4)响应单元

响应单元根据警告信息做出反应,其可以做出切断连接,改变文件属性等强烈反应,也可以只是简单的报警。

以上4部分只是入侵检测系统的基本组成部分。从具体实现的角度看,入侵检测系统一般包括硬件和软件两部分。硬件设备主要完成数据的采集和响应的实施;软件部分主要完成数据的处理,入侵的判断和响应的决策等功能。

3.1.2 入侵检测系统工作流程

入侵检测系统是一个典型的“窥探设备”,它不跨接多个物理网段(通常只有一个监听端口),无需转发任何流量,而只需要在网络上被动的、无声息的收集它所关心的报文即可。对收集来的报文入侵检测系统提取相应的流量,统计特征值,并利用内置的入侵知识库与这些流量特征进行智能分析、比较匹配。根据预设的闭值,匹配耦合度较高的报文流量将被认为是入侵行为,系统将进行报警或有限度的反击,入侵检测的工作流程主要有以下四步:

(1)信息收集

入侵检测的第一步是信息收集,内容包括系统、网络、数据及用户活动的状态和行为,而且需要在计算机网络系统中的若干不同关键点(不同网段和不同主机)收集信息。

(2)信息分析

信息分析是指对上述四类收集到的有关系统、网络、数据及用户活动的状态和行为等信息,一般通过模式匹配、统计分析和完整性分析三种技术手段进行分析。其中前两种方法用于实时的入侵检测,而完整性分析则用于事后分析。

(3)信息存储

当入侵检测系统捕获到有攻击发生时,为了便于系统管理人员对攻击信息进行查看和对攻击行为进行分析,还需要将入侵检测系统收集到的信息进行保存,这些信息通常存储到用户指定的日志文件中,同时存储的信息也为攻击保留了数字证据。

(4)攻击响应

对攻击信息进行了分析并确定攻击的类型后,入侵检测系统会根据用户的设置,对攻击行为进行相应的处理:如发出警报、给系统管理员发邮件等方式提醒用户,或者利用自动装置直接进行处理。如切断连接,过滤攻击者的IP 地址等,从而使系统能够较早的避开或阻断攻击。

3.1.3 入侵检测系统体系结构

当前,在网络环境中主要存在以下三种入侵检测体系结构:

(1)基于主机的入侵检测系统(HIDS)

基于主机的入侵检测通常从主机的审计记录和日志文件中获得所需的主要数据源,并辅之以主机的其他信息,例如文件系统属性、进程状态、CPU 和内存的使用情况等,在此基础上完成检测攻击行为的任务。从技术发展的历程来看,入侵检测是从主机审计的基础上开始发展的,因而早期的入侵检测系统都是基于主机的入侵检测技术。其有很多缺点:首先,由于它严重依赖于特定的操作系统平台,所以,对不同的平台系统而言,它是无法移植的。其次,它在所保护主机下运行,将影响到宿主机的运行性能,特别是当宿主机是服务器的情况。另外,它通常无法对网络环境下发生的大量攻击行为做出及时的反应。(2)基于网络的入侵检测系统(NIDS)

随着网络环境的普及,出现了大量的基于网络的入侵检测系统。基于网络的入侵检测系统通过监听网络中的数据包来获得必要的数据来源,并通过协议分析、特征匹配、统计分析等手段发现当前攻击行为。

基于网络的入侵检测能够实时监控网络中的数据流量,发现潜在的攻击行为,并做出迅速响应。另外,它的分析对象是网络协议,通常而言是标准化的,独立于主机的操作系统类型,因此NIDS 一般没有移植性的问题。同时它的运行丝毫不影响主机或服务器的自身运行。

(3)分布式入侵检测系统(DIDS)

进入20 世纪90 年代后,出现了把基于主机和基于网络的入侵检测结合起来的早期尝试,最早实现此种集成能力的原型系统是分布式入侵检测系统DIDS,它将NSM和Haystack 组件集成到一起,并采用中央控制台来解决关联处理和用户接口的问题。典型的DIDS 是管理端/探测器结构,NIDS 作为探测器放置在网络的各个地方,并向中央管理平台汇报情况。攻击日志定时地传送到管理平台,并保存在中央数据库中,新的攻击特征库则能发送到各个探测器上。每个探测器能根据所在网络的实际需要配置不同的规则集。报警信息能发到管理平台的消息系统,用各种方式通知IDS管理员。现在有人根据此种数据来源混合的方式,称此类系统为“混合型”(Hybrid)系统。最著名的明确体现分布式架构的早期系统为SRI 的EMERALD 系统,它明确将分布式检测架构进行层次化的处理,并实现了不同层次上的分析单元,同时提供了开放的API 接口,实现基本架构下的组件互换功能,这也是处理可扩展性问题的一次有益尝试。后来的Purdue大学设计并原型实现的AAFID 系统体现了基于自治代理的分布式架构思想。

3.2入侵检测系统的相关技术

3.2.1 snort简介

Snort系统[13]是一个以开放源代码形式发行的一个轻量级网络入侵检测系统,由Martin Roesch编写,并由遍布世界各地的众多程序员共同维护和升级。直到今天,Snort已发展为一个多平台的强大的网络入侵检测系统。

Snort IDS是一个轻量级的网络入侵检测系统。它运行在一个传感器(Sensor)主机上,负责监听网络数据。Snort能够把网络数据和系统的检测规则进行模式匹配,从而检测出可能的入侵企图。Snort可以完成数据包嗅探、数据包记录、入侵检测及实时发送报警信息。Snort 是一个基于libpcap 的数据包嗅探器[14]可以作为一个轻量级的网络入侵检测系统NIDS。这里轻量级的意思是占用的资源非常少,能运行在不同的操作系统上。另外,它还能提供一些以前只有商业NIDS才能提供的功能。Snort系统支持多种系统软硬件平台,如Unix系统平台,当前也已出现基于Windows平台的Snort系统。

3.2.2 snort体系结构及工作流程

Snort由以下几个部分组成:数据包嗅探器、预处理器、检测引擎、报警输出模块,如图3-2所示:

图3-2 snort基本组成

Snort首先利用嗅探器在网络中获取数据包,然后通过预处理插件对数据包进行初步的处理,例如格式处理和基本分类。接着按照规则判断这些数据包是否引入安全问题。如果有,则确定如何处理这些数据包(报警或者保存到日志)。它的预处理器、检测引擎和报警模块都是以插件的形式存在,插件程序按照Snort提供的插件函数接口完成,使用时动态加载,在不用修改核心代码的前提下让snort的代码紧密相关,又保证了核心代码的良好扩展性。

3.2.3 snort规则

Snort 规则是Snort 完成入侵检测功能必不可少的一部分,它是以文本形式存在的,位于Snort 目录下,表示的是攻击行为的特征,通过与规则的匹配就可以识别攻击。它根据不同的攻击内容来分组,启动Snort 时,全部的规则文件会形成一个三维链表。Snort 规则现在发布了有8000 多条,并且还在不停的扩充中。Snort规则由规则头和规则体组成。规则头描述了本条规则的处理动作(记录或者报警)、数据包的协议类型(TCP、UDP、ICMP、IP等)、源信息(源地址和源端口)及目的信息(目的地址和目的端口)。规则体中是要检测的内容。

Snort规则文件是一个ASCll文本文件,可以用常用的文本编辑器对其进行编辑。规则文件的内容由以下几部分组成:

①变量定义:在这里定义的变量可以在创建Snort规则时使用。

②Snort规则:在入侵检测时起作用的规则,这些规则应包括总体的策略。

③预处理器:即用来扩展Snort功能的插件"如用Portscan来检测端口扫描。

④包含文件Include Files:可以包括其它Snort规则文件。

⑤输出模块:Snort管理员通过它来指定记录日志和告警的输出。当Snort调用告警及日志子系统时会执行输出模块。

3.3 snort处理数据包的瓶颈

虽然snort功能强大,可移植性极强,跨平台性极佳,扩展性好并且能够支持插件。但是snort入侵检测方法也有很多缺陷并面临着以下问题:Snort 的检测速度较低,Snort 系统对数据包的处理速度一直是影响其性能的一个重大因素,从其捕获网络的一个数据包开始,中间经过解码、预处理并分析、匹配这个过程需要花费大量的时间和系统资源,当其检测速度达不到网络数据的传输速度的要求时,系统就会出现堵塞现象,甚至被迫放弃部分数据包,这种情况不但造成了系统检测的实效,同时也会给检测系统带来很大的危险,导致系统崩溃。

Snort 的误报率和漏报率较高,误报就是把非入侵行为当作入侵行为,而漏报是没有报告真正的入侵行为。Snort 系统是误用入侵检测系统,它根据系统自身的规则库进行入侵行为的匹配,由于每天都可能有新的攻击方法产生和新漏洞发布,而其系统的规则库却不能及时更新,那么Snort 就无法检测到新的入侵行为,从而使得Snort 系统的漏报率大大增加;Snort 入侵检测系统是重要的特征匹配IDS,Snort 系统对所有与特征匹配的数据包都会发出警报,但是很多合法应用程序产生的流量也会引起其错误的警报。

Snort 入侵检测系统无法实时动态检测到新的入侵攻击行为,Snort 入侵检测的是基于特征库的预先定义好的规则检测的,这就导致了其自适应性能相对较差,当网络上的数据随着网络应用变化时,其特征Snort 系统预先是不能识别的,这就意味着它不能自适应地修改检测模式。因此,在当今攻击手段变化多端及其变种攻击越来越复杂的情况下,Snort 入侵检测系统的检测就显得捉襟见肘了。

由于Snort 是利用规则进行检测的,所以首先要根据攻击行为的特征制定规则。数据包嗅探器在网络中是并联的,它的主要功能是对数据包进行捕获并且按照TCP/IP 协议族的协议对其进行解码。预处理器是指在对数据包模式匹配之前,先对其异常检查和代码转换。预处理器的组成元素是模块,所有模块的作用各不相同,可以根据实际需要对相关插件进行调用或停止。随着预处理器加入到Snort 中,用户可以根据需要把一些插件很容易的融入到Snort 系统中,从不同程度上对Snort 的功能进行了延伸。IDS 的核心部分为检测引擎,它将经过预处理的数据包与规则进行匹配来判定是否有攻击发生,它必须有很高的准确率和很快的速度。所以规则的制定是否准确对Snort 系统影响很大,其次检测引擎所采用的模式匹配算法如果速度很快的话,就可以大大提高检测引擎的效率。

4 基于改进匹配算法的snort的设计

4.1 snort的匹配算法及缺陷

4.1.1 BM 算法

BM算法[15]是入侵检测系统中应用最广泛的一种单模式匹配算法。Snort 2.0以前的版本主要采用BM算法进行数据包和规则的内容模式的匹配。2.0及以后的版本中BM算法应用的较少,但它是现行版本中多模式匹配算法的基础。

BM算法的基本思想是字符从右到左进行比较,模式串从左到右移动。假设模式串P=p0p1…pm-1,文本串T=t0t1…tn-1。开始时使p0与t0对齐,判断pm-1与tm-1是否相等,如果相等则向左移动判断pm-2与tm-2是否相等,直到全部匹配成功或发现有不匹配的情况出现。当出现不匹配时,BM算法采用坏字符规则和好后缀规则计算模式串右移的距离。右移的距离由两条规则中较大的值决定。对于P在T中位置i处的尝试,也就是比较模式串P=p0p1…pm-1与T 中子titi+1ti+m-1是否相等。若前m-j-1次比较成功完成,而在第m-j次比较时出现不匹配,即ti+j+1ti+j+2…ti+m-1=pj+1pj+2…pm-1=u并且ti+j=a,pj=b(a ≠b)。在这种情况下根据坏字符和好字符规则如下:

①坏字符规则:在p0p1…pj-1中自右向左查找字符t

i+j出现的第一个位置,若找到则使ti+j与该字符对齐,若没有找到则将P 移动到ti+j后的第一个位置对齐,既使p0与ti+j+1对齐,继续匹配。

②好后缀规则:从pj处开始从右到左查找u 串,若能找到u 串并且其前一字符不是a,则将P 移动到该u 串与T 中已匹配的u 串对齐的位置。若没有找到这样的u 串,则在T 中u 的后缀中查找与P 的前缀相同的最长子串v,若存在这样的串v,移动P 使T 的后缀v 与P 的前缀v 对齐。如果这样的u 串与v 串均未找到,将P 右移m 个字符。即使p0与ti+m对齐,继续匹配。BM算法匹配过程如图4-1所示:

尽管BM 算法在单模式匹配中执行效率较高,但是Snort 在检测入侵时数据包需要与上千条规则进行匹配,此时需重复多遍执行BM 算法,制约了系统运行速率。而且BM算法主要利用了正文串的信息,对模式串的信息使用的很少,其实模式串的内容信息还可以进行挖掘,如果利用的好,可以在一定程度上提升算法的效率。

图4-1 BM算法匹配过程

4.1.2 AC 算法

Aho-Corasick 算法[16](简称AC 算法)是同时搜索多个模式的经典匹配算法。AC 算法利用多个模式串构建一个有限状态模式匹配自动机。自动机是结构化的,每个前缀都可用唯一的状态来标志。当文本中的下一个字符不是模式中预期的下一个字符中的一个时,会出现一条失败链指向那个状态,代表最长的模式前缀,同时也是当前状态的相应后缀。

Snort 应用AC 算法时,做了以下改进,使得该算法在运行时具有更好的性能。(1)同时支持确定型和不确定型有限状态自动机;(2)采用线性链表来初始化状态转移表;(3)执行过程中,自动机的状态转移表转换成全矩阵形式,有利于减少内存开销;(4)在每一个状态转移链表中增加一个布尔型变量,来指示状态中是否存在一个匹配的模式。

4.1.3 Sunday 算法

Sunday 算法[17]是Daniel M Sunday 于1990 年提出的一种比BM 算法搜索速度更快的算法。该算法的核心思想是:在匹配过程中,模式串并不被要求一定要按从左向右进行比较还是从右向左进行比较,它在发现不匹配时,算法能跳过尽可能多的字符以进行过下一步的匹配,从而提高了匹配的效率。

假设在发生不匹配时T[i]≠P[j], 1≤j≤M。此时已经匹配的部分为u,并假设字符串u的长度为L。这个时候,我们很显然知道此时的T[L+i+1]肯定要参加下一轮的匹配。并且P[M]至少要移动到这个位置(即模式串P至少向右移

动一个字符的位置)。

下面分两种情况讨论(我们只讨论模式串从左向右移动,字符按P[M]、P[M-1]、…、P[3]的次序从右向左比较的情况。相反的情况可用类似的方法讨论):

①T[L+i+1]在模式串P 中没有出现。这个时候模式串P 移动到T[L+i+1](包括T[L+i+1]本身)之前的任何位置,都没有意义。因此,P[0]必须移动到T[L+i+1]之后的字符的位置。

②T[L+i+1]在模式串P 中出现。这里所说的T[L+i+1]在模式串P中能够出现是指T[L+i+1]从模式串的右侧,即按P[M-1]、P[M-2]、…、P[0]的次序查找。如果发现T[L+i+1]和P 中的某个字符相同,则记下这个位置,即为k,1≤k≤M,且P[k]= T[L+i+1]。此时,应该把模式串P向右移动M-k 个字符的位置,即移动到P[k]和T[L+i+1]对齐的位置。

按照这种字串移动算法,然后按照字符从右向左的次序匹配。如果完全匹配了,则匹配成功;否则,在进行下一轮的移动,直到正文T 的最右端结束。该算法最坏情况下的时间复杂度为O(N*M)。对于短模式串的匹配问题,该算法执行速度较快。Sunday 算法的匹配过程如图4-2所示:

图4-2 Sunday 算法匹配过程

Snort采用了Boyer—Moore字符串匹配算法进行模式匹配。

BM 算法在匹配效率上有一定的缺陷,目前许多算法已经能够在进行模式匹配时,使模式串获得更大的移动距离,提高了匹配效率。下面介绍的一种算法就是建立在对模式串信息分析和利用的基础上实现的。

4.2 匹配算法的优化

通过上述算法分析,根据将要建立的入侵检测系统的实际应用环境的具体情况,决定采用优化的Sunday算法作为入侵检测系统的模式匹配算法。Sunday 改进算法的核心思想是:在原Sunday算法之中增加了预处理过程。把原来的模

式串P 分成两部分,一部分是首字符串,记作head_string ,一部分是尾字符串首,记作foot_string 。其中首字符串设为模式串P 中的一个最长的真首子串(len(head_string)

4.2.1 确定首字符串

设模式串为P[1…M],文本串为T[1…N],首字符串为head_string 。为了要找最长的子串,在初始匹配时,令head_string=P[1… M]作为新的模式串,若不符合最长字串的要求,则再继续尝试head_string=P[1…M-1], 依此类推。获取head_string 串的方法是:设模式串head_string 的最右边的元素为head_string[j],文本串T 的T[i]是紧跟在head_string[j]和正文对齐的元素之后的元素。如图4-3所示:

文本T

head_string

图4-3 head_string 获取过程

然后用 T [i]依次去匹配head_string[l … j-1], 一旦发现匹配,则将head_string 的最后一个元素去掉,生成新的head_string ,进入下一轮匹配(T [i-1]依次去匹配head_string[l … j-2]);

如果head_string 和T[i]不匹配,则有两种处理方式:

(1)如果T[i]=head_string[j]时,则将串head_string 右移j+l 个单位;

(2)如果T[i]≠head_string[j]时,则将串head_string 右移j+2个位。

如果按照这个规则head_string 串一直能移动到正文T 的最右端,则成功找到head_string ;否则将head_string 的最后一个元素去掉,生成新的head_string ,

跳过尽可能多的字符以进行下一轮的匹配,且降低了匹配次数。不考虑算法的预处理过程,主要以匹配过程中所需的匹配次数作为算法的时耗。改进的Sunday 算法在最坏的情况下所需的字符比较次数小于2N。这是因为,假设匹配至T[i]时,head_string匹配成功,则T[i]之前的(i-1)个字符最多比较(i-I)次,而其后得(N-i+1)个正文字符每个字符最多会比较2次,1次是匹配foot_string时进行的,1次是foot_string匹配失败后,重新匹配head_string时进行的。

4.2.2 模式匹配过程

确定首字符串head_string后,我们也就得到了尾字符串foot_string,foot_string=P-headstring,接着就可以应用Sunday算法进行模式匹配了。匹配过程如图4-4所示:

假设模式串P为{America},文本串为{He is from Amersfoort, he likes America},根据确定首字符串的算法可知,head_string=Amer,foot_string=ica。匹配流程图如图4-5所示:

在第三次移动时,出现首字符串Amer匹配的情况,此时用尾字符串ica进行相应位置到字符匹配,发现匹配失败,于是首字符串移动到尾字符串匹配失败的地方进行下一轮匹配。利用Sunday算法进行第八次移动时,又发生了首字符串匹配的情况,而此时尾字符串也与相应位置的字符匹配成功,至此模式匹配成功。

图4-4 模式匹配过程

图4-5 模式匹配流程图

4.3改进匹配算法的snort实现

我们把改进的Sunday 算法应用到snort 系统,首先设文本串为T(k),长度为n;模式串为P,长度为o,真首子串为H(j),长度m,尾子串F(i),长度为o-m。算法流程如图4-6所示:

根据流程图,改进的Sunday 算法使每一次匹配不成功后都能跳过尽可能多的字符以进行下一轮的匹配,且降低了匹配次数。从而大大提高了snort处理数据包的速度。

图4-6 改进的算法流程图

入侵检测技术 课后答案

精品文档 . 第1章入侵检测概述 思考题: (1)分布式入侵检测系统(DIDS)是如何把基于主机的入侵检测方法和基于网络的入侵检测方法集成在一起的? 答:分布式入侵检测系统是将主机入侵检测和网络入侵检测的能力集成的第一次尝试,以便于一个集中式的安全管理小组能够跟踪安全侵犯和网络间的入侵。DIDS的最初概念是采用集中式控制技术,向DIDS中心控制器发报告。 DIDS解决了这样几个问题。在大型网络互联中的一个棘手问题是在网络环境下跟踪网络用户和文件。DIDS允许用户在该环境中通过自动跨越被监视的网络跟踪和得到用户身份的相关信息来处理这个问题。DIDS是第一个具有这个能力的入侵检测系统。 DIDS解决的另一个问题是如何从发生在系统不同的抽象层次的事件中发现相关数据或事件。这类信息要求要理解它们对整个网络的影响,DIDS用一个6层入侵检测模型提取数据相关性,每层代表了对数据的一次变换结果。 (2)入侵检测作用体现在哪些方面? 答:一般来说,入侵检测系统的作用体现在以下几个方面: ●监控、分析用户和系统的活动; ●审计系统的配置和弱点; ●评估关键系统和数据文件的完整性; ●识别攻击的活动模式; ●对异常活动进行统计分析; ●对操作系统进行审计跟踪管理,识别违反政策的用户活动。 (3)为什么说研究入侵检测非常必要? 答:计算机网络安全应提供保密性、完整性以及抵抗拒绝服务的能力,但是由于连网用户的增加,网上电子商务开辟的广阔前景,越来越多的系统受到入侵者的攻击。为了对付这些攻击企图,可以要求所有的用户确认并验证自己的身份,并使用严格的访问控制机制,还可以用各种密码学方法对数据提供保护,但是这并不完全可行。另一种对付破坏系统企图的理想方法是建立一个完全安全的系统。但这样的话,就要求所有的用户能识别和认证自己,还要采用各种各样的加密技术和强访问控制策略来保护数据。而从实际上看,这根本是不可能的。 因此,一个实用的方法是建立比较容易实现的安全系统,同时按照一定的安全策略建立相应的安全辅助系统。入侵检测系统就是这样一类系统,现在安全软件的开发方式基本上就是按照这个思路进行的。就目前系统安全状况而言,系统存在被攻击的可能性。如果系统遭到攻击,只要尽可能地检测到,甚至是实时地检测到,然后采取适当的处理

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能否工作

入侵检测系统的研究

入侵检测系统的研究 【摘要】近几年来,随着网络技术以及网络规模的 不断扩大,此时对计算机系统的攻击已经是随处可见。现阶段,安全问题成为越来越多的人关注的重点。本文主要分析了入侵检测系统的功能、技术等情况。 【关键词】入侵检测系统研究情况 、刖言 目前的安全防护主要有防火墙等手段,但是由于防火墙 本身容易受到攻击,并且内部网络中存在着一系列的问题,从而不能够发挥其应有的作用。面对这一情况,一些组织开 始提出了通过采用更强大的主动策略以及方案来增强网络 的安全性。其中个最有效的解决方法那就是入侵检测。入 侵检测采用的是一种主动技术,从而弥补防火墙技术的不足,并且也可以防止入侵行为。 二、入侵检测系统的概述 (一)入侵检测系统的具体功能 入侵检测就是要借助计算机和网络资源来识别以及响 应一些恶意使用行为。检测的内容主要分为两个部分:外部的入侵行为、内部用户的未授权活动。然而入侵检测系统是由入侵检测的软件以及硬件这两个部分组成的。到现在为

止,入侵检测成为继防火墙之后的第二道安全闸门。在网络 安全体系中,入侵检测是成为一个非常重要的组成部分。总 之,入侵检测的功能主要包括了以下几个功能:第一,对用户活动进行监测以及分析;第二,审计系统构造变化以及弱点;第三,对已知进攻的活动模式进行识别反映,并且要向相关人士报警;第四,统计分析异常行为模式,保证评估重要系统以及数据文件的完整性以及准确性;第五,审计以及跟踪管理操作系统。 二)入侵检测系统的模型 在1987 年正式提出了入侵检测的模型,并且也是第 次将入侵检测作为一种计算机安全防御措施提出来。入侵检测模型主要分为六个部分:第一部分,主体。主体就是指在目标系统上进行活动的实体,也就是一般情况下所说的用户。第二部分,对象。对象就是指资源,主要是由系统文件、设备、命令等组成的。第三部分,审计记录。在主体对象中,活动起着操作性的作用,然而对操作系统来说,这些操作包括了登陆、退出、读、写以及执行等。异常条件主要是指系统可以识别异常的活动,比如:违反系统读写权限。资源使用情况主要指的是在系统内部,资源的实际消耗情况。时间戳主要是指活动所发生的时间。第四部分,活动档案。活动档案就是指系统正常行为的模型,并且可以将系统正常活动的相关信息保存下来。第五部分,异常记录。异常记录主要是可以将异常事件的发生情况表现出来。第六部分,活动规则。活动规则主要是指通过一组异常记录来判断入侵是否发生在规划集合中。一般情况下,通过将系统的正常活动模型作为准则,并且要按照专家所提出的系统或者统计方法来分析以及处理审计记录,如果已经发生了入侵,那么此时就应该采用相应的处理措施。 三)入侵检测系统的具体分类 通过研究现有的入侵检测系统,可以按照信息源的不同 将入侵检测系统分为以下几类: 第一,以主机为基础的入侵检测系统。通过对主机的审 计记录来进行监视以及分析,从而可以达到了入侵检测。这 监视主要发生在分布式、加密以及交换的环境中,从而可以判断出攻击是否发生。然而这一入侵检测系统存在着缺点,那就是该系统与具体操作系统平台有联系,从而很难将来自网络的入侵检测出来,并且会占有一定的系

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文件

入侵检测系统研究的论文

入侵检测系统研究的论文 摘要介绍了入侵检测系统的概念,分析了入侵检测系统的模型;并对现有的入侵检测系统进行了分类,讨论了入侵检测系统的评价标准,最后对入侵检测系统的发展趋势作了有意义的预测。 关键词入侵检测系统;cidf ;网络安全;防火墙 0 引言 近年来,随着信息和网络技术的高速发展以及政治、经济或者军事利益的驱动,计算机和网络基础设施,特别是各种官方机构的网站,成为黑客攻击的热门目标。近年来对电子商务的热切需求,更加激化了这种入侵事件的增长趋势。由于防火墙只防外不防内,并且很容易被绕过,所以仅仅依赖防火墙的计算机系统已经不能对付日益猖獗的入侵行为,对付入侵行为的第二道防线——入侵检测系统就被启用了。 1 入侵检测系统(ids)概念 1980年,james 第一次系统阐述了入侵检测的概念,并将入侵行为分为外部滲透、内部滲透和不法行为三种,还提出了利用审计数据监视入侵活动的思想[1]。即其之后,1986年dorothy 提出实时异常检测的概念[2]并建立了第一个实时入侵检测模型,命名为入侵检测专家系统(ides),1990年,等设计出监视网络数据流的入侵检测系统,nsm(network security monitor)。自此之后,入侵检测系统才真正发展起来。 anderson将入侵尝试或威胁定义为:潜在的、有预谋的、未经授权的访问信息、操作信息、致使系统不可靠或无法使用的企图。而入侵检测的定义为[4]:发现非授权使用计算机的个体(如“黑客”)或计算机系统的合法用户滥用其访问系统的权利以及企图实施上述行为的个体。执行入侵检测任务的程序即是入侵检测系统。入侵检测系统也可以定义为:检测企图破坏计算机资源的完整性,真实性和可用性的行为的软件。 入侵检测系统执行的主要任务包括[3]:监视、分析用户及系统活动;审计系统构造和弱点;识别、反映已知进攻的活动模式,向相关人士报警;统计分析异常行为模式;评估重要系统和数据文件的完整性;审计、跟踪管理操作系统,识别用户违反安全策略的行为。入侵检测一般分为三个步骤:信息收集、数据分析、响应。 入侵检测的目的:(1)识别入侵者;(2)识别入侵行为;(3)检测和监视以实施的入侵行为;(4)为对抗入侵提供信息,阻止入侵的发生和事态的扩大; 2 入侵检测系统模型 美国斯坦福国际研究所(sri)的于1986年首次提出一种入侵检测模型[2],该模型的检测方法就是建立用户正常行为的描述模型,并以此同当前用户活动的审计记录进行比较,如果有较大偏差,则表示有异常活动发生。这是一种基于统计的检测方法。随着技术的发展,后来人们又提出了基于规则的检测方法。结合这两种方法的优点,人们设计出很多入侵检测的模型。通用入侵检测构架(common intrusion detection framework简称cidf)组织,试图将现有的入侵检测系统标准化,cidf阐述了一个入侵检测系统的通用模型(一般称为cidf模型)。它将一个入侵检测系统分为以下四个组件: 事件产生器(event generators) 事件分析器(event analyzers) 响应单元(response units) 事件数据库(event databases) 它将需要分析的数据通称为事件,事件可以是基于网络的数据包也可以是基于主机的系统日志中的信息。事件产生器的目的是从整个计算机环境中获得事件,并向系统其它部分提供此事件。事件分析器分析得到的事件并产生分析结果。响应单元则是对分析结果做出反应

入侵检测系统综述

入侵检测系统综述 对于任何一个国家、企业或者个人来说,随着计算机及网络的发展,网络安全问题是一个无法回避且重要的问题呈现在面前,很多非法分子或者合法用户的不当使用都会对网络系统造成破坏,针对这些行为要采用相应的技术进行制止或者预防,入侵检测技术成为解决该问题的最好方法之一。文章主要简综述了入侵检测系统的基本检测方法。 标签:入侵检测;入侵检测系统;误用检测;异常检测 1 入侵检测系统概述 随着计算机技术及网络技术的不断发展,计算机及数据的安全问题随之出现,传统的防火墙技术虽然可以进行有效的防御,但是由于其存在很多弊端,例如:很多外部访问不经过防火墙;来自计算机数据库内部的威胁等,防火墙就无能为力了,它并不能对已经进入计算机系统或者来自计算机数据库内部威胁进行检测;访问控制系统可以根据权限来防止越权行为,但是很难保证具有高级权限的用户对系统所做的破坏行为,也无法阻止低权限用户非法活动高级权限对系统所进行的破坏;漏洞扫描系统是采用模拟攻击的形式对目标可能存在的已知安全漏洞进行逐项检查,然后根据扫描结果向用户提供系统的安全性分析报告,以便用户采取相应措施来提高网络安全。它虽然可以发现系统和网络漏洞,但无法对系统进行实时扫描,入侵检系统可以进行实时扫描。 发现入侵行为就是入侵检测。它通过从计算机网络或系统的核心点收集信息并对其进行分析,然后从其中看网络或系统中是否有违反安全策略的动作和被攻击的迹象。入侵检测目的是保证系统资源的可用性、机密性和完整性,要达到这个目的就要对系统的运行状态进行监视,以便发现各种攻击操作、攻击结果或者攻击动态。进行入侵检测的硬件与软件的组合构成了入侵检测系统,它能执行所有的入侵检测任务和功能,监视或阻止入侵或者企图控制系统或者网络资源的行为,它可以实时检测入侵者和入侵信息,并进行相应处理,最大化的保证系统安全。通过对系统各个环节来收集和分析信息,发现入侵活动的特征、对检测到的行为自动作出响应、记录并报告检测过程及结果是入侵检测系统的基本原理的四个部分。 入侵检测系统从系统结构看,至少包括信息源、分析引擎和响应三个功能模块。信息源的功能是分析引擎提供原始数据今夕入侵分析,信息源的正确性和可靠性直接影响入侵检测的效果,要使检测网络系统软件具有完整性,必须使IDS 软件自己有很强的坚固性;分析引擎的功能是执行入侵或者异常行为检测;分析引擎的结果提交给响应模块后,响应模块采取必要和适当的措施,阻止入侵行为或回复受损害的系统。分析引擎包括完整性分析、模式匹配和统计分析。响应可分为主动响应和被动响应。主动响应就是系统自动或者以用户设置的方式阻断攻击过程或以其他方式来阻断攻击过程;被动响应是系统只报告和记录发生的事件。响应包括简单报警、切断连接、封锁用户、改变文件属性,最大的反应就是

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.wendangku.net/doc/a211357149.html,)。 ●入侵检测系统(IDS):用来发现是否有人正在侵入或者试图侵入你的网络。 最著名的IDS是Snort,可以在https://www.wendangku.net/doc/a211357149.html,下载。 ●弱点评估工具:用来发现并堵住网络中的安全漏洞。弱点评估工具收集的信 息可以指导我们设置恰当的防火墙规则,以挡住恶意的互联网用户。现在有许多弱点评估工具,比如Nmap(https://www.wendangku.net/doc/a211357149.html,/)和Nessus(https://www.wendangku.net/doc/a211357149.html,/). 以上这些工具可以配合使用,交互信息。一些产品将这些功能捆绑在一起,形成一个完整的系统。

入侵检测系统技术综述

本文由♀皓月♂贡献 doc文档可能在WAP端浏览体验不佳。建议您优先选择TXT,或下载源文件到本机查看。 入侵检测系统技术综述 自从计算机问世以来,安全问题就一直存在着,使用者也一直未给予足够的重视,结果摘要:大量连接到Internet上的计算机暴露在愈来愈频繁的攻击中.本文先介绍入侵行为的概念和演化,然后按时间顺序,沿着技术发展的脉络,回顾了入侵检测技术从20世纪70年代初到今天的发展历程.文章以历史和实践的观点$透视入侵和入侵检测技术相互制约,相互促进的演进过程. 关键词:关键词:计算机安全;入侵检测;入侵检测系统;入侵检测系统的历史 1 、引言 自从计算机问世以来,安全问题就一直存在。特别是随着Internet的迅速扩张和电子商务的兴起,人们发现保护资源和数据的安全,让他免受来自恶意入侵者的威胁是件相当困难的事。提到网络安全,很多人首先想到的是防火墙,防火墙作为一种静态的访问控制类安全产品通常使用包过滤的技术来实现网络的隔离。适当配置的防火墙虽然可以将非预期的访问请求屏蔽在外,但不能检查出经过他的合法流量中是否包含着恶意的入侵代码。在这种需求背景下,入侵检测系统(IDS)应运而生。 2、概述 计算机网络技术的飞速发展极大地改变了人们的学习、工作以及生活方式。随着计算机及网络系统中存储的重要信息越来越多,系统的安全问题也显得E1益突出,我们需要尽可能找到更好的措施以保护系统免受入侵者的攻击,尽管已有许多防御技术,如防火墙,但它只是一种静态的被动的防护技术。要求事先设置规则。对于实时攻击或异常行为不能实时反应。无法自动调整策略设置以阻断正在进行的攻击。因而出现了入侵检测系统,它是一种动态的网络安全策略,能够有效地发现入侵行为和合法用户滥用特权的行为,它是P2DR(动态安全模型)的核心部分。 3、入侵检测系统产生及其发展 绝大多数入侵检测系统的处理效率低下,不能满足大规模和高带宽网络的安全防护要求。这就决定了当前的入侵检测系统在未来信息战中的作用是有限的。因为信息战中双方使用的网络进攻手段肯定是储备的、从未出现的新手段。即使检测到攻击,现有的入侵检测系统的响应能力和实时性也很有限,不能预防快速脚本攻击,对于此类恶意攻击只能发现和纪录,而不能实时阻止。国内只有少数的网络入侵检测软件,相关领域的系统研究也是刚刚起步,与外国尚有很大差距。目前,在入侵检测的技术发展上还是存在着以下主要缺陷:(1)网络安全设备的处理速度慢。(2)入侵检测系统的漏报率和误报率高。(3)入侵检测系统的互动性能差,整个系统的 安全性能低。 4、入侵检测系统的概论 4.1 入侵检测系统的概念 入侵检测系统(Intrusion Detection System,简称IDS)是从多种计算机系统及网络系统中收集信息,再通过这些信息分析入侵特征的网络安全系统。IDS被认为是防火墙之后的第二道安全闸门,它能使在入侵攻击对系统发生危害前,检测到入侵攻击,并利用报警与防护系统驱逐入侵攻击;在入侵攻击过程中,能减少入侵攻击所造成的损失;在被入侵攻击后,收集入侵攻击的相关信息,作为防范系统的知识,添加入策略集中,增强系统的防范能力,避免系统再次受到同类型的入侵。 4.2 入侵检测系统的分类 入侵检测技术主要可以分成两类:异常入侵检测(Anomaly Detection)技术和误用人侵检测(Misuse Detec—tion)技术。 4.2.1 基于统计模型的异常入侵检测 1)基于阈值测量

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一起使用的命令行选项的帮助文件(认真看一下每一个选项的涵义)。

启明星辰入侵检测设备配置文档

启明星辰入侵检测设备配置说明 天阗NT600-TC-BRP 第1章设备概述与工作流程介绍 1.1设备概述 入侵检测设备是一个典型的"窥探设备"。它不跨接多个物理网段(通常只有一个监听端口),无须转发任何流量,而只需要在网络上被动的、无声息的收集它所关心的报文即可。对收集来的报文,入侵检测设备提取相应的流量统计特征值,并利用内置的入侵知识库,与这些流量特征进行智能分析比较匹配。根据预设的阀值,匹配耦合度较高的报文流量将被认为是进攻,入侵检测系统将根据相应的配置进行报警或进行有限度的反击。不同于防火墙,IDS入侵检测设备是一个监听设备,没有跨接在任何链路上,无须网络流量流经它便可以工作。因此,对IDS的部署,唯一的要求是:IDS应当挂接在所有所关注流量都必须流经的链路上。 典型拓扑:

1.2 IDS工作流程介绍 入侵检测系统的工作流程大致分为以下几个步骤: 1.信息收集入侵检测的第一步是信息收集,内容包括网络流量的内容、用户连接活动的状态和行为。 2.信号分析对上述收集到的信息,一般通过三种技术手段进行分析:模式匹配,统计分析和完整性分析。其中前两种方法用于实时的入侵检测,而完整性分析则用于事后分析。 具体的技术形式如下所述: 1).模式匹配,模式匹配就是将收集到的信息与已知的网络入侵和系统误用模式数据库进行比较,从而发现违背安全策略的行为。 2).统计分析,分析方法首先给信息对象(如用户、连接、文件、目录和设备等)创建一个统计描述,统计正常使用时的一些测量属性(如访问次数、操作失败次数和延时等)。测量属性的平均值将被用来与网络、系统的行为进行比较,任何观察值在正常偏差之外时,就认为有入侵发生。 3).完整性分析,完整性分析主要关注某个文件或对象是否被更改,包括文件和目录的内容及属性,它在发现被更改的、被特络伊化的应用程序方面特别有效。完整性分析利用强有力的加密机制,称为消息摘要函数(例如MD5),能识别及其微小的变化。

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”。

相关文档