snort实验
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验7 基于snort的IDS配置实验
1.实验目的
通过配置和使用Snort,了解入侵检测的基本概念和方法,掌握入侵检测工具的使用方法,能够对其进行配置。
2.实验原理
2.1 入侵检测基本概念
入侵检测系统(Intrusion Detection System简称为IDS)工作在计算机网络系统中的关键节点上,通过实时地收集和分析计算机网络或系统中的信息,来检查是否出现违反安全策略的行为和是否存在入侵的迹象,进而达到提示入侵、预防攻击的目的。入侵检测系统作为一种主动防护的网络安全技术,有效扩展了系统维护人员的安全管理能力,例如安全审计、监视、攻击识别和响应的能力。通过利用入侵检测系统,可以有效地防止或减轻来自网络的威胁,它已经成为防火墙之后的又一道安全屏障,并在各种不同的环境中发挥关键作用。
1.入侵检测系统分类
根据采集数据源的不同,IDS可分为基于网络的入侵检测系统(Network-based IDS,简称NIDS)和基于主机的入侵检测系统(Host-based IDS,简称HIDS)。
NIDS使用监听的方式,在网络通信的原始数据包中寻找符合网络入侵模版的数据包。NIDS的网络分析引擎放置在需要保护的网段内,独立于被保护的机器之外,不会影响这些机器的CPU、I/O与磁盘等资源的使用,也不会影响业务系统的性能。NIDS一般保护的是整个网段。
HIDS安装在被保护的机器上,在主机系统的审计日志或系统操作中查找信息源进行智能分析和判断,例如操作系统日志、系统进程、文件访问和注册表访问等信息。由于HIDS 安装在需要保护的主机系统上,这将影响应用系统的运行效率。HIDS对主机系统固有的日志与监视能力有很高的依赖性,它一般保护的是其所在的系统。
NIDS和HIDS各有优缺点,联合使用这两种方式可以实现更好的检测效果。
2.入侵检测系统的实现技术
入侵检测系统的实现技术可以简单的分为两大类:基于特征的检测(Signature-based)和基于异常的检测(Anomaly-based)。
基于特征的检测技术主要包括模式匹配和协议分析两种检测方法:
模式匹配就是将收集到的信息与已知的网络入侵和系统误用模式知识库进行比较,以发
现入侵行为。这种检测方法只需收集相关的数据集合和维护一个知识库就能进行判断,检测准确率和效率也相当高。但是,该技术需要不断进行升级以对付不断出现的攻击手法,并且不能检测未知攻击手段。
协议分析相对于模式匹配技术是一种更新的入侵检测技术。它首先捕捉数据包,然后对数据包进行解析,包括网络协议分析和命令解析,在解析的代码中快速检测某个攻击特征是否存在。协议分析技术大大减少了计算量,即使在高负载的高速网络上,也能逐个分析所有的数据包。
基于异常的检测技术有很多,例如采用统计模型、专家系统等技术来实现。它首先要对系统的行为进行统计,获得系统正常使用时的统计性能,如访问次数、操作失败次数和延时等。统计性能被用来与网络、系统的行为进行比较,当观察值在正常值范围之外时,IDS就会判断有入侵发生。异常检测的优点是可以检测到未知入侵和复杂的入侵,缺点是误报、漏报率高。
3.入侵检测系统的部署原则
基于主机的入侵检测系统其安装部署简单,主要安装在检测的主机系统中,而基于网络的入侵检测系统复杂很多,需要考虑部署原则,以优化性能。
NIDS总的来说包括探测器和控制台两个部分:探测器(Sensor)是专用的硬件设备,负责网络数据流的捕获、分析检测和报警等功能。控制台(Console)是管理探测器的工具,它负责接收探测器的检测日志数据,并提供数据查询和报告生成等功能,一个控制台可以管理多个探测器。
NIDS探测器的基本部署原则是保证每个网络数据包都可以被探测器侦听和捕获。共享式局域网是最简单的网络,它由共享式HUB连接各个主机。在这种网络环境下,一般来说,只需要配置一个网络探测器就可以达到监控全网的目的。对于简单的交换式网络,即交换机中存在一个能够监听所有端口的SPAN端口(即监听端口)。在这种环境下,只要将SPAN 端口设置为监听所有端口的模式,并在此端口配置一个网络探测器,就可以实现对内部网络安全的控制。而对于复杂的交换式局域网,存在多个不同的交换机,且没有SPAN端口的网络,这时要想让一个探测器监听所有的交换机上的内容是不现实的,因此必须有多个探测器进行监听。从另外一种角度分析,我们可以将一个复杂的交换式局域网分成多个简单的交换式网络或者共享式网络组成,只要保证所有子网的流量能被探测器捕获就可以实现对整个网络安全的控制。
2.2 Snort简介
Snort最初只是一个简单的网络管理工具,后来发展成一个遍布世界的企业分布式入侵检测系统。自从1998年Snort诞生以来,如今有几十万个探测器分布在世界各地,已经成为应用最广泛的NIDS。它的创始者Marty Roesch最初将Snort设计为一个辅助分析网络流
量的个人工具。那时的Snort只是将二进制tcpdump数据转换成用户可读的形式,“Snort”这个名字只是随便起的。
Snort作为一个免费的、跨平台的软件包,可以用作监视小型TCP/IP网的嗅探器、日志记录、入侵探测器。它可以运行在Linux/UNIX和Win32系统上,Snort的功能很多,如实时通讯分析和信息包记录、包装有效载荷检查、协议分析和内容查询匹配、探测缓冲溢出、秘密端口扫描、CGI攻击、SMB探测、操作系统侵入尝试、对系统日志、指定文件、Unix socket 或通过Samba的WinPopus进行实时报警。Snort有三种主要模式:数据包嗅探器、信息包记录器或成熟的侵入探测系统。遵循开发/自由软件最重要的惯例,Snort支持各种形式的插件、扩充和定制,包括数据库或是XML记录、小帧探测和统计的异常探测等。信息包有效载荷探测是Snort最有用的一个特点,这就意味着很多额外种类的入侵行为可以被探测到。
对于Snort的分析主要集中在对于其规则(rule)的分析,由于Snort采用模式匹配的方法进行检测,所以这些规则就是入侵检测的核心部分。各种网络攻击,病毒的特征代码,都被编制成相应Snort的规则,通过检测误用,实现对外来入侵的识别。在分析规则的基础上,通过在网上找最新的攻击方法的特征代码,尝试编制新的规则。
现在网络攻击手段很多,如DDOS攻击,网络扫描,木马攻击等。本实验主要以PING 攻击和网络扫描为例介绍Snort的检测能力。
3.实验环境
硬件:一台安装Windows 2000/XP系统的联外网的主机。
软件:(1). ACID(Analysis Console for Intrusion Databases)基于PHP的入侵检测数据库分析控制台
acid-0.9.6b23.tar.gz
/kb/acid
(2). Adodb(Active Data Objects Data Base)PHP库
adodb360.zip
/adodb
(3). Windows 版本的Apache Web 服务器
apache_2.0.46-win32-x86-no_src.msi
/
(4). PHP图形库
jpgraph-1.12.2.tar.gz
http://www.aditus.nu/jpgraph
(5). Windows 版本的Mysql 数据库服务器
mysql-4.0.13-win.zip