众所周知,IDS作为传统的安全防护技术,黑客攻击者已经可以实现规避IDS系统,那么作为IDS系统的衍生物,IPS攻击规避是否会发生呢?答案是肯定的,如今IPS攻击规避已经可以实现,本篇文章就将着重讲述通过TCP/IP协议实现IPS攻击规避。
TCP/IP协议的抗规避处理难点主要集中在TCP协议上。TCP协议是端到端的复杂流式可靠传输协议,它的序列号、窗口,以及重传等保障可靠传输的机制,会给IPS的检测带来很大困难,IPS只能被动地跟踪通信双方的数据及状态变化,通过实时的数据流重组以进行检测。
IPS必须内置TCP状态跟踪及流汇聚机制,以确保对TCP会话的持续跟踪和分析。然而在数据传输过程中,一旦出现数据包顺序错乱,报文丢失或重传等问题,很多IPS的检测机制就会失效,一些规避攻击恰恰利用这个缺陷,得以绕开IPS的检测。
归结起来,针对TCP/IP协议的IPS攻击规避技术,主要包括如下几种实现方式:
通过重传机制发送干扰数据包(TTL、校验和、窗口大小、序列号、标志位、时间戳等异常的数据包)和正常数据包,在正常数据包中嵌入攻击负载,终端的TCP/IP协议栈会丢弃干扰数据包,并将载有攻击的正常数据汇聚起来提交给应用程序。
通过利用TCP协议的序列号或IP协议的片偏移机制,对数据包进行细小划分,并打乱发送顺序(逆序,乱序)。
利用攻击目标的协议栈特性,将数据以前重叠或后重叠的方式发送,例如下图所示,Windows会倾向于先到的数据流分段,而Solaris倾向于后到的数据流分段。
在VISTA中如上所示的数据会被汇聚为“HELLO,WORLD!”,而在Solaris系统中会被汇聚为“HELP!,VIRUS!”,这就要求IPS产品不仅能够实现一个完整的TCP/IP协议栈,还要能够根据保护目标的类型进行重组策略的调整。
TCP/IP协议的规避技术,早在1998年发表的论文《Insertion, Evasion, and Denial of Service : Eluding Network Intrusion Detection》中就已经被详细的描述。然而,目前大多数的IPS产品仍未具备完善的数据重组能力,这给入侵成功创造了很大空间。
【编辑推荐】