隱蔽隧道怎么防?
一、隱蔽隧道受到攻擊者的青睞
在過去的一周,我們在攻防演練的實戰現場發現多起隱蔽隧道攻擊事件。攻擊隊完成初始打點后,通常會建立外聯隱蔽隧道維持權限,并進一步通過橫向移動最終獲得靶標。隱蔽隧道具備如下特點:
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隱蔽隧道檢測
