隐蔽隧道怎么防?

来源:岁月联盟 编辑:猪蛋儿 时间:2022-08-03

一、隐蔽隧道受到攻击者的青睐

在过去的一周,我们在攻防演练的实战现场发现多起隐蔽隧道攻击事件。攻击队完成初始打点后,通常会建立外联隐蔽隧道维持权限,并进一步通过横向移动最终获得靶标。隐蔽隧道具备如下特点:

1、常见、冷门协议均可利用;

2、数据加密方式多变,可深度定制、魔改;

3、各种工具、脚本繁多,容易获得;

上述特点导致隐蔽隧道千变万化,令防御方防不胜防,因此受到攻击队的青睐。

二、隐蔽隧道有哪些?

隐蔽隧道一般指使用标准通信协议,改变其协议字段或载荷部分成为“隐蔽的传输通道”

隐蔽隧道又分加密和不加密两种,目前转向加密的隧道越来越多。常见的隐蔽隧道分为三小类:

 

1、网络层隧道,以ICMP隧道为主

ICMP协议在日常的通信应用中数据格式比较简单、变化较少,攻击者开发也有一定的技术门槛,所以目前应用不是特别广泛,有少量的APT组织和黑客工具在使用。

2、传输层隧道,以TCP/UDP隧道为主

还有少量的SCTP隧道;TCP/UDP隧道目前应用已经比较广泛,未来一定会成为APT攻击和高水平黑客的常用通信方式之一;之所以TCP/UDP隧道受到攻击者的青睐,是因为这类隧道应用变化比较复杂,可以较好地隐藏在大量新型网络应用的流量之中。

3、应用层隧道,以DNS/HTTP隧道为主

DNS隧道目前有一部分APT组织和黑客工具一直在使用,但因其检测难度相对不高,所以应用比例相对较低;HTTP隧道是某些黑客组织甚至是顶级APT组织常用的一种隐蔽传输方式,因HTTP协议的应用广泛、且变化复杂,所以在大量HTTP流量中如何精准确认是隧道,是比较难的一件事情。

三、哪些工具会建立隐蔽隧道?

大量的公开黑客工具均支持建立隐蔽隧道,攻击者也可以自行开发支持隐蔽隧道的攻击工具。常见支持隐蔽隧道的黑客工具包括:

ICMP隐蔽隧道:icmpTunnel、pingtunnel、PTunnel、icmpsh等;

TCP/UDP隐蔽隧道:kcp-tunnel、frp、MicroBackdoor、nc等;

HTTP隐蔽隧道:隧道reGeorg、reduh、tunna、phpsocks等;

DNS隐蔽隧道:dns2cat、iodine、CobaltStrike、Denis等。

四、隐蔽隧道怎么检测和防范?

隐蔽隧道种类和实现方式千变万化,其检测和防御是个体系化工程。概述起来有如下三点:

1、减少协议暴露面

原则上任何协议都可以被利用成为隐蔽隧道,为减少风险,首先应将正常业务无关的通信协议进行策略优化,减少暴露面,降低被利用的风险。

2、针对重要协议的检测

常见的隐蔽隧道利用的协议包括:ICMP、TCP、UDP、DNS、HTTP等,每一类协议下的隐蔽隧道检测方式均不相同,下面将各类隧道的检测要点进行概述:

(1)ICMP隐蔽隧道

ICMP隐蔽隧道检测主要采用多流统计分析技术,包含信息泄露率、会话频率、会话斜率、载荷帧结构分析四个部分,通过多流统计分析判断是否为ICMP隧道流量。

(2)TCP/UDP隧道

TCP/UDP隧道是利用TCP/UDP协议头部格式,在载荷部分增加加密载荷数据;检测要点首先是针对载荷数据基于信息熵、卡方值、频次等进行统计判断载荷是否加密,然后对载荷部分进行帧格式检测和特征检测以判断是否为TCP/UDP隐蔽隧道。

(3)DNS隐蔽隧道

针对特征比较明显的DNS隐蔽隧道威胁流量可以从异常Record、上下行数据等方面进行检测;针对高级的DNS隐蔽隧道威胁,除了检测单流的特征以外,还要提取多流特征,对可用于检测的元数据及多流特征进行统计,并形成通联图,在此基础上再通过规则或机器学习的方式进行检测。

(4)HTTP隐蔽隧道

HTTP隐蔽隧道包括利用HTTP头隐蔽隧道和HTTP载荷隐蔽隧道。HTTP头隐蔽隧道通常利用HTTP协议某些字段进行传输,如URL、Cookie、UA等;HTTP载荷隐蔽隧道是指利用HTTP载荷或载荷的一部分进行隧道数据传输。如直接传输加密后的数据,或将数据嵌入到某个页面中等。HTTP隐蔽隧道检测难度比较大,需要结合单流、多流层面,利用规则、行为、人工智能等多个方法综合进行判断。

3、业务排查

在实际业务场景,隐蔽隧道不一定是威胁事件,有部分即时通信软件和正常业务也会通过隐蔽隧道传输;在检测识别为隐蔽隧道后,还需要对业务进行排查,是否为正常业务。

五、观成瞰云全面支持隐蔽隧道检测

观成瞰云加密威胁智能检测系统,已全面支持各类隐蔽隧道检测:

1、DNS隐蔽隧道检测

2、ICMP隐蔽隧道检测

3、HTTP隐蔽隧道检测

4、TCP隐蔽隧道检测