如何测试端口开放性测试的漏报和误报

“蜜罐”配置实验_图文_百度文库
您的浏览器Javascript被禁用,需开启后体验完整功能,
享专业文档下载特权
&赠共享文档下载特权
&10W篇文档免费专享
&每天抽奖多种福利
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
“蜜罐”配置实验
阅读已结束,下载本文需要
想免费下载本文?
定制HR最喜欢的简历
下载文档到电脑,同时保存到云知识,更方便管理
加入VIP
还剩7页未读,
定制HR最喜欢的简历
你可能喜欢51CTO旗下网站
Linux的企业端口扫描及实战
端口与漏洞发现及扫描也是对企业进行风险评估和管理的必要手段。俗话说得好:“千里之堤,毁于蚁穴。”一个小小的漏洞造成一旦被攻击者发现,最终后果有可能是整个网络的瘫痪。而怎么来发现企业网络的安全漏洞呢?需要掌握和采用一些什么关键技术?
作者:羽扇纶巾来源:TechTarget中国| 09:19
端口与漏洞发现及扫描也是对企业进行风险评估和管理的必要手段。俗话说得好:&千里之堤,毁于蚁穴。&一个小小的漏洞造成一旦被攻击者发现,最终后果有可能是整个网络的瘫痪。而怎么来发现企业网络的安全漏洞呢?需要掌握和采用一些什么关键技术?有什么比较流行和高效的工具可以用来辅助系统管理员来进行漏洞的扫描和发现呢?
企业端口扫描策略
1、端口扫描的目的
对于位于网络中的计算机系统来说,一个端口就是一个潜在的通信通道,也就是一个入侵通道。对目标计算机进行端口扫描,能得到许多有用的信息从而发现系统的安全漏洞。通过其可以使系统用户了解系统目前向外界提供了哪些服务,从而为系统用户管理网络提供了一种参考的手段。
从技术原理上来说,端口扫描向目标主机的TCP/UDP服务端口发送探测数据包,并记录目标主机的响应。通过分析响应来判断服务端口是打开还是关闭,就可以得知端口提供的服务或信息。端口扫描也可以通过捕获本地主机或服务器的流入流出IP数据包来监视本地主机的运行情况,不仅能对接收到的数据进行分析,而且能够帮助用户发现目标主机的某些内在的弱点,而不会提供进入一个系统的详细步骤。一般说来,端口扫描的目的通常是如下的一项或者多项:
1. 发现开放端口:发现目标系统上开放的TCP或UDP端口;
2. 了解主机操作系统信息:端口扫描可以通过操作系统的&指纹&来推测被扫描操作系统或者应用程序的版本等信息;
3. 了解软件或者服务版本:软件或服务版本可以通过&标志获取&或者应用程序的指纹来识别获得;
4. 发现脆弱的软件版本:识别软件和服务的缺陷,从而有助于发起针对漏洞的攻击。
端口扫描主要有经典的扫描器(全连接)以及所谓的SYN(半连接)扫描器。此外还有间接扫描和秘密扫描等。TCP扫描方式是通过与被扫描主机建立标准的TCP连接,因此这种方式最准确,很少漏报、误报,但是容易被目标主机察觉、记录。SYN方式是通过与目标主机建立半打开连接,这样就不容易被目标主机记录,但是扫描结果会出现漏报,在网络状况不好的情况下这种漏报是严重的。
2、快速安装nmap进行企业端口扫描
nmap是一个网络探测和安全扫描程序,系统管理者和个人可以使用这个软件扫描大型的网络,获取那台主机正在运行以及提供什么服务等信息。nmap支持很多扫描技术,例如:UDP、TCP connect()、TCP SYN(半开扫描)、ftp代理(bounce攻击)、反向标志、ICMP、FIN、ACK扫描、圣诞树(Xmas Tree)、SYN扫描和null扫描。nmap还提供了一些高级的特征,例如:通过TCP/IP协议栈特征探测操作系统类型,秘密扫描,动态延时和重传计算,并行扫描,通过并行ping扫描探测关闭的主机,诱饵扫描,避开端口过滤检测,直接RPC扫描(无须端口影射),碎片扫描,以及灵活的目标和端口设定。
为了提高nmap在non-root状态下的性能,软件的设计者付出了很大的努力。很不幸,一些内核界面(例如raw socket)需要在root状态下使用。所以应该尽可能在root使用nmap。
nmap运行通常会得到被扫描主机端口的列表。nmap总会给出well known端口的服务名(如果可能)、端口号、状态和协议等信息。每个端口的状态有:open、filtered、unfiltered。
open状态意味着目标主机能够在这个端口使用accept()系统调用接受连接;
filtered状态表示防火墙、包过滤和其它的网络安全软件掩盖了这个端口,禁止 nmap探测其是否打开。
unfiltered表示这个端口关闭,并且没有防火墙/包过滤软件来隔离nmap的探测企图。通常情况下,端口的状态基本都是unfiltered状态,只有在大多数被扫描的端口处于filtered状态下,才会显示处于unfiltered状态的端口。
根据使用的功能选项,nmap也可以报告远程主机的下列特征:使用的操作系统、TCP序列、运行绑定到每个端口上的应用程序的用户名、DNS名、主机地址是否是欺骗地址、以及其它一些东西。
在使用之前,我们需要下载该软件的源码包进行安装。下载网址为:http://linux.softpedia.com/get/System/Networking/Nmap-184.shtml。下载完成后,以作者下载到的版本为例:nmap-5.00.tgz,用户执行如下安装命令即可:
(1)解压缩软件包
#tar &xzvf nmap-5.00.tgz
(2)切换到安装目录
#cd nmap-5.00
(3)使用configure命令生成make文件
#./configure
(4)编译源代码
(5)安装相关模块
#make install
3、四步骤使用nmap确定企业网络开放端口
(1)扫描实施第一步:发现活动主机
使用nmap扫描整个网络寻找目标,已确定目标机是否处于连通状态。通过使用&-sP&命令,进行ping扫描。缺省情况下,nmap给每个扫描到的主机发送一个ICMP echo和一个TCP ACK,主机对任何一种的响应都会被nmap得到,扫描速度非常快,在很短的时间内可以扫描一个很大的网络。该命令使用如下所示:
[root@localhost ~]# nmap -sP 10.1.4.0/24
Nmap finished: 256 IP addresses (125 hosts up) scanned in 7.852 seconds
通过该扫描,可以发现该公司网络中有125台主机是活跃的,也就是说有机可趁,下一步就是要进行更详细的扫描,来扫描这些主机到底有些什么活动端口。
(2)扫描实施第二步:扫描端口扫描
通常情况下,当nmap的使用者确定了网络上运行的主机处于连通状态,下一步的工作就是进行端口扫描,端口扫描使用-sT参数。如下面结果如示:
[root@localhost ~]# nmap -v& -sT 10.1.4.0/24
Host 10.1.4.11 appears to be up ... good.
Interesting ports on 10.1.4.11:
Not shown: 1673 closed ports
PORT&&&& STATE&&& SERVICE
80/tcp&& open&&&& http
MAC Address: 00:1E:65:F0:78:CA (Unknown)
可以清楚地看到,端口扫描采用多种方式对网络中主机的TCP活动端口进行了全面的扫描,由于扫描的主机数太多(125台),上面仅仅给出了2台主机的TCP端口情况,也就是主机10.1.4.1和10.1.4.11,并且,主机10.1.4.1打开的端口非常多,网络服务也相对比较丰富,并且从IP地址的构成来看,该主机极有可能是网关(一般网关的IP地址设定为X.X.X.1),我们于是就锁定了这台主机进行后续的扫描。
(3)扫描实施第三步:主机操作系统识别
通常一个入侵者可能对某个操作系统的漏洞很熟悉,能很轻易地进入此操作系统的机器。一个常见的选项是TCP/IP上的指纹,带有&-O&选项决定远程操作系统的类型。这可以和一个端口扫描结合使用,但不能和ping扫描结合使用。nmap通过向主机发送不同类型的探测信号,缩小查找的操作系统的范围。如下面的扫描结果所示:
[root@localhost ~]# nmap -O 10.1.4.1
Interesting ports on 10.1.4.1:
MAC Address: 00:0B:CD:B9:EE:A8 (Compaq (HP))
Device type: general purpose
Running: Microsoft Windows 95/98/ME|NT/2K/XP
OS details: Microsoft Windows Millennium Edition (Me), Windows 2000 Professional or Advanced Server, or Windows XP
Nmap finished: 1 IP address (1 host up) scanned in 68.749 seconds
通过上述扫描结果可以看到,10.1.4.1这台机器运行的是Windows系列的操作系统,并且提供了一些比较常用的网络服务。
(4)扫描实施第四步:扫描总结归纳
通过上述3步的扫描实施,可以逐步总结得出了如下几点结论和经验:
端口扫描的步骤是先发现活动主机,然后发现活动主机的活动端口,从而确定需要重点关注或者需要供给的主机,一般这些主机是服务端口开得多的主机;再然后对重点关注的主机实行操作系统扫描,从而确定操作系统类型,以便从操作系统层面来寻找突破口;一般情况下,如果是Windows操作系统的话,那么就有比较大的攻击或者是安全维护的空间。
除了上述几个常用的扫描选项外,在扫描过程中还需要综合采用其他-T之类的选项,以保证扫描不被对方发现,否则对于具有丰富管理经验的管理员来说,很容易发现这种扫描行为,引起反追踪甚至是报复性的攻击等。当然,对于内网的网管性的维护工作来说,就没有这个风险。
另外,通常nmap在运行时,能够很好地根据网络特点进行调整。扫描时,nmap会尽量减少被目标检测到的机会,同时尽可能加快扫描速度。然而,nmap默认的适时策略有时候不太适合用户的目标。使用下面这些选项,可以有效地控制nmap的扫描时间。
设置nmap的扫描策略,主要有如下几种:
Paranoid:为了避开IDS的检测使扫描速度极慢,nmap串行所有的扫描,每隔至少5分钟发送一个包;
Sneaky:和Paranoid差不多,只是数据包的发送间隔是15秒;
Polite:不增加太大的网络负载,避免宕掉目标主机,串行每个探测,并且使每个探测有0.4 秒种的间隔;
Normal:nmap默认的选项,在不是网络过载或者主机/端口丢失的情况下尽可能快速地扫描;
Aggressive:设置5分钟的超时限制,使对每台主机的扫描时间不超过5分钟,并且使对每次探测回应的等待时间不超过1.5秒钟;
Insane:只适合快速的网络或者用户不在意丢失某些信息,每台主机的超时限制是75秒,对每次探测只等待0.3秒钟。
用户也可以使用数字来代替上述这些模式,例如:-T 0等于-T Paranoid,-T 5等于-T Insane。并且,上述这些模式不能和下面的选项组合使用。
2)--host_timeout
设置扫描一台主机的时间,以毫秒为单位。默认的情况下,没有超时限制。
3)--max_rtt_timeout
设置对每次探测的等待时间,以毫秒为单位。如果超过这个时间限制就重传或者超时。默认值是大约9000毫秒。
4)--min_rtt_timeout
当目标主机的响应很快时,nmap就缩短每次探测的超时时间。这样会提高扫描的速度,但是可能丢失某些响应时间比较长的包。使用这个选项,可以让nmap对每次探测至少等待用户指定的时间,以毫秒为单位。
5)--initial_rtt_timeout
设置初始探测的超时值。一般这个选项只在使用-P0选项扫描有防火墙保护的主机才有用。默认值是6000毫秒。
6)--max_parallelism
设置最大的并行扫描数量。--max_parallelism 1表示同时只扫描一个端口。这个选项对其它的并行扫描也有效,例如ping sweep, RPC scan。
7)--scan_delay
设置在两次探测之间,nmap必须等待的时间。这个选项主要用于降低网络的负载。
【编辑推荐】
【责任编辑: TEL:(010)】
大家都在看猜你喜欢
头条热点热点热点头条
24H热文一周话题本月最赞
讲师:21583人学习过
讲师:110740人学习过
讲师:24510人学习过
精选博文论坛热帖下载排行
本书详细介绍了AJAX在Web开发上的应用。主要内容包括:ASP.NET AJAX技术概述、实现异步局部更新页面、UpdatePanel编程功能、PageRequestMan...
订阅51CTO邮刊论文发表、论文指导
周一至周五
9:00&22:00
网络安全设备误报和漏报率的检测方法
  误报率和漏报率是衡量一个网络安全设备的重要技术指标,如何正确检测和计算这两项指标,没有统一科学的方法,文章根据多年从事信息安全网络安全设备积累的经验,总结出关于网络安全设备误报率和漏报率的计算和检测方法。 中国论文网 /1/view-6677092.htm  【关键词】广播电视事业 信息化 数字化和网络化   1 误报率   1.1 误报率的定义和计算方法   误报指在该网络安全设备报警规则事件集合(记为:C)中,用某一A事件去触发报警时,实际发生了B事件报警或未发生报警。误报率指在C规则集中,由于算法或事件定义的原因而导致该网络安全设备误报产生的概率。   误报率比较通用的计算方法是以设备规则集为出发点,对规则集的事件进行加权处理,公式表示为C(N)=C1*a1+c2*a2......+Cn*an(Ci表示某事件,ai表示权值,N表示事件数),误报事件B(M)=b1*w1+b2*w2......Bm*Wm(bj表示误报事件,bj表示权值,M表示误报事件数),因此:   误报率=*100% (1-1)   但是目前行业没有一个统一的权值标准,因此:   简化的误报率= (1-2)   (M五保事件数,N事件总数)。   1.2 误报率的测试方法   1.2.1 测试方法   因网络安全设备事件规则集合较多,各种组合之间覆盖到往往不现实,一般采用抽样的方式,即随机挑选事件库中的部分事件(一般为100条),采用攻击工具真实触发这些事件,或者以抓包工具对捕获的包进行回放,分析出报警结果,从而得出该设备的误报率。   1.2.2 测试工具   常见的测试工具包括思博伦ThreatEX、DSQLTools、x-scan、桂林老兵、IE文件服务器、DDOS、冰河等工具;同时可用tcpreplay、Sniffer、Wireshark等抓包工具,去http://malware-traffic-analysis.net网站下载.pcap包进行回放,特别可对最新恶意程序误报进行检测。   1.2.3 测试环境   以网络安全产品端口镜像为例的拓扑如图1所示。   为了保障测试期间的准确,测试期间该网络尽量独立部署。   1.2.4 测试步骤   ――按照图1将设备全部部署好;   ――在攻击机上启动测试工具,或用tcpreplay ?i 网卡 ?M 流量 ?l 次数 包名进行发送;   ――检查误报后,用公式1-2进行计算误报率。   2 漏报率   2.1 漏报率的定义和计算方法   漏报是指对于真实发生的网络攻击事件网络安全设备没有预警;漏报率是指对于真实存在的网络攻击,网络安全设备存在漏报的概率。导致漏报的因素很多,主要包括特征库未及时更新、网络流量等。漏报率的计算,是以真实发生的网络攻击事件数量为基准,计算网络安全设备漏报的事件数量所占的比率。   2.2 漏报率的测试方法   2.2.1 测试方法   能否检测最新的网络攻击事件是衡量一个网络安全产品的研发和维护支持能力的重要指标,因此可到http://malware-traffic-analysis.net网站下载最新的.pcap包进行回放测试;同时在不同的网络流量背景下,用攻击工具或抓包工具多次回放同一事件,分析网络安全设备的报警数量,从而计算漏报率。   2.2.2 测试工具   网络安全设备漏报率的测试工具包括:Unicode、发包工具SmartBits、嗅探抓包工具Sniffer等。   2.2.3 测试环境   测试环境跟误报率测试基本相同,只是在交换机连接一台网络发包工具SmartBits(进行不同流量下的测试)。   2.2.4 测试步骤   在测试期间分别使用最新包进行发送和Smartbits进行0,25%,50%,99%的网络加压,最后计算:   漏报率=   (N未检测出的包,M总发包数)。   3 结束语   网络安全设备的关键在于发现入侵行为,然后根据事先的预警规则进行及时、准确的处理,使我们的信息系统更加安全。误报率和漏报率的直接影响到网络安全设备应用的效果,科学认识误报率和漏报率的测试方法和流程,有助于我们提高检测水平,同时也可对使用开发单位进行有效的指导。   参考文献   [1]盛骤,谢式千,潘承毅.概率论和数理统计[M].北京:高等教育出版社,2000.   [2]陈庆章,赵小敏.TCP/IP网络原理与技术[M].北京:高等教育出版社,2006.   [3]季永炜.ARP攻击与实现原理解析.电脑知识与技术,2012.   作者简介   季永炜(1982-),男,浙江省诸暨县人。大学本科学历。现为浙江省电子信息产品检验所工程师。   作者单位   浙江省电子信息产品检验所 软件评测中心 浙江省杭州市 310007
转载请注明来源。原文地址:
【xzbu】郑重声明:本网站资源、信息来源于网络,完全免费共享,仅供学习和研究使用,版权和著作权归原作者所有,如有不愿意被转载的情况,请通知我们删除已转载的信息。
xzbu发布此信息目的在于传播更多信息,与本网站立场无关。xzbu不保证该信息(包括但不限于文字、数据及图表)准确性、真实性、完整性等。你的位置: >
> 如何批量检测端口连通性、端口是否开放
检测端口还在用telnet?太落伍把
有没有批量检测的方法?有的。我们用nc就可以快速检测端口的开放性。
nc检测端口的用法
nc -z -w 10 %IP %PORT
-z表示检测或者扫描端口
-w表示超时时间
-u表示使用UDP协议
[@s136.ipcpu.com ~]# nc -z -w 10 -u 8.8.8.8 53
Connection to 8.8.8.8 53 port [udp/domain] succeeded!
[@s136.ipcpu.com ~]# nc -z -w 10 8.8.8.8 53
Connection to 8.8.8.8 53 port [tcp/domain] succeeded!
[@s136.ipcpu.com ~]# echo $?
[@s136.ipcpu.com ~]# nc -z -w 10 8.8.8.7 53
[@s136.ipcpu.com ~]# echo $?
[@s136.ipcpu.com ~]#
端口成功联通返回值是0,提示succeeded;否则返回1,不提示任何数据
假如我们有这样一堆IP和端口。
#cat ports
119.181.69.96 8080
119.181.118.38 8000
119.181.20.18 8080
119.181.69.37 8080
我们可以写这样一个脚本来批量检测端口是否开放:
cat tetsport
while read line
nc -z -w 10 $line & /dev/null 2&&1
if [ $? -eq 0 ]
echo $line:ok
echo $line:fail
好了,我们的运行结果如下:
119.181.69.96 8080:ok
119.181.118.38 8000:ok
119.181.20.18 8080:fail
119.181.69.37 8080:ok
转载请注明: &
与本文相关的文章探讨误报与漏报率出现在入侵检查系统中的改进
探讨误报与漏报率出现在入侵检查系统中的改进
http://sslww.com/wznr-28.html
摘要:现有入侵监测系统存在误报率和漏报率较高的问题,本文对几种降低IDS误报率和漏报率的方法进行研究,通过将这几种方法相互结合,能有效提高入侵检测系统的运行效率并能大大简化安全管理员的工作,从而保证网络安全的运行。
  关键字:入侵检测;协议分析;模式匹配;智能关联a
  入侵检测技术是继“防火墙”、“数据加密”等传统安全保护措施后新一代的安全保障技术,它对计算机和
  网络资源上的恶意使用行为进行识别和响应,不仅检测来自外部的入侵行为,同时也监督内部用户的未授权活动。但是随着网络入侵技术的发展和变化以及网络运用的不断深入,现有入侵检测系统暴露出了诸多的问题。特别是由于网络流量增加、新安全漏洞未更新规则库和特殊隧道及后门等原因造成的漏报问题和IDS攻击以及网络数据特征匹配的不合理特性等原因造成的误报问题,导致IDS对攻击行为反应迟缓,增加安全管理人员的工作负担,严重影响了IDS发挥实际的作用。
  本文针对现有入侵监测系统误报率和漏报率较高的问题,对几种降低IDS误报率和漏报率的方法进行研究。通过将这几种方法相互结合,能有效提高入侵检测系统的运行效率并能大大简化安全管理员的工作,从而保证网络
  安全的运行。
  2入侵检测系统
  入侵是对信息系统的非授权访问及(或)未经许可在信息系统中进行操作,威胁计算机或网络的安全机制(包括机密性、完整性、可用性)的行为。入侵可能是来自外界对攻击者对系统的非法访问,也可能是系统的授权用户对未授权的内容进行非法访问,入侵检测就是对企图入侵、正在进行的入侵或已经发生的入侵进行识别的过程。入侵检测系统IDS(Intrusion Detection System)是从多种计算机系统机及网络中收集信息,再通过这些信息分析入侵特征的网络安全系统。
  现在的IDS产品使用的检测方法主要是误用检测和异常检测。误用检测是对不正常的行为进行建模,这些行为就是以前记录下来的确认了的误用或攻击。目前误用检测的方法主要是模式匹配,即将每一个已知的攻击事件定义为一个独立的特征,这样对入侵行为的检测就成为对特征的匹配搜索,如果和已知的入侵特征匹配,就认为是攻击。异常检测是对正常的行为建模,所有不符合这个模型的事件就被怀疑为攻击。现在异常检测的主要方法是统计模型,它通过设置极限阈值等方法,将检测数据与已有的正常行为比较,如果超出极限阈值,就认为是入侵行为。
  入侵检测性能的关键参数包括:(1)误报:实际无害的事件却被IDS检测为攻击事件。(2)漏报:攻击事件未被IDS检测到或被分析人员认为是无害的。
  3降低IDS误报率方法研究
  3.1智能关联
  智能关联是将企业相关系统的信息(如主机特征信息)与网络IDS检测结构相融合,从而减少误报。如系统的脆弱性信息需要包括特定的操作系统(OS)以及主机上运行的服务。当IDS使用智能关联时,它可以参考目标主机上存在的、与脆弱性相关的所有告警信息。如果目标主机不存在某个攻击可以利用的漏洞,IDS将抑制告警的产生。
  智能关联包括主动和被动关联。主动关联是通过扫描确定主机漏洞;被动关联是借助操作系统的指纹识别技术,即通过分析IP、TCP报头信息识别主机上的操作系统。
  3.1.1被动指纹识别技术的工作原理
  被动指纹识别技术的实质是匹配分析法。匹配双方一个是来自源主机数据流中的TCP、IP报头信息,另一个是特征数据库中的目标主机信息,通过将两者做匹配来识别源主机发送的数据流中是否含有恶意信息。通常比较的报头信息包括窗口(WINDOWSIZE)、数据报存活期(TTL)、DF(dontfragment)标志以及数据报长(Totallength)。
  窗口大小(wsize)指输入数据缓冲区大小,它在TCP会话的初始阶段由OS设定。数据报存活期指数据报在被丢弃前经过的跳数(hop);不同的TTL值可以代表不同的操作系统(OS),TTL=64,OS=UNIX;TTL=12,OS=Windows。DF字段通常设为默认值,而OpenBSD不对它进行设置。数据报长是IP报头和负载(Payload)长度之和。在SYN和SYNACK数据报中,不同的数据报长代表不同的操作系统,60代表Linux、44代表Solaris、48代表Windows2000。
  IDS将上述参数合理组合作为主机特征库中的特征(称为指纹)来识别不同的操作系统。如TTL=64,初步判断OS=Linux/OpenBSD;如果再给定wsize的值就可以区分是Linux还是OpenBSD。因此,(TTL,wsize)就可以作为特征库中的一个特征信息。
  3.1.2 被动指纹识别技术工作流程
  具有指纹识别技术的IDS系统通过收集目标主机信息,判断主机是否易受到针对某种漏洞的攻击,从而降低误报率。它的工作流程如图1所示。
  因此当IDS检测到攻击数据包时,首先查看主机信息表,判断目标主机是否存在该攻击可利用的漏洞;如果不存在该漏洞,IDS将抑制告警的产生,但要记录关于该漏洞的告警信息作为追究法律责任的依据。这种做法能够使安全管理员专心处理由于系统漏洞产生的告警。
  3.2告警泛滥抑制
  IDS产品使用告警泛滥抑制技术可以降低误报率。在利用漏洞的攻击势头逐渐变强之时,IDS短时间内会产生大量的告警信息;而IDS传感器却要对同一攻击重复记录,尤其是蠕虫在网络中自我繁殖的过程中,这种现象最为重要。
  所谓“告警泛滥”是指短时间内产生的关于同一攻击的告警。IDS可根据用户需求减少或抑制短时间内同一传感器针对某个流量产生的重复告警。这样。网管人员可以专注于公司网络的安全状况,不至于为泛滥的告警信息大伤脑筋。告警泛滥抑制技术是将一些规则或参数(包括警告类型、源IP、目的IP以及时间窗大小)融入到IDS传感器中,使传感器能够识别告警饱和现象并实施抵制操作。有了这种技术,传感器可以在告警前对警报进行预处理,抑制重复告警。例如,可以对传感器进行适当配置,使它忽略在30秒内产生的针对同一主机的告警信息;IDS在抑制告警的同时可以记录这些重复警告用于事后的统计分析。
  3.3告警融合
  该技术是将不同传感器产生的、具有相关性的低级别告警融合成更高级别的警告信息,这有助于解决误报和漏报问题。当与低级别警告有关的条件或规则满足时,安全管理员在IDS上定义的元告警相关性规则就会促使高级别警告产生。如扫描主机事件,如果单独考虑每次扫描,可能认为每次扫描都是独立的事件,而且对系统的影响可以忽略不计;但是,如果把在短时间内产生的一系列事件整合考虑,会有不同的结论。IDS在10min内检测到来自于同一IP的扫描事件,而且扫描强度在不断升级,安全管理人员可以认为是攻击前的渗透操作,应该作为高级别告警对待。例子告诉我们告警融合技术可以发出早期攻击警告,如果没有这种技术,需要安全管理员来判断一系列低级别告警是否是随后更高级别攻击的先兆;而通过设置元警告相关性规则,安全管理员可以把精力都集中在高级别警告的处理上。元警告相关性规则中定义参数包括时间窗、事件数量、事件类型IP地址、端口号、事件顺序。
4降低IDS漏报率方法研究
  4.1特征模式匹配方法分析
  模式匹配是入侵检测系统中常用的分析方法,许多入侵检测系统如大家熟知的snort等都采用了模式匹配方法。
  单一的模式匹配方法使得IDS检测慢、不准确、消耗系统资源,并存在以下严重问题:
  (1)计算的负载过大,持续该运算法则所需的计算量极其巨大。
  (2)模式匹配特征搜索技术使用固定的特征模式来探测攻击,只能探测明确的、唯一的攻击特征,即便是基于最轻微变换的攻击串都会被忽略。
  (3)一个基于模式匹配的IDS系统不能智能地判断看似不同字符串/命令串的真实含义和最终效果。在模式匹配系统中,每一个这样的变化都要求攻击特征数据库增加一个特征记录。这种技术攻击运算规则的内在缺陷使得所谓的庞大特征库实际上是徒劳的,最后的结果往往是付出更高的计算负载,而导致更多的丢包率,也就产生遗漏更多攻击的可能,特别是在高速网络下,导致大量丢包,漏报率明显增大。
  可见传统的模式匹配方法已不能适应新的要求。在网络通信中,网络协议定义了标准的、层次化、格式化的网络数据包。在攻击检测中,利用这种层次性对网络协议逐层分析,可以提高检测效率。因此,在数据分析时将协议分析方法和模式匹配方法结合使用,可以大幅度减少匹配算法的计算量,提高分析效率,得到更准确的检测结果。
  4.2 协议分析方法分析
  在以网络为主的入侵检测系统中,由于把通过网络获得的数据包作为侦测的资料来源,所以数据包在网络传输中必须遵循固定的协议才能在电脑之间相互沟通,因此能够按照协 议类别对规则集进行分类。协议分析的原理就是根据现有的协议模式,到固定的位置取值(而不式逐一的去比较),然后根据取得的值判断其协议连同实施下一步分析动作。其作用是非类似于邮局的邮件自动分捡设备,有效的提高了分析效率,同时还能够避免单纯模式匹配带来的误报。
  根据以上特点,能够将协议分析算法用一棵协议分类树来表示,如图2所示。
  这样,当IDS进行模式匹配时,利用协议分析过滤许多规则,能够节省大量的时间。在任何规则中关于TCP的规则最多,大约占了50%以上,因此在初步分类后,能够按照端口进行第二次分类。在两次分类完成后,能够快速比较特征库中的规则,减少大量不必要的时间消耗。如有必要,还可进行多次分类,尽量在规则树上分*,尽可能的缩减模式匹配的范围。
  每个分析机的数据结构中包含以下信息:协议名称、协议代号以及该协议对应的攻击检测函数。协议名称是该协议的唯一标志,协议代号是为了提高分析速度用的编号。为了提高检测的精确度,可以在树中加入自定义的协议结点,以此来细化分析数据,例如在HTTP协议中可以把请求URL列入该树中作为一个结点,再将URL中不同的方法作为子节点。
  分析机的功能是分析某一特定协议的数据,得出是否具有攻击的可能性存在。一般情况下,分析机尽可能的放到树结构的叶子结点上或尽可能的*近叶子结点,因为越*近树根部分的分析机,调用的次数越多。过多的分析机聚集在根部附近会严重影响系统的性能。同时叶子结点上的协议类型划分越细,分析机的效率越高。
  因此,协议分析技术有检测快、准确、资源消耗少的特点,它利用网络协议的高度规则性快速探测攻击的存在。
  5结束语
  本文对几种降低IDS误报率和漏报率的方法进行分析研究,通过将这几种方法相互结合,能有效提高入侵检测系统的运行效率并能大大简化安全管理员的工作,从而保证网络安全的运行。由于方法论的问题,目前IDS的误报和漏报是不可能彻底解决的。因此,IDS需要走强化安全管理功能的道路,需要强化对多种安全信息的收集功能,需要提高IDS的智能化分析和报告能力,并需要与多种安全产品形成配合。只有这样,IDS才能成为网络安全的重要基础设施。
没有更多推荐了,

我要回帖

更多关于 开放性测试 的文章

 

随机推荐