对于碎片重叠,如果网络入侵检测系统的处理方式不同,就会造成漏报。例如,使用运行于Linux之上的snort作为网络入侵检测系统,而攻击者的攻击目标是Y2K系统。
和IP碎片一样,TCP报文段也可能非顺序到达,也存在重叠数据覆盖问题。而且,究竟是新到数据覆盖先到数据也由接收方操作系统决定。例如,在NT4.0系统中,先到的报文段会覆盖后到报文段的重叠数据;而Linux系统则相反。如果入侵检测系统和受监视系统的处理方式不同,就会造成漏报。
IPS 的检测准确率还依赖于应用环境。一些流量对于某些用户来说可能是恶意的,而对于另外的用户来说就是正常流量,这就需要IPS能够针对用户的特定需求提供灵活而容易使用的策略调优手段,以提高检测准确率。McAfee、Juniper、ISS、冰峰网络等公司同时都在IPS中提供了调优机制,使IPS通过自学习提高检测的准确性。
网络入侵检测系统检测到网络攻击和可疑事件后,会生成安全事件或称报警事件,并将事件记录在事件日志中。每秒能够处理的事件数,反映了检测分析引擎的处理能力和事件日志记录的后端处理能力。有的厂商将反映这两种处理能力的指标分开,称为事件处理引擎的性能参数和报警事件记录的性能参数。大多数网络入侵检测系统报警事件记录的性能参数小于事件处理引擎的性能参数,主要是Client/Server结构的网络入侵检测系统,因为引入了网络通信的性能瓶颈。这种情况将导致事件的丢失,或者控制台响应不过来了。
首先,要实现数据采集分析中心和控制管理中心之间的通信,二者之间是双向的通信。控制管理中心显示、整理数据采集分析中心发送过来的分析结果及其他信息,数据采集分析中心接收控制管理中心发来的配置、管理等命令。注意确保这二者之间通信的安全性,最好对通信数据流进行加密操作,以防止被窃听或篡改。同时,控制管理中心的控制台子系统和数据库子系统之间也有大量的交互操作,如警报信息查询、网络事件重建等。
即使软件编写不出现bug,程序执行时也按照正确的步骤进行,但初始设计存在缺陷仍会导致入侵者的攻击。TCP/IP协议现在已经广为应用、大行其道了,但是它却是在入侵者猖狂肆虐的今天之很早以前设计出来的。因此,存在许多不足造成安全漏洞在所难免,例如smurf攻击、ICMP Unreachable数据包断开、IP地址欺骗以及SYN湮没。然而,最大的问题在于IP协议是非常容易“轻信”的,就是说入侵者可以随意地伪造及修改IP数据包而不被发现。幸好,大救星Ipsec协议已经开发出来以克服这个不足。
对于入侵者而言,一旦成功地入侵了网络中的一台机器,就可以说是站稳脚跟了。入侵者现在要做的就是隐藏入侵痕迹并制造日后再攻的后门,这就需要对日志文件或其他系统文件进行改造,或者安装上木马程序、或者替换系统文件为后门程序。这时,SIV(系统完整性检测)系统会注意到这些文件的变化。由于内部网络中的安全措施通常都比较少,进一步地,入侵者将以这第一台机器作为跳板,攻击网络中的其他机器,寻找下一个安身之家。
另一个在攻击中包含恶意数据的HTTP协议字段,就是URL的参数字段。大部分数据库和cgi类型的攻击,都使用了该字段,而大部分的IDS都有相应的规则来检测恶意的参数键和参数值。一种躲避IDS的简单方法,就是使用与编码URL相同的技术来对参数进行编码,但大部分的IDS对参数字段也进行了解码。我们的方法是:使用POST请求将参数字段放到HTTP请求头的末尾。如果参数字段是名文形式,IDS就能很容易的发现恶意内容,因此我们使用了头选项,Content-Encoding,对参数字段进行BASE64编码。除非IDS对POST的内容也进行BASE64解码,攻击就有可能不断进行;即使IDS对POST实现了BASE64编码,这也是一个非常耗时的过程,因此如果发送大量包含巨型参数字段的POST请求,甚至会对IDS造成DOS攻击。
在其他型号的网卡和硬件上系统也可以安装和运行,甚至Vmware里也可以,但是是无法 正常抓包工作的,仅仅能做个游戏品罢了。此外,非官方推断,众多Dell服务器上配置的 Broadcom BCM 5700网卡可能也是可以工作的。正如PIX OS实际可能也支持BCM 5600 /5700一样。
IDS的核心是攻击特征,它使IDS在事件发生时触发。特征信息过短会经常触发IDS,导致误报或错报,过长则会减慢IDS的工作速度。有人将IDS所支持的特征数视为IDS好坏的标准,但是有的产商用一个特征涵盖许多攻击,而有些产商则会将这些特征单独列出,这就会给人一种印象,好像它包含了更多的特征,是更好的IDS。大家一定要清楚这些。
IDS系统不只必须监测各式各样,从大到小,以及各种系列的系统上的网络攻击事件,它还必须能够快速及时地的在第一时间内监测到入侵事件的发生。因此,IDS的数据库以及式样比对(pattern-matching)机制是复杂到令人难以置信的。
要协调各组件之间的有目的通信,各组件就必须能正确理解相互之间传递的各种数据的语义。可参考CIDF的通信机制,构建3层模型。注意各个组件之间的互操作性,保证安全、高效、顺畅。
统计分析方法首先给信息对象(如用户、连接、文件、目录和设备等)创建一个统计描述,统计正常使用时的一些测量属性(如访问次数、操作失败次数和延时等)。测量属性的平均值将被用来与网络、系统的行为进行比较,任何观察值在正常偏差之外时,就认为有入侵发生。例如,统计分析可能标识一个不正常行为,因为它发现一个在晚八点至早六点不登录的账户却在凌晨两点试图登录,或者针对某一特定站点的数据流量异常增大等。其优点是可检测到未知的入侵和更为复杂的入侵,缺点是误报、漏报率高,且不适应用户正常行为的突然改变。
深层防御,对关键业务服务器予以针对性保护,有效识别应用层的攻击行为,对发现的攻击行为予以阻断并实时告警。目前该传媒机构主要的业务服务器为WEB服务器,因此需要具有较强WEB业务威胁防御能力的产品。最终选择天清入侵防御系统进行对关键业务服务器的保护。
和其他系统一样,IDS本身也往往存在安全漏洞。若对IDS攻击成功,则直接导致其报警失灵,入侵者在其后所作的行为将无法被记录。因此IDS首先必须保证自己的安全性。IDS本身的抗攻击能力也就是IDS的可靠性,用于衡量IDS对那些经过特别设计直接以IDS为攻击目标的攻击的抵抗能力。它主要体现在两个方面:一是程序本身在各种网络环境下能够正常工作;二是程序各个模块之间的通信能够不被破坏,不可仿冒。此外要特别考虑抵御拒绝服务攻击的能力。如果IDS本身不能正常运行,也就失去了它的保护意义。而如果系统各模块间的通信遭到破坏,那系统的报警之类的检测结果也就值得怀疑,应该有一个良好的通信机制保证模块间通信的安全并能在出问题时能够迅速恢复。
入侵检测作为一门正在蓬勃发展的技术,出现的时间并不是很长;相应地对IDS进行评测出现得更晚。它肯定有很多不完善和有待改进的地方,这需要进一步的研究。其中几个比较关键的问题是:网络流量仿真、用户行为仿真、攻击特征库的构建、评估环境的实现以及评测结果的分析。
如果有了应用IDS,传感器会收集SQL命令并对其进行解密,然后查看这些命令到底要访问数据库中的哪些表和列。利用这种方法,传感器就可以判断出到底是正常情况还是一次攻击行为。如果发现的行为是IDS策略不允许的,传感器会判断攻击的威胁水平并采取适当的措施,通常是向管理员的控制台和/或通过电子邮件发出警告。
这个法则是对于不同的行业,比例关系不一定完全相同,但这个统计规律说明了海量安全事件中,偶然性与必然性的关系。而要防止重大事故的发生必须减少和消除无伤害事故,重视事故的苗头和未遂事故,否则终会酿成大祸。其中有一个实例:某机械师企图用手把皮带挂到正在旋的皮带轮上,因未使用拨皮带的杆,且站在摇晃的梯板上,又穿了一件宽大长袖的工作服,结果被皮带轮绞入碾死。事故调查结果表明,他这种上皮带的方法使用已有数年之久。查阅四年病志(急救上药记录),发现他有33次手臂擦伤后治疗处理记录,他手下工人均佩服他手段高明,结果还是导致死亡。这一事例说明,重恶性事故有一定的偶然性,但不安全因素在事故发生之前已暴露过许多次,如果在事故发生之前,抓住时机,及时消除不安全因素,许多重大伤亡事故是完全可以避免的。
“外紧内松”是一般局域网络的特点。或许一道严密防守的防火墙内部的网络是一片混乱也有可能。通过社会工程学发送带木马的邮件、带木马的URL等方式,然后由中木马的机器主动对攻击者连接,将铁壁一样的防火墙瞬间破坏掉。另外,防火墙内部各主机间的攻击行为,防火墙也只有如旁观者一样冷视而爱莫能助。
入侵检测系统在捕捉到某一攻击事件后,按策略进行检查,如果策略中对该攻击事件设置了防火墙阻断,那么入侵检测系统就会发给防火墙一个相应的动态阻断策略,防火墙根据该动态策略中的设置进行相应的阻断,阻断的时间、阻断时间间隔、源端口、目的端口、源IP和目的IP等信息,完全依照入侵检测系统发出的动态策略来执行。一般来说,很多情况下,不少用户的防火墙与IDS并不是同一家的产品,因此在联动的协议上面大都遵从 opsec 或者 topsec协议进行通信,不过也有某些厂家自己开发相应的通信规范的。目前总得来说,联动有一定效果,但是稳定性不理想,特别是攻击者利用伪造的包信息,让IDS错误判断,进而错误指挥防火墙将合法的地址无辜屏蔽掉。