入侵检测实验
入侵智能检测实验报告(3篇)

第1篇一、实验背景随着信息技术的飞速发展,网络安全问题日益凸显。
入侵检测技术作为网络安全的重要手段,能够实时监控网络系统的运行状态,及时发现并阻止非法入侵行为,保障网络系统的安全稳定运行。
本实验旨在通过构建一个入侵智能检测系统,验证其有效性,并分析其性能。
二、实验目的1. 理解入侵检测技术的基本原理和实现方法。
2. 掌握入侵检测系统的构建过程。
3. 评估入侵检测系统的性能,包括检测准确率、误报率和漏报率。
4. 分析实验结果,提出改进建议。
三、实验材料与工具1. 实验材料:KDD CUP 99入侵检测数据集。
2. 实验工具:Python编程语言、Scikit-learn库、Matplotlib库。
四、实验方法1. 数据预处理:对KDD CUP 99入侵检测数据集进行预处理,包括数据清洗、特征选择、归一化等操作。
2. 模型构建:选择合适的入侵检测模型,如支持向量机(SVM)、随机森林(Random Forest)等,进行训练和测试。
3. 性能评估:通过混淆矩阵、精确率、召回率等指标评估入侵检测系统的性能。
4. 实验结果分析:分析实验结果,总结经验教训,提出改进建议。
五、实验步骤1. 数据预处理(1)数据清洗:删除缺失值、异常值和重复数据。
(2)特征选择:根据相关性和重要性选择特征,如攻击类型、服务类型、协议类型等。
(3)归一化:将数据特征进行归一化处理,使其在相同的量级上。
2. 模型构建(1)选择模型:本实验选择SVM和Random Forest两种模型进行对比实验。
(2)模型训练:使用预处理后的数据对所选模型进行训练。
(3)模型测试:使用测试集对训练好的模型进行测试,评估其性能。
3. 性能评估(1)混淆矩阵:绘制混淆矩阵,分析模型的检测准确率、误报率和漏报率。
(2)精确率、召回率:计算模型的精确率和召回率,评估其性能。
4. 实验结果分析(1)对比SVM和Random Forest两种模型的性能,分析其优缺点。
snort入侵检测实验报告

snort入侵检测实验报告《snort入侵检测实验报告》摘要:本实验旨在通过使用snort入侵检测系统,对网络中的入侵行为进行监测和分析。
通过搭建实验环境,模拟各种入侵行为,并利用snort系统进行实时监测和报警,最终得出了实验结果并进行了分析。
一、实验背景随着网络技术的不断发展,网络安全问题也日益突出。
入侵检测系统作为网络安全的重要组成部分,扮演着监测和防范网络入侵的重要角色。
snort作为一款开源的入侵检测系统,具有灵活性和高效性,被广泛应用于网络安全领域。
二、实验目的1. 了解snort入侵检测系统的工作原理和基本功能;2. 掌握snort系统的安装和配置方法;3. 利用snort系统对网络中的入侵行为进行实时监测和分析;4. 总结实验结果,提出改进建议。
三、实验环境搭建1. 硬件环境:PC机一台,网络交换机一台;2. 软件环境:Ubuntu操作系统,snort入侵检测系统;3. 实验网络:搭建一个简单的局域网环境,包括多台主机和一个路由器。
四、实验步骤1. 安装和配置snort系统;2. 在实验网络中模拟各种入侵行为,如端口扫描、ARP欺骗、DDoS攻击等;3. 使用snort系统进行实时监测和报警;4. 收集实验数据,进行分析和总结。
五、实验结果通过实验,我们成功搭建了snort入侵检测系统,并对网络中的入侵行为进行了监测和分析。
实验结果显示,snort系统能够有效地检测到各种入侵行为,并及时发出警报。
同时,我们也发现了一些不足之处,如对于一些新型的入侵行为可能无法及时识别和防范。
六、实验结论snort入侵检测系统是一款高效、灵活的入侵检测工具,能够有效地监测和防范网络入侵行为。
然而,也需要不断改进和完善,以应对不断变化的网络安全威胁。
七、改进建议1. 不断更新snort系统的规则库,以适应新型的入侵行为;2. 加强对snort系统的配置和管理,提高其检测和防范能力;3. 结合其他安全设备,构建多层次的网络安全防护体系。
入侵检测实验报告小结(3篇)

第1篇一、实验背景与目的随着信息技术的飞速发展,网络安全问题日益凸显。
为了保障网络系统的安全稳定运行,入侵检测技术应运而生。
本次实验旨在通过实际操作,深入了解入侵检测系统的原理、技术以及在实际应用中的效果,提高对网络安全防护的认识。
二、实验内容与步骤1. 实验环境搭建(1)硬件环境:一台装有Windows操作系统的计算机,用于安装入侵检测系统。
(2)软件环境:安装Snort入侵检测系统、WinPCAP抓包工具、Wireshark网络分析工具等。
2. 实验步骤(1)安装WinPCAP:按照向导提示完成安装,使网卡处于混杂模式,能够抓取数据包。
(2)安装Snort:采用默认安装方式,完成安装。
(3)配置Snort:编辑Snort配置文件,设置规则、端口、网络接口等信息。
(4)启动Snort:运行Snort服务,使其处于监听状态。
(5)抓取数据包:使用Wireshark抓取网络数据包,观察入侵检测系统的工作效果。
(6)分析数据包:对抓取到的数据包进行分析,验证入侵检测系统是否能够正确识别和报警。
三、实验结果与分析1. 实验结果(1)Snort入侵检测系统成功启动,并进入监听状态。
(2)通过Wireshark抓取到的数据包,入侵检测系统能够正确识别出攻击行为,并发出报警。
(3)分析数据包,发现入侵检测系统对多种攻击类型(如SQL注入、跨站脚本攻击等)具有较好的检测效果。
2. 实验分析(1)Snort入侵检测系统在实验过程中表现良好,能够有效地检测出网络攻击行为。
(2)通过实验,加深了对入侵检测原理和技术的理解,掌握了Snort的配置和使用方法。
(3)实验过程中,发现入侵检测系统对某些攻击类型的检测效果不够理想,如针对加密通信的攻击。
这提示我们在实际应用中,需要根据具体场景选择合适的入侵检测系统。
四、实验总结与展望1. 实验总结本次实验通过实际操作,使我们对入侵检测系统有了更加深入的了解。
实验结果表明,入侵检测技术在网络安全防护中具有重要作用。
入侵检测实验报告

入侵检测实验报告一实验环境搭建1安装winpcap按向导提示完成即可(有时会提示重启计算机。
)使网卡处于混杂模式,能够抓取数据包。
2安装snort采用默认安装完成即可安装完成使用下列命令行验证是否成功C:\Snort\bin>snort.exe -W (也可以看到所有网卡的Interface 列表)看到那个狂奔的小猪了吗?看到了,就表示snort 安装成功。
3安装和设置mysql设置数据库实例流程:建立snort 运行必须的snort 库和snort_archive 库C:\Program Files\MySQL\MySQL Server 5.0\bin>mysql -u root -pEnter password: (你安装时设定的密码,这里使用mysql 这个密码)mysql>create database snort;mysql>create database snort_archive;使用C:\Snort\schemas 目录下的create_mysql 脚本建立Snort 运行必须的数据表snort\schemas\create_mysqlc:\mysql\bin\mysql -D snort_archive -u root -psnort\schemas\create_mysql附:使用mysql -D snort -u root -p命令进入snort数据库后,使用show tables命令可以查看已创建的表。
建立acid和snort用户,在root用户下建立mysql> grant usage on *.* to "acid"@"localhost" identified by "acidtest"; mysql> grant usage on *.* to "snort"@"localhost" identified by "snorttest"; 为acid用户和snort用户分配相关权限mysql> grant select,insert,update,delete,create,alter on snort .* to"snort"@"localhost";mysql> grant select,insert,update,delete,create,alter on snort .* to"acid"@"localhost";mysql> grant select,insert,update,delete,create,alter on snort_archive "acid"@"localhost";mysql> grant select,insert,update,delete,create,alter on snort_archive "snort"@"localhost";4测试snort启动snor tc:\snort\bin>snort -c "c:\snort\etc\snort.conf" -l "c:\snort\logs" -i 2 -d5安装虚拟机安装成功如下Ping 通表示虚拟机和主机能够正常通信。
入侵检测系统实验报告

入侵检测系统实验报告
《入侵检测系统实验报告》
摘要:
入侵检测系统是网络安全领域中的重要工具,它能够及时发现并阻止网络中的
恶意行为。
本实验旨在测试不同类型的入侵检测系统在面对各种攻击时的表现,通过对比实验结果,评估其性能和可靠性。
实验设计:
本实验选取了常见的入侵检测系统,包括基于规则的入侵检测系统和基于机器
学习的入侵检测系统。
针对不同的攻击类型,比如DDoS攻击、SQL注入攻击、恶意软件传播等,设置了相应的实验场景和测试用例。
通过模拟攻击行为,收
集系统的响应数据,对系统的检测能力、误报率和漏报率进行评估。
实验结果:
实验结果表明,基于规则的入侵检测系统在对已知攻击行为的检测上表现较为
稳定,但对于未知攻击的识别能力有限。
而基于机器学习的入侵检测系统在处
理未知攻击方面表现更为优秀,但在面对复杂多变的攻击行为时,容易出现误
报和漏报。
综合考虑,不同类型的入侵检测系统各有优劣,可以根据具体的网
络环境和安全需求选择合适的方案。
结论:
入侵检测系统在网络安全中扮演着重要的角色,通过本实验的测试和评估,我
们可以更好地了解不同类型的入侵检测系统的特点和适用场景,为网络安全防
护提供参考和建议。
未来,我们将继续深入研究和实验,不断改进入侵检测系
统的性能和可靠性,为网络安全保驾护航。
主机入侵检测实验报告(3篇)

第1篇一、实验目的1. 理解主机入侵检测系统的基本原理和组成。
2. 掌握主机入侵检测系统的搭建过程。
3. 学习如何使用主机入侵检测系统进行入侵检测。
4. 提高网络安全意识和防护能力。
二、实验环境1. 操作系统:Windows 102. 主机入侵检测系统:OSSEC3. 实验网络拓扑:单主机局域网三、实验步骤1. 系统环境准备(1)安装操作系统:在实验主机上安装Windows 10操作系统。
(2)安装OSSEC:从OSSEC官网下载最新版本的OSSEC安装包,按照安装向导完成安装。
2. 配置OSSEC(1)配置OSSEC服务器:- 编辑`/etc/ossec.conf`文件,设置OSSEC服务器的基本参数,如服务器地址、日志路径等。
- 配置OSSEC服务器与客户端的通信方式,如SSH、SSL等。
- 配置OSSEC服务器接收客户端发送的日志数据。
(2)配置OSSEC客户端:- 在客户端主机上安装OSSEC客户端。
- 编辑`/etc/ossec.conf`文件,设置客户端的基本参数,如服务器地址、日志路径等。
- 配置客户端与服务器之间的通信方式。
3. 启动OSSEC服务(1)在服务器端,启动OSSEC守护进程:```bashsudo ossec-control start```(2)在客户端,启动OSSEC守护进程:```bashsudo ossec-control start```4. 模拟入侵行为(1)在客户端主机上,执行以下命令模拟入侵行为:```bashecho "test" >> /etc/passwd```(2)在客户端主机上,修改系统配置文件:```bashecho "test" >> /etc/hosts```5. 检查OSSEC日志(1)在服务器端,查看OSSEC日志文件:```bashcat /var/log/ossec/logs/alerts.log```(2)分析日志文件,查找与入侵行为相关的报警信息。
计算机网络安全实验网络攻击与入侵检测实践
计算机网络安全实验网络攻击与入侵检测实践计算机网络安全是当今社会不可忽视的重要领域,网络攻击与入侵检测是保护计算机网络安全的重要手段之一。
在这篇文章中,我们将讨论计算机网络安全实验中的网络攻击与入侵检测实践,并探讨如何采取措施来保护网络免受外部攻击和入侵。
一、实验背景计算机网络安全实验旨在通过模拟网络环境,实践网络攻击与入侵检测的基本原理和方法。
通过这样的实验,我们可以更好地理解网络攻击的方式和手段,并通过入侵检测工具和技术来捕获和阻止网络入侵。
二、实验目的1. 了解常见的网络攻击类型,如DDoS攻击、SQL注入、网络钓鱼等,及其原理和特点。
2. 掌握网络入侵检测的基本概念和方法。
3. 熟悉使用一些常见的入侵检测系统和工具,如Snort、Suricata等。
4. 提高对网络安全威胁的识别和防护能力。
三、实验步骤与方法1. 网络攻击模拟在实验室的网络环境中,我们可以模拟各种网络攻击,比如使用DDoS攻击模拟工具向目标服务器发送大量伪造请求,观察服务器的响应情况;或者使用SQL注入工具来试图入侵一个具有弱点的网站,看看是否能够成功获取敏感信息。
2. 入侵检测系统的部署为了及时发现并阻止网络入侵,我们需要在实验网络中部署入侵检测系统。
其中,Snort是一个常用的入侵检测系统,我们可以下载、安装并配置Snort来监测并阻止网络攻击和入侵尝试。
3. 日志分析与事件响应入侵检测系统产生的日志可以被用于进一步分析和判断网络是否受到了攻击或者入侵。
我们可以使用日志分析工具来对日志进行分析,找出异常行为和异常流量,并采取相应的事件响应措施,如隔离受感染的主机、阻止攻击流量。
四、实验结果与分析通过实验,我们可以获得网络攻击的各种实例和入侵检测系统的日志。
通过对这些数据的分析,我们可以得到以下结论:1. 根据特定的攻击模式和行为特征,我们可以确定某次网络活动是否存在攻击或入侵行为。
2. 入侵检测系统可以在很大程度上减少恶意攻击和入侵尝试对网络的影响。
snort入侵检测实验报告
Snort入侵检测实验报告1. 引言Snort是一种开源的网络入侵检测系统,广泛应用于网络安全领域。
本文将介绍如何使用Snort进行入侵检测的实验过程和结果。
2. 实验准备在进行实验之前,我们需要准备以下软件和硬件环境:•一台运行Linux操作系统的计算机•Snort软件•一个用于测试的虚拟网络环境3. 实验步骤步骤1: 安装Snort首先,我们需要在Linux计算机上安装Snort软件。
可以通过以下命令进行安装:sudo apt-get install snort步骤2: 配置Snort安装完成后,我们需要对Snort进行配置。
打开Snort的配置文件,可以看到一些默认的配置项。
根据实际需求,可以对这些配置项进行修改。
例如,可以指定Snort的日志输出路径、规则文件的位置等。
步骤3: 下载规则文件Snort使用规则文件来检测网络流量中的异常行为。
我们可以从Snort官方网站或其他来源下载规则文件。
将下载的规则文件保存在指定的位置。
步骤4: 启动Snort配置完成后,使用以下命令启动Snort:sudo snort -c <配置文件路径> -l <日志输出路径> -R <规则文件路径>步骤5: 进行入侵检测启动Snort后,它会开始监听网络流量,并根据规则文件进行入侵检测。
当检测到异常行为时,Snort会生成相应的警报,并将其记录在日志文件中。
步骤6: 分析结果完成入侵检测后,我们可以对生成的日志文件进行分析。
可以使用各种日志分析工具来提取有用的信息,并对网络安全进行评估。
4. 实验结果通过对Snort的实验,我们成功地进行了入侵检测,并生成了相应的警报日志。
通过对警报日志的分析,我们可以发现网络中存在的潜在安全威胁,并采取相应的措施进行防护。
5. 总结Snort是一种功能强大的网络入侵检测系统,可以帮助我们发现网络中的安全威胁。
通过本次实验,我们学会了如何使用Snort进行入侵检测,并对其进行了初步的实践。
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四.安装apache1.运行apache_2.2.4-win32-x86-no_ssl.zip,安装到c:\zhangxiaohong\Apache2.安装Apache,配置成功一个普通网站服务器3.出现Apache HTTP Server 2.0.55的安装向导界面,点“Next”继续4.确认同意软件安装使用许可条例,选择“I accept the terms in the licenseagreement”,点“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配置文件也清除了。
snort入侵检测实验报告
snort入侵检测实验报告Snort入侵检测实验报告引言:网络安全是当今信息社会中至关重要的一个方面。
随着网络的普及和应用,网络攻击事件也日益增多。
为了保护网络的安全,及时发现和阻止潜在的入侵行为变得尤为重要。
Snort作为一种常用的入侵检测系统,具有广泛的应用。
本文将介绍我所进行的一项Snort入侵检测实验,包括实验目的、实验环境、实验步骤和实验结果等内容。
实验目的:本次实验的目的是通过使用Snort入侵检测系统,对网络中的入侵行为进行检测和防范。
通过实践操作,深入了解Snort的工作原理、规则配置和日志分析等方面,提高网络安全防护的能力。
实验环境:本次实验使用的环境为一台基于Linux操作系统的服务器和一台Windows客户端。
服务器上安装了Snort入侵检测系统,并配置了相应的规则集。
客户端通过网络与服务器进行通信。
实验步骤:1. 安装Snort:首先,在服务器上下载并安装Snort软件包。
根据操作系统的不同,可以选择相应的安装方式。
安装完成后,进行基本的配置。
2. 配置规则集:Snort的入侵检测基于规则集,规则集定义了需要检测的入侵行为的特征。
在本次实验中,选择了常用的规则集,并进行了适当的配置。
配置包括启用或禁用某些规则、设置规则的优先级等。
3. 启动Snort:在服务器上启动Snort服务,开始进行入侵检测。
Snort将监听服务器上的网络接口,对通过的数据包进行检测和分析。
4. 发起攻击:在客户端上模拟入侵行为,发送特定的数据包到服务器。
这些数据包可能包含已知的入侵行为的特征,或者是一些常见的攻击方式。
5. 分析日志:Snort将检测到的入侵行为记录在日志文件中。
通过分析日志文件,可以了解到入侵行为的类型、来源IP地址、目标IP地址等信息。
根据这些信息,可以进一步优化规则集,提高入侵检测的准确性。
实验结果:在本次实验中,通过Snort入侵检测系统成功检测到了多种入侵行为。
其中包括常见的端口扫描、ARP欺骗、DDoS攻击等。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
入侵检测实验(一)实验人04软件工(程信息技术)04381084 姚瑞鹏04软件工(程信息技术)04381083 姚斌04软件工(程信息技术)04381086 钟俊方04软件工(程信息技术)04381090 郭睿(二)实验目的1.理解入侵检测的作用和检测原理2.理解误用检测和异常检测的区别3.掌握Snort的安装、配置和使用等实用的技术(三)实验设备与环境2台安装Windows XP的PC机,在其中一台主机上安装Windows平台下的Snort2.4.5软件,一台Windows平台下的安装Nmap软件,通过Switch相连。
实验环境的网络拓扑如下图所示。
(四)实验内容与步骤平台下Snort的安装与配置由于需要对网络底层进行操作,安装Snort需要预先安装WinpCap(WIN32平台上网络分析和捕获数据包的链接库),如图所示:1)安装Snort,双击安装程序进行安装,选择安装目录为D:\Snort。
2)进行到选择日志文件存放方式时,为简单起见,选择不需要数据库支持或者Snort 默认的MySQL和ODBC数据库支持的方式,如图所示:3)单击“开始”按钮,选择“运行”,输入cmd,在命令行方式下输入下面的命令:C:\>cd D:\Snort\binD:\ Snort\bin>snort –W如果Snort安装成功,系统将显示出如图所示的信息。
4)从返回的结果可知主机上有哪个物理网卡正在工作及该网卡的详细信息,上图显示的两张物理地址的网卡。
这里我们实用第2张网卡监听。
输入snort –v –i2命令,-v表示使用Verbose模式,把信息包打印在屏幕上,-i2表示监听第二个网卡。
5)我们在另一台主机上安装Nmap软件,如图所示:为了进一步查看Snort的运行状况,可以人为制造一些ICMP网络流量。
如图所示,在局域网段中的另一台主机()上使用Ping指令,探测运行Snort的主机。
6)回到运行Snort的主机(),发现Snort已经记录了这次探测的数据包,如图所示。
Snort在屏幕上输出了从到的ICMP数据包头。
7)打开D:\ Snort\etc\,设置Snort的内网和外网检测范围。
将文件中的var HOME_NET any语句中的Any改为自己所在的子网地址,即将Snort监测的内网设置为本机所在的局域网。
将Any改为。
将var HOME_NET any语句中的HOME_NET的值改为本地网络的标识,即。
如图所示:8)配置网段内提供网络服务的IP地址,只需要把默认的$HOME_NET改成对应主机地址即可。
var DNS_SERVERS $HOME_NET var SMTP_SERVERS $HOME_NETvar HTTP_SERVERS $HOME_NETvar SQL_SERVERS $HOME_NETvar TELNET_SERVERS $HOME_NETvar SNMP_SERVERS $HOME_NET如果不需要监视某种类型的服务,可以用#号将其注释掉。
9)修改设置监测包含的规则。
在配置文件末尾,定义了与规则相关的配置,格式如下:include $RULE_PATH/include $RULE_PATH/include $RULE_PATH/变量$RULE_PATH指明了规则文件存放的路径,可以在语句var RULE_PATH ../rules中将变量RULE_PATH改为存放规则集的目录,如D:\snort\rules。
可以到上下载最新的规则集,将其解压存放到规则默认路径下。
如图所示:10)在中,修改配置文件和的路径:Include D:\Snort\etc\Include D:\Snort\etc\其中保存的是和规则的警报级别相关的配置,保存了提供更多警告相关信息的链接。
如下图所示:平台下Snort的使用1)Snort嗅探器模式。
检测Snort安装是否成功时,用到的就是Snort嗅探器模式,输入命令:snort –v –i2,使Snort只将IP和TCP/UDP/ICMP的包头信息输出到屏幕上。
如果要看到应用层的数据,可以输入命令:snort –v –d –i2。
如图所示:2)数据包记录器模式。
上面的命令只是在屏幕上输出,如果要记录在LOG文件上,需要预先建立一个Log目录,输入下面的命令启用数据包记录器模式:snort –dve –i2 -l d:\Snort\log -h –K ascii其中-l选项指定了存放日志的文件夹;-h指定目标主机,这里检测对象是局域网段内的所有主机,如不指定-h,则默认检测本机;选项-K指定了记录的格式,默认是Tcpdump格式,此处使用ASCII码。
在命令行窗口运行了该指令后,打开保存日志的目录。
在Log目录下自动生成了许多文件夹和文件,文件夹是以数据包目的主机的IP地址命名,每个文件夹下记录的日志就是和该外部主机相关的网络流量。
打开其中任一个,使用记事本查看日志文件,会发现文件的内容和嗅探器模式下的屏幕输出类似,如图所示。
3)网络IDS模式。
Snort最重要的用途还是作为基于误用检测技术的NIDS,输入下面的命令启动IDS模式:snort –i2 -dev -l d:\snort\log -h –K ascii -c d:/Snort/etc/相比数据包记录器模式中使用的命令,只增加了一个选项-c,这个选项将告诉Snort使用中的规则集文件。
Snort会对每个包和规则集进行匹配,如符合规则就采取规则所指定的动作。
下面将通过对运行了Snort的目标主机进行有意的攻击来观察Snort检测入侵的能力。
首先向目标主机发送长度过大的ICMP包来观测Snort的反映,长度过大的ICMP包是有潜在危险的,一般会被视为入侵。
然后,使用网络端口扫描工具Nmap对目标主机进行扫描,观察Snort 的检测情况。
(1)在安装好Snort的目标主机的命令行方式下输入上面的指令,使Snort工作在IDS 模式。
如下图所示:(2)在局域网的另一台主机()上向目标主机发送数据包,输入下面的命令:ping –l 45678(3)在目标主机中打开Log文件夹,此时可以发现在Log的根目录下自动生成了一个名为Alert的文件。
使用Notepad打开该文件并观察其内容,如图所示,Snort警报中记录下了刚才发送的ICMP长数据包,其中每条记录包括警报的类型和数据包的包头。
发送的ICMP数据包之所以出现在警报中,是因为它的特征和Snort预先定义的规则相符。
(4)在Snort的安装目录下打开Rules文件夹,用Notepad打开,可以发现和该攻击对应的规则如图所示,完整的内容如下:alert icmp $EXTERNAL_NET any -> $HOME_NET any (msg:"ICMP Large ICMP Packet"; dsize:>800; reference:arachnids,246; classtype:bad-unknown; sid:499; rev:4;)(5)执行端口扫描的检测。
把文件中相应端口配置部分的内容修改为如图所示的值。
其中,Proto指定了需要检测的协议类型,包括TCP、UDP、ICMP和IP,All表示检测所有的协议;Sense_level指定检测的灵敏度,灵敏度高可以增加检测率,但有可能会同时增加误报率,Snort的默认选项是Low;Logfile指定检测结果的输出文件名,该文件将创建在Log目录下。
(6)在上运行Nmap,对目标主机()进行SYN扫描,在命令行方式下输入命令:nmap –sS 。
(7)如图所示,扫描探测到了两个开放端口139和445。
(8)在目标主机上查看记录端口扫描检测结果的文件Portscan。
可以看出,Snort准确地识别并分析记录了端口扫描攻击相关的信息,如攻击者的IP地址是,扫描的范围从21号端口到38037号端口,攻击者扫描到2个开放的端口:139和445。
Portscan文件中记录的并不是单条的网络数据包记录,而是Snort的端口扫描模块对数据包和其他特性综合分析的结果,如在单位时间内来自同一IP的警报信息或TCP数据包的统计特征等。
(9)打开Alarm文件。
如图所示,发现在Alarm文件里增加了和端口扫描相关的警告。
Alarm文件中记录的是单个数据包和规则匹配的结果。
(10)在Rules文件夹中打开检测端口扫描的规则集,可以找到和端口扫描的警报相对应的规则。
alert tcp $EXTERNAL_NET any -> $HOME_NET any (msg:"SCAN XMAS"; flow:stateless; flags:SRAFPU,12; reference:arachnids,144; classtype:attempted-recon; sid:625; rev:7;)3. 编写Snort规则1)编写第一个规则,通过捕捉关键字“search”记录打开Google网页的动作,并将符合规则的数据包输出到Alert文件中。
(1)在Snort的Rules文件夹下创建Myrule文件,在Myrule文件中输入如图所示的内容。
(2)在中添加新建的规则文件。
在的规则区域中(也可在文件末)添加下面的语句:include $RULE_PATH/(3)按照上节介绍的方法以IDS模式启动Snort。
(4)打开网络浏览器,输入并单击确认按钮。
到Log文件夹下查看Alert文件,如图所示。
可以发现规则中的字符串已经被记录了下来,也就是说Snort成功地检测到载入Google 网页的动作,所定义的规则起到了预想的作用。
2)接下来,尝试定义几个更为实用的规则,并在使用中检验它们的效果。
(1)在Myrule中添加如下3条规则,如图所示。
alert icmp $EXTERNAL_NET any -> $HOME_NET any (dsize:0; itype:8; msg:" NMAP PING SCAN";)alert tcp $EXTERNAL_NET -> $HOME_NET any (flags: SF; msg: "NMAP SYN FIN SCAN";) alert tcp $EXTERNAL_NET -> $HOME_NET any (flags: A; ack: 0; msg: "NMAP TCP PING";)(2)运行Snort。
(3)在这台主机上运行Nmap,对主机进行端口扫描。
首先使用Nmap的-sP选项进行Ping 扫描,然后使用-sS选项进行SYN扫描,最后使用-sA选项进行ACK扫描。