重复的目录分隔符,'/' 变成 '//'。
当前目录“/cgi-bin/phf”变为“/cgi-bin/./phf”。
父目录“/cgi-bin/phf”变成“/cgi-bin/xxx/../phf”。
URL 编码,'/cgi-bin/' 变成 '%2fcgi-bin/'。
使用 TAB 或其他分隔符代替空格。
NULL 方法‘GET /cgi-bin/phf’。
使用 GET 以外的方法,例如 POST。
改变参数的顺序,并添加无用的参数。
对于IIS,还有以下方法:
DOS/Win下的目录分隔符'/winnt/system32/cmd.exe'变为'/winnt\system32\cmd.exe'。
大小写转换,例如cmd.exe变成CMD.EXE。
IS双重解码,如cmd.exe变成%2563md.exe,%25解码为'%',%63解码为'c'。
UNICODE编码,如cmd.exe变成%c0%63md.exe,由于UNICODE编码比较复杂,只有极少数NIDS可以解码。
Telnet 攻击变体
使用退格键。
使用 Tab 键完成命令。
使用Shell执行攻击代码。
使用宏。
添加无用的参数。
事实上,NIDS很难检测到通过Telnet连接服务器后进行的本地攻击。
5.关于TCP/IP协议的限制
由于TCP/IP在设计时没有充分考虑安全性,导致IPV4的安全性现在令人担忧。除了上述由网络结构引起的问题外,还存在以下局限性。
(1)IP分片
数据包被碎片化,有些NIDS无法重组IP碎片或者超出了它们的处理能力,所以可以绕过NIDS。
NIDS有三个参数:超时时间(比如15秒)、可重组的IP数据报的最大长度(比如64K)、可同时重组的IP数据报片段的数量(比如8192)。
如果NIDS接收的数据包超出了上述限制,NIDS就不得不丢失数据包,从而造成DDoS攻击。
(2)IP重叠分片
在重组IP报文分片时,如果遇到重叠分片,各个操作系统的处理方式有所不同,如果NIDS的处理方式与受保护主机的处理方式不同,那么NIDS重组后的数据包就会与受保护主机的数据包不一致,从而绕过NIDS的检测。
(3)TCP分段
如果NIDS不能进行TCP流重组,就有可能通过TCP分段来绕过NIDS。一些异常的TCP分段会使一些NIDS感到困惑。
(4)TCP不同步
在TCP中发送错误的序列号,发送重复的序列号,反转发送顺序等都可能绕过NIDS。
(5)出局
攻击者发送OOB数据,如果受保护主机的应用程序可以处理OOB,那么攻击者就有可能绕过NIDS,因为NIDS无法准确预测受保护主机收到OOB时缓冲区中的正常数据量。
(6)IP/TCP
如果目标主机可以处理事务性 TCP(目前很少有系统支持),那么攻击者可以发送事务性 TCP,NIDS 可能不会以与受保护主机上的应用程序相同的方式处理该 TCP,从而可以绕过 NIDS。
6.关于IDS资源和处理能力的限制
(1)流量冲击大
当攻击者向受保护网络发送大量数据,超出NIDS有限的处理能力时,就会发生分组现象,有可能导致入侵行为的漏报。
(2)IP碎片攻击
攻击者向受保护网络发送大量IP分片(如TARGA3攻击),超出了NIDS同时重组IP分片的能力,导致对使用IP分片技术的攻击漏报。
(3)TCP 连接泛洪
攻击者创建或者模拟大量TCP连接(通过上面介绍的IP重叠分片方法),超出NIDS能够同时监控的TCP连接数上限,导致多余的TCP连接无法被监控。
(4)警报泛滥
攻击者可以参考网上公布的检测规则,在攻击的同时故意发送大量会导致NIDS报警的数据(比如棍棒攻击)。这可能会超出NIDS发送警报的速度,造成漏报,并导致网络管理员收到大量警报,难以辨别真正的攻击。
(5)日志泛滥
攻击者发送大量会导致NIDS报警的数据,最终导致NIDS日志空间耗尽,从而删除之前的日志记录。
7. 针对IDS系统本身的漏洞和弱点
和其他系统一样,每个IDS产品都或多或少存在一些漏洞,一旦这些漏洞被攻击者发现并成功利用,轻则导致IDS系统停止运行,重则导致整个系统被控制。
如上所述,入侵监控系统虽然大大增强了系统的安全性,但也存在许多不足之处。网络安全作为防火墙的合理补充,需要纵深、多样的防护。即便拥有目前最强大的入侵检测系统,如果不及时修补网络中的安全漏洞,安全就无从谈起。未来的入侵检测系统将与其他网络管理软件相结合,形成入侵检测、网络管理、网络监控三位一体的工具。功能强大的入侵检测软件的出现,大大方便了网络的管理,其实时报警为网络安全又增添了一层保障。虽然技术上还存在许多未解决的问题,但正如攻击技术不断发展一样,入侵检测也会不断更新和成熟。
8.正确使用IDS并充分发挥其功能
实施入侵检测系统然后忽略它并不能充分发挥 IDS 的作用。
一般情况下,在构建了IDS之后,当有非法入侵发生时,系统会提示“有人正在扫描主机”,此时非法入侵者处于收集信息的阶段,如果网络管理员采取相应的措施,入侵就会被消灭在萌芽状态。但如果置之不理,入侵者在收集到足够的信息后就会发起全面攻击。如此看来,企业在安全防范措施尚不完善的情况下遭到攻击的原因有四点。
(1)网络管理员的能力有限,无法更加重视安全问题;另外网络管理员本身对安全技术的了解不够,对IDS提供的告警信息缺乏深入的研究。
(2)缺乏对IDS的基础管理。虽然IDS能够智能地工作,在发现攻击后做出相应的反应,但这并不意味着用户可以高枕无忧。用户需要经常查看IDS的告警信息,以便及时发现网络中潜在的攻击,并采取预防措施。
(3)IDS漏报、误报,导致无法查找非法入侵者所在位置。
IDS的漏报和误报很多是由于在网络发生变化时没有及时更改配置规则造成的。IDS首次安装配置后,没有做任何调整,实际网络环境发生变化后,网络管理员没有针对具体环境对安全产品配置做相应的调整,使得这些产品不能保证新设备的安全。其实,当网络结构发生变化时,用户应该及时在知识库中添加或删除规则,重新定义新的规则。另外,对于初始用户来说,新安装的IDS会产生很多报警,有些是正常的网络应用,用户可以忽略,有些是初始配置,没有添加,但在业务中必须用到,用户一定要注意及时调整这些配置。
(4)对IDS的期望过高
有些用户对IDS存在错误的认识,把IDS当成了防范攻击的法宝,这势必会适得其反。在网络安全中,有很多不同层次的安全技术和产品,IDS只是其中一种,它只起到智能入侵检测的作用,能够对入侵行为做出反应,仅此而已。如果用户想通过IDS完全防范黑客入侵,是不切实际的,也不是IDS的功能所在。需要指出的是,IDS不管多么智能,也只不过是一种安全管理工具而已。要保证网络安全,人才是真正的主角,因为工具并不能解决所有的问题。
9.IDS的安全应急响应机制
(1)网络安全必须具有比较完善的预警、检测和必要的防御措施
在应对攻击时,防火墙有一定的局限性,入侵检测可以检测到基于应用的攻击行为的发生,并确定攻击方式,这是一个从未知到已知的过程。在进行应急响应时,入侵检测系统是必须提前部署的必要环节,否则分析攻击的难度就会增加。
(2)入侵检测系统行为关联检测机制及定制化检测功能
从攻击特征分析的角度看,针对Web服务的分布式拒绝服务攻击,其单次服务请求和正常服务请求的机制是一样的,如果简单地阻断这样的特征事件,必然会导致正常的服务请求中断。区分拒绝服务与正常访问的关键是判断行为的关联性。拒绝服务的特点是短时间内发生大量的连接行为,因此检测机制以异常行为的统计关联性为基础,然后采用简洁易用的自定义描述语言对该行为形成事件定义并发送给检测引擎。经过专门定义之后,很容易看出哪些事件是正常访问引起的,哪些事件是攻击引起的。
(3)入侵检测系统与防火墙形成动态防御
从应急响应需求来看,入侵检测的最终目的是预防攻击行为,针对已经发生的攻击后果做出相应的恢复,形成整体的安全策略调整。入侵检测系统本身具有阻断功能,但如果单独使用阻断功能,入侵检测的效率必然会受到影响。IDS发现攻击事件后,向防火墙发送动态策略,防火墙收到策略后,生成相应的访问控制规则,可以有效阻断指定的攻击事件,确保攻击不再继续。这种联动的好处是,不仅发挥了防火墙的优势,而且由于这些规则是根据攻击的发生而动态触发的,不会降低防火墙的效率。一个好的入侵检测系统对保障用户的网络安全有着积极而重要的作用,通过入侵检测,不仅可以知道攻击事件的发生,攻击的方法和技术,还可以指挥其他安全产品形成动态的防御体系,为网络的安全建立了一道有效的屏障。