实验16Snort入侵检测.ppt

上传人:小飞机 文档编号:5961261 上传时间:2023-09-08 格式:PPT 页数:65 大小:854.50KB
返回 下载 相关 举报
实验16Snort入侵检测.ppt_第1页
第1页 / 共65页
实验16Snort入侵检测.ppt_第2页
第2页 / 共65页
实验16Snort入侵检测.ppt_第3页
第3页 / 共65页
实验16Snort入侵检测.ppt_第4页
第4页 / 共65页
实验16Snort入侵检测.ppt_第5页
第5页 / 共65页
点击查看更多>>
资源描述

《实验16Snort入侵检测.ppt》由会员分享,可在线阅读,更多相关《实验16Snort入侵检测.ppt(65页珍藏版)》请在三一办公上搜索。

1、Snort的使用,第1章 程序设计基础,实验目的,通过实验深入理解IDS的原理和工作方式,熟悉入侵检测工具snort在Windows操作系统中的安装和配置方法,Snort的使用,Snort介绍安装配置SnortSnort的使用,1.Snort简介,snort是Martin Roesch等人开发的一种开放源码的入侵检测系统。Martin Roesch把snort定位为一个轻量级的入侵检测系统。它具有实时数据流量分析和IP数据包日志分析的能力,具有跨平台特征,能够进行协议分析和对内容的搜索/匹配。它能够检测不同的攻击行为,如缓冲区溢出、端口扫描、DoS攻击等,并进行实时报警,1.Snort简介,s

2、nort有三种工作模式:嗅探器、数据包记录器、入侵检测系统。做嗅探器时,它只读取网络中传输的数据包,然后显示在控制台上。作数据包记录器时,它可以将数据包记录到硬盘上,已备分析之用。入侵检测模式功能强大,可通过配置实现,但稍显复杂,snort可以根据用户事先定义的一些规则分析网络数据流,并根据检测结果采取一定的动作,1.Snort简介,Snort具有良好的扩展性和可移植性,可支持Linux、windows等多种操作系统平台,在本实验中,主要介绍snort在windows操作系统中的安装和使用方法,以有助于同学们对入侵检测系统的深入理解在下面的实验内容中涉及到较多mysql数据库服务器以及snor

3、t规则的配置命令,为了有助于对实验内容的深入了解,首先对mysql和snort的使用方法进行简单介绍,下面主要介绍基于windows操作系统的操作方法,2.mysql的使用,mysql默认安装在C:mysql文件夹下,其运行文件为C:mysqlbinmysql.exe,故在使用时需先在windows命令行方式下进入C:mysqlbin文件夹,即单击“开始”按钮,选择“运行”,输入cmd后,输入下面的命令:C:cd mysqlbin 出现下面的提示符:C:mysqlbin 在此目录下可连接mysql数据库,(1)连接mysql数据库,连接mysql:mysql-h主机地址-u用户名-p用户密码

4、如果只连接本地的mysql,则可以省去主机地址一项,默认用户的用户名为root,没有密码。故可以用下面的语句登录:mysql-u root p 屏幕上会出现密码输入提示符 Enter password:由于根用户没有密码,直接回车,出现下面的提示符:mysql 这表示已经进入mysql数据库的管理模式,可在此模式下对数据库、表、用户进行管理,(2)数据库和表的管理,创建新的数据库:create database 数据库名;注意一定要在命令末尾加上“;”为语句的终止符,否则mysql不会编译该条命令使用某数据库:use 数据库名在某库中建立表:create table 表名(字段设定列表)也可以

5、从事先导出的表文件导入数据库中:c:mysqlbinmysql-D 数据库名-u 用户名-p密码 路径及文件名删除数据库:drop database 数据库名删除表:drop table 表名,(3)用户的管理,创建新用户:grant select on 数据库.*to 用户名登录主机 identified by 密码为用户分配权限:grant 权限 on 数据库.*to 用户名主机名;,(4)退出mysql,退出mysql:quit或exit 则可以退出mysql数据库的管理模式,回到操作系统命令行界面。mysql作为一个功能较强的数据库管理软件,其使用规则还有很多内容,感兴趣的读者可自行查

6、阅mysql联机帮助,3.snort的启动,要启动snort,通常在windows命令行中输入下面的语句:c:snortbinsnort-c 配置文件及路径-l 日志文件的路径-d-e X其中:-X 参数用于在数据链接层记录raw packet 数据-d 参数记录应用层的数据-e 参数显示记录第二层报文头数据-c 参数用以指定snort 的配置文件的路径,3.snort的启动,如:c:snortbinsnort-c c:snortetcsnort.conf-l c:snortlog-d-e-X也可以控制snort将记录写入固定的安全记录文件中:c:snortbinsnort A fast c

7、配置文件及路径 l 日志文件及路径,1.实验环境,一台安装windows2000/XP操作系统的计算机,连接到本地局域网中 注意:在打开PHP文件的时候用的是写字板,而不是记事本,2.需要下载安装的软件,3.安装,(1)安装双击src.msi,安装在默认文件夹c:apache下。安装程序会在该文件夹下自动产生一个子文件夹apache2打开配置文件c:apacheapache2confhttpd.conf,将其中的Listen 8080,更改为 Listen 50080,(1)安装,(1)安装,注意:这是由于windows IIS中的Web服务器默认情况下在TCP 80端口监听连接请求,而808

8、0端口一般留给代理服务器使用,所以为了避免Apache web 服务器的监听端口与其发生冲突,将Apache Web服务器的监听端口修改为不常用的高端端口50080,(1)安装,单击“开始”,选择“运行”,输入“cmd”,进入命令行方式。输入下面的命令:c:cd apacheapache2bin c:apacheapache2binapache k install这是将apache设置为windows中的服务方式运行,(2)安装PHP,解压缩php-4.3.2-Win32.zip 至c:php拷贝c:php下php4ts.dll 至%systemroot%system32,php.ini-di

9、st至%systemroot%php.ini。注意:这里的第二步应该是:php.ini-dist至%systemroot%目录下,然后改名为php.ini,(2)安装PHP,添加gd图形库支持,在php.ini中添加extension=php_gd2.dll。如果php.ini有该句,将此语句前面的“;”注释符去掉,(2)安装PHP,注意:这里需要将文件c:phpextensionsphp_gd2.dll拷贝到目录c:php下,(2)安装PHP,添加Apache对PHP的支持。在c:apacheapache2confhttpd.conf中添加:LoadModule php4_module c:

10、/php/sapi/php4apache2.dllAddType application/x-httpd-php.php,(2)安装PHP,单击“开始”按钮,选择“运行”,在弹出的窗口中输入cmd进入命令行方式,输入下面命令:net start apache2 在windows中启动Apache web服务,(2)安装PHP,在c:apacheapache2htdocs 目录下新建test.php测试文件,test.php 文件内容为使用http:/127.0.0.1:50080/test.php,测试PHP是否成功安装,如成功安装,则在浏览器中出现下面的网页:,(2)安装PHP,(3)安装S

11、nort,安装snort-2_0_0.exe,snort的默认安装路径在c:snort,(4)安装配置MYSQL数据库,安装Mysql到默认文件夹c:mysql,并在命令行方式下进入c:mysqlbin,输入下面的命令:c:mysqlbinmysqld-nt install在命令行方式下输入net start mysql,启动mysql 服务,(4)安装配置MYSQL数据库,单击“开始”按钮,选择“运行”,输入“cmd”,在出现的命令行窗口中输入下面的命令:c:cd mysqlbin c:mysqlbinmysql u root p,(4)安装配置MYSQL数据库,出现Enter passwo

12、rd提示符后直接回车,这就以默认的没有密码的root用户登录Mysql数据库,(4)安装配置MYSQL数据库,在mysql提示符后输入下面的命令:mysql create database snort;(注意:在输入分号后mysql才会编译执行语句)mysqlcreate database snort_archive;(上 面的create语句建立了snort运行必须的snort数据库和snort_archive数据库),(4)安装配置MYSQL数据库,输入“quit”命令退出mysql后,在出现的提示符之后输入:mysql-D snort-u root-p mysql-D snort_arc

13、hive-u root-p c:snortcontribcreate_mysql(上面两个语句表示以root用户身份,使用c:snortcontrib目录下的create_mysql脚本文件,在Snort数据库和snort_archive数据库中建立了snort运行必须的数据表),(4)安装配置MYSQL数据库,注意:以此形式输入的命令后没有“;”屏幕上会出现密码输入提示,由于这里使用的是没有密码的root用户,直接回车即可,(4)安装配置MYSQL数据库,再次以root用户登陆mysql数据库,在提示符后输入下面的语句:mysqlgrant usage on*.*to acidlocalho

14、st identified by acidtest;mysqlgrant usage on*.*to snortlocalhost identified by snorttest;(上面两个语句表示在本地数据库中建立了acid(密码为acidtest)和snort(密码为snorttest)两个用户,以备后面使用),(4)安装配置MYSQL数据库,在mysql提示符后面输入下面的语句mysql grant select,insert,update,delete,create,alter on snort.*to“acid”“localhost”;mysql grant select,inser

15、t on snort.*to“snort”“localhost”;mysql grant select,insert,update,delete,create,alter on snort_archive.*to“acid”“localhost”;(这是为新建的用户在snort和snort_archive数据库中分配权限),(5)安装adodb,将adodb360.zip解压缩至c:phpadodb 目录下,即完成了adodb的安装,(6)安装配置数据控制台acid,解压缩acid-0.9.6b23.tar.gz 至c:apacheapache2htdocsacid 目录下修改c:apache

16、apache2htdocsacid下的acid_conf.php 文件:,(6)安装配置数据控制台acid,$DBlib_path=c:phpadodb;$DBtype=mysql;$alert_dbname=snort;$alert_host=localhost;$alert_port=3306;$alert_user=acid;$alert_password=acidtest;/*Archive DB connection parameters*/$archive_dbname=snort_archive;$archive_host=localhost;$archive_port=3306

17、;$archive_user=acid;$archive_password=acidtest;$ChartLib_path=c:phpjpgraphsrc;,注意:修改时要将文件中原来的对应内容注释掉,或者直接覆盖,(6)安装配置数据控制台acid,查看http:/127.0.0.1:50080/acid/acid_db_setup.php网页,点击create ACID AG建立数据库,(6)安装配置数据控制台acid,按照系统提示建立数据库,正常建立后出现下面的网页,(7)安装jpgrapg 库,解压缩jpgraph-1.12.2.tar.gz 至c:phpjpgraph修改c:phpjp

18、graghsrc下jpgragh.php文件,去掉下面语句的注释:DEFINE(CACHE_DIR,/tmp/jpgraph_cache/);,(8)安装winpcap,安装默认选项和默认路径安装winpcap,(9)配置并启动snort,打开c:snortetcsnort.conf文件,将文件中的下列语句:include classification.config include reference.config修改为绝对路径:include c:snortetcclassification.config include c:snortetcreference.config,(9)配置并启动

19、snort,在该文件的最后加入下面语句:output database:alert,mysql,host=localhost user=snort password=snorttest dbname=snort encoding=hex detail=full,(9)配置并启动snort,单击“开始”,选择“运行”,输入cmd,在命令行方式下输入下面的命令:c:cd snortbin;c:snortbinsnort-c c:snortetcsnort.conf-l c:snortlog-d-e-X,(9)配置并启动snort,上面的命令将启动Snort,如果snort正常运行,系统最后将显示出

20、下面的信息:,(9)配置并启动snort,打开http:/127.0.0.1:50080/acid/acid_main.php网页,进入acid分析控制台主界面。如上述配置均正确,将出现下面的页面:,(9)配置并启动snort,至此Snort安装、配置完成,安装配置Snort,安装Snort时注意关闭防火墙,1.完善配置文件,打开c:/snort/etc/snort.conf文件,查看现有配置设置snort的内、外网检测范围。将snort.conf文件中var HOME_NET any语句中的any改为自己所在的子网地址,即将snort监测的内网设置为本机所在局域网。如本地IP为192.168

21、.1.10,则将any改为192.168.1.0/24。并将var EXTERNAL_NET any语句中的any改为!192.168.1.0/24,即将snort监测的外网改为本机所在局域网以外的网络,1.完善配置文件,设置监测包含的规则。找到snort.conf文件中描述规则的部分,如下图:snort.conf文件中包含的检测规则文件:前面加表示该规则没有启用,将local.rules之前的#号去掉,其余规则保持不变,1.完善配置文件,2.使用控制台查看检测结果,打开http:/127.0.0.1:50080/acid/acid_main.php网页,启动snort并打开acid检测控制台

22、主界面,2.使用控制台查看检测结果,2.使用控制台查看检测结果,点击右侧图示中TCP后的数字“80%”,将显示所有检测到的TCP协议日志详细情况,如下图所示。TCP协议日志网页中的选项依次为:流量类型、时间戳、源地址、目标地址以及协议。由于snort主机所在的内网为202.112.108.0,可以看出,日志中只记录了外网IP对内网的连接(即目标地址均为内网),2.使用控制台查看检测结果,2.使用控制台查看检测结果,选择控制条中的“home”返回控制台主界面,在主界面的下部有流量分析及归类选项,如下图。acid检测控制台主界面:,2.使用控制台查看检测结果,2.使用控制台查看检测结果,选择“la

23、st 24 hours:alerts unique”,可以看到24小时内特殊流量的分类记录和分析,如下图所示。可以看到,表中详细记录了各类型流量的种类、在总日志中所占的比例、出现该类流量的起始和终止时间等详细分析(在控制台主界面中还有其他功能选项,请自己练习使用),2.使用控制台查看检测结果,2.使用控制台查看检测结果,选择“last 24 hours:alerts unique”,可以看到24小时内特殊流量的分类记录和分析,,3.配置snort规则,练习添加一条规则,以对符合此规则的数据包进行检测打开c:snortruleslocal.rules文件,如图所示,3.配置snort规则,3.配置snort规则,在规则中添加一条语句,实现对内网的UDP协议相关流量进行检测,并报警:udp ids/dns-version-query。语句如下:alert udp any any$HOME_NET any(msg:udp ids/dns-version-query;content:version;)保存文件后,退出重启Snort和acid检测控制台,使规则生效,结束放映,Snort 的使用演示结束,信息学院 郑小玲,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号