实验报告-14

更新时间:2023-12-25 09:29:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

实验报告

实验内容:

(1) 在Windows平台建立基于Snort的IDS。

(2) 在本地计算机中添加UDP检测规则,在另外一台计算机启动和本地计算机的UDP连接请求,查看UDP协议流量的日志记录,分析变化结果,提交实验报告。

(3) 自己编写检测规则文件mytelnet.rules,用于记录外网对内网的Telnet连接企图,并发出下面的警告:External net attempt to access internal telnet sever,将此规则文件添加到设置文件中,并通过实验观察规则是否生效,整理步骤和实验结果提交报告。

实验步骤:

(1)在Windows平台建立基于Snort的IDS。

要在windows下建立snort的IDS需要的软件有:Snort_2_8_4_1_Installer.exe;WinPcap_3_0.exe。

安装软件:

首先安装WinPcap_3_0.exe,安装过程略。根据界面提示进行操作即可 然后安装Snort_2_8_4_1_Installer.exe。安装过程略。根据界面提示进行操作即可。

Snort安装成功的标志是见下图:

其中红线所划得那个字段是我做实验使用的网卡。

配置snort。

安装完成后首先设置环境变量PCAP_FRAMES。在“我的电脑”的“属性”菜单的“高级”选项卡中的“环境变量”选项中的“adminstrator用户变量”(此账户为当前登入账户即可,不一定要“adminstrator”,如果要设置此环境变量对任何账户有效,可以在“系统变量”中新建此环境变量)中新建环境变量“PCAP_FRAMES”,其值设置为“MAX”。具体见图:

要使此环境变量生效需要重启电脑或者注销账户重新登入。 然后利用cmd命令cd C:\\snort\\bin进入snort可执行目录bin下。

利用命令snort -v和snort snort -dev -l ../log -c ../etc/snort.conf进行调试,利用上述两个命令提供的报错信息逐步修改snort.conf文件和rules文件夹下的相关规则文件。

先用snort -v命令。 Snort -v命令使snort工作在嗅探器模式。Snort能从网络上读出数据包然后显示在你的控制台上。

我第一次使用此命令的效果如图:

从图中我们可以发现,虽然看似运行正常,但是没有抓到一个数据包。经过查资料发现,snort默认选择的网卡是编号为1的接口,它并不判断此卡是否为当前使用的。我红线划得正是它默认选择的接口,是我电脑上的1394网络适配器。我们应该用-i选项来选择我们所要使用的网卡。结合snort -W命令中得到的信息。我把snort -v 命令修改为 snort -i 2 - v这样就运行正常了。效果图如下:

然后使用snort snort -dev -l ../log -c ../etc/snort.conf命令调试,更好的应该使用snort snort -i 2 -dev -l ../log -c ../etc/snort.conf。

snort snort -dev -l ../log -c ../etc/snort.conf snort.conf是snort的配置文件。 此命令含义是:

snort会对每个包和规则集进行匹配,发现这样的包与规则匹配就采取相应的行动。Snort会把行动的相关信息与包信息输出到../log目录。 刚开始使用此命令使得到如下一些错误。 错误1:

此错误说明snort无法找到动态引擎的动态库libsf_engine.so。而*.so文件时linux下的动态库文件,这说明此软件是从linux下移植到windows下的,我们只要找到相应的*.dll文件的路径在snort.conf文件中替换掉即可。替换结果如图: 替换前:

替换后:

注:这里我更改的路径是在E盘。由于我重装了几次snort,我最终做实验的时候snort是安装在c盘根目录下的。而在snort.conf文件中的路径也是至C盘而不是E盘。

一系列在规则文件中的类似错误,修改方法为在相应的文件找到相应的行注释掉即可。 错误报告:

修改的部分举例(以前两错误为例):

经过上述两步调试后,snort配置基本完成。 (2) 在本地计算机中添加UDP检测规则。

我用的udp规则为:

alert udp any any <> $HOME_NET ids/dns-version-query\

any

(msg:\

它的含义是:对任意ip任意端口到任意ip(HOME_NET值为any)任意端口的数据段包含0x0100字段的udp包产生警告,输出警告信息为“udp ids/dns-version-query” 。

我把此内容保存成udp.rules文件放入..\\rules文件夹。并在snort.conf中包含规则文件处加入如下语句:

Include $RULE_PATH\%udp.rules 效果如图(红线划出的为新加语句):

注:snort.conf文件中的路径分隔符为\,这个一般在linux的表示方法。为了系统正常运行,我把所有\改为\。 添加完毕后测试效果:

利用命令

Snort -i 2 -dev -l ..\\log -c ..\\etc\\snort.conf 测试。

运行后不仅在cmd命令行下显示了所有包的内容,而且对满足规则要求的数据包的警告信息写入了alert.ids文件。

文件局部内容效果图如下:

(3)自己编写检测规则文件mytelnet.rules,用于记录外网对内网的Telnet连接企图,并发出下面的警告:External net attempt to access internal telnet sever。

Telnet服务的端口为23,利用这个信息,我编写的规则如下:

alert tcp any any -> 59.64.130.76/23 23 (msg: \internal telnet sever\

上述规则仅为实验而写,实际中我们一般写成如下形式:

alert tcp $EXTERNAL_NET any -> $HOME_NET 23 (msg: \internal telnet sever\

这样可以通过定义变量EXTERNAL_NET和变量HOME_NET来设置内外网段,达到真正记录外网对内网的Telnet连接企图的效果。

我把上述语句存成mytelnet.rules文件放入..\\rules文件夹,并在snort.conf文件中添加语句

include $RULE_PATH\\mytelnet.rules

然后打开本机telnet服务。

利用命令snort -i 2 -l ..\\log -c ..\\etc\\snort.conf运行,在59.64.130.242这台机子上对本机进行Telnet连接。最后有相应的警告信息写入alert.ids。 警告信息效果如图:

实验心得:

通过这个实验,我对入侵检测系统的相关内容有了更深入的了解,对入侵检测系统在个人电脑上的运行情况也有了简单的接触。通过在windows下安装snort 和修改其配置文件(snort.conf),并利用它完成实验,对snort的配置和使用有了较深刻的理解和体会。另外,我还通过学习snort规则编写的语法,能利用此语法写出简单但正确的规则。在实验中效果良好。其实我觉得snort规则编写的语法比较简单,但是要写出实用的规则,还是要对网络协议有深入的理解。

人与人之间的距离虽然摸不着,看不见,但的的确确是一杆实实在在的秤。真与假,善与恶,美与丑,尽在秤杆上可以看出;人心的大小,胸怀的宽窄,拨一拨秤砣全然知晓。 人与人之间的距离,不可太近。 与人太近了,常常看人不清。一个人既有优点,也有缺点,所谓人无完人,金无赤足是也。初识时,走得太近就会模糊了不足,宠之;时间久了,原本的美丽之处也成了瑕疵,嫌之。 与人太近了,便随手可得,有时得物,据为己有,太过贪财;有时得人,为己所用,也许贪色。贪财也好,贪色亦罢,都是一种贪心。 与人太近了,最可悲的就是会把自己丢在别人身上,找不到自己的影子,忘了回家的路。 这世上,根本没有零距离的人际关系,因为人总是有一份自私的,人与人之间太近的距离,易滋生事端,恩怨相随。所以,人与人相处的太近了,便渐渐相远。 人与人之间的距离也不可太远。 太远了,就像放飞的风筝,过高断线。

太远了,就像南徙的大雁,失群哀鸣。 太远了,就像失联的旅人,形单影只。 人与人之间的距离,有时,先远后近;有时,先近后远。这每次的变化之中,总是有一个难以忘记的故事或者一段难以割舍的情。 有时候,人与人之间的距离,忽然间近了,其实还是远;忽然间远了,肯定是伤了谁。 人与人之间的距离,如果是一份信笺,那是思念;如果是一个微笑,那是宽容;如果是一句问候,那是友谊;如果是一次付出,那是责任。这样的距离,即便是远,但也很近。 最怕的,人与人之间的距离就是一句失真的谗言,一个不屑的眼神,一叠诱人的纸币,或者是一条无法逾越的深谷。这样的距离,即便是近,但也很远。 人与人之间最美的距离,就是不远不近,远中有近,近中有远,远而不离开,近而不相丢。 太远的距离,只需要一份宽容,就不会走得太远而行同陌人;太近的距离,只需要一份自尊,就不会走得太近而丢了自己。不远不近的距离,多像一朵艳丽的花,一首悦耳的歌,一首优美的诗。 人生路上,每个人的相遇、相识,都是一份缘,我们都是相互之间不可或缺的伴。 人与人之间的距离虽然摸不着,看不见,但的的确确是一杆实实在在的秤。真与假,善与恶,美与丑,尽在秤杆上可以看出;人心的大小,胸怀的宽窄,拨一拨秤砣全然知晓。 人与人之间的距离,不可太近。 与人太近了,常常看人不清。一个人既有优点,也有缺点,所谓人无完人,金无赤足是也。初识时,走得太近就会模糊了不足,宠之;时间久了,原本的美丽之处也成了瑕疵,嫌之。 与人太近了,便随手可得,有时得物,据为己有,太过贪财;有时得人,为己所用,也许贪色。贪财也好,贪色亦罢,都是一种贪心。 与人太近了,最可悲的就是会把自己丢在别人身上,找不到自己的影子,忘了回家的路。 这世上,根本没有零距离的人际关系,因为人总是有一份自私的,人与人之间太近的距离,易滋生事端,恩怨相随。所以,人与人相处的太近了,便渐渐相远。 人与人之间的距离也不可太远。 太远了,就像放飞的风筝,过高断线。 太远了,就像南徙的大雁,失群哀鸣。 太远了,就像失联的旅人,形单影只。 人与人之间的距离,有时,先远后近;有时,先近后远。这每次的变化之中,总是有一个难以忘记的故事或者一段难以割舍的情。 有时候,人与人之间的距离,忽然间近了,其实还是远;忽然间远了,肯定是伤了谁。

人与人之间的距离,如果是一份信笺,那是思念;如果是一个微笑,那是宽容;如果是一句问候,那是友谊;如果是一次付出,那是责任。这样的距离,即便是远,但也很近。 最怕的,人与人之间的距离就是一句失真的谗言,一个不屑的眼神,一叠诱人的纸币,或者是一条无法逾越的深谷。这样的距离,即便是近,但也很远。 人与人之间最美的距离,就是不远不近,远中有近,近中有远,远而不离开,近而不相丢。 太远的距离,只需要一份宽容,就不会走得太远而行同陌人;太近的距离,只需要一份自尊,就不会走得太近而丢了自己。不远不近的距离,多像一朵艳丽的花,一首悦耳的歌,一首优美的诗。 人生路上,每个人的相遇、相识,都是一份缘,我们都是相互之间不可或缺的伴。

本文来源:https://www.bwwdw.com/article/cwyx.html

Top