https://nigesecurityguy.wordpress.com/2014/04/03/apt-detection-indicators-part-3/#comments
APT檢測指標,第3部分:命令和控制通道
在確保網絡安全時,大多數組織更關心的是控制入站流量而不是出站流量。然而,出站流量是一個重要的風險,它被惡意軟件和目標攻擊者用作命令和控制的通道(C&C)和數據泄露。
了解C&C和C&C通道對有效檢測、控制、分析和修復定向的惡意軟件事件至關重要。惡意軟件允許攻擊者使用受感染的計算機通過C&C通道遠程控制計算機。這些活動對組織構成威脅,可以通過檢測和干擾網絡上的C&C通道來減輕。
這個APT檢測指標——第3部分,博客描述如下:
與出站流量有關的風險
典型的命令和控制通道
用于繞過控制的技術
檢測和防止閃避技術的方法
由于攻擊者非常有創造性地隱藏他們的活動,以測試可用的協議來建立隧道和利用各種模糊處理技術,所以沒有辦法消除所有與出站通信相關的風險。然而,對技術和風險的良好理解應該使組織能夠發現異常(也可以看到:APT異常檢測),并對改進和微調出口策略做出明智的決定。
至關重要的是提高關鍵數據和資產的運營意識。組織應該在受到良好監控的基礎設施的更深層保護中分割和包裝關鍵數據(也可以看到自適應區域防御)。此外,分層防御策略(多層和防御手段)可以防止安全漏洞,并使用相應的時間來檢測和響應攻擊,從而減少漏洞后果。
一、惡意軟件回顧
惡意軟件,也被稱為惡意軟件,已經存在了,幾乎和計算機的存在一樣長。多年來,很多人都在努力阻止惡意軟件但惡意軟件仍在不斷增長。每天,大量的惡意軟件被釋放。
僵尸網絡(Botnets)
botnet由受惡意軟件感染的計算機構成,這些計算機被稱為bot。這些bot連接到C&C基礎設施以形成bot網絡或botnet。C&C基礎設施允許攻擊者控制連接到它的bot。bot可以被指示從受感染的電腦中竊取用戶數據、(財務)憑證或信用卡信息。大量的bot可以用來執行分布式拒絕服務(DDoS)攻擊和關閉服務器。犯罪分子還將bot出售給其他罪犯。
定向目標的攻擊(Targeted Attacks)
在定向目標攻擊情況下,攻擊者想要感染一個特定的組織。這與上面描述的普通僵尸網絡完全不同,在那里罪犯對他們感染的機器不感興趣。目標攻擊的目標是竊取目標或破壞目標系統的某些數據。
這是通過感染一個或幾個帶有惡意軟件的計算機來實現的,這些惡意軟件會接觸C&C服務器。C&C服務器允許攻擊者遠程控制受感染的計算機。控制功能可用于感染其他計算機或搜索攻擊者感興趣的文檔。在發現感興趣的數據之后,攻擊者給出了對數據進行泄露的指令。泄露通常是通過與C&C通道分開的通道進行的。
探測定向目標攻擊比探測無目標攻擊要困難得多。該惡意軟件只被發送到幾個目標,使得反病毒檢測不太可能,因為反病毒供應商不太可能獲得惡意軟件的樣本。檢測C&C流量也變得更加困難,因為入侵檢測系統(IDS)的惡意軟件的簽名不太可能出現,而且C&C基礎設施不太可能出現在任何黑名單上。
簡單的惡意軟件可能被沙箱捕獲,它們是解決APT防御難題的有用的部分。但在定向目標攻擊中,惡意軟件的作者在發布之前測試他們的攻擊。因此,通過基于沙箱的方法檢測、分類和屬性的威脅變得更加困難。因此,對目標攻擊的檢測嚴重依賴于啟發式或人工檢查作為最后一道防線。
二、惡意軟件C&C網絡協議的使用
命令和控制通道在其復雜性上可能會有很大的差異。控制基礎結構可以從簡單的HTTP請求到惡意的域,到更復雜的方法,包括使用缺乏集中式服務器的彈性P2P技術,因此很難進行分析。一小群惡意軟件使用TLS加密(一些)他們的通信。值得注意的是,幾乎所有的TLS通信都被描述為HTTPS通信。此外,大多數已知的樣本無法完成TLS握手。這可能表明惡意軟件實際上并沒有實現TLS,但僅僅是在一個通常用于TLS連接的端口上進行通信,這是非常典型的。
三、C&C通道檢測技術
下面是一些C&C通道的例子和用來檢測它們的技術。我們將在未來的博客中更詳細地討論這個主題,并使用開源工具.
1 黑名單
限制對C&C基礎設施的訪問的一種簡單技術是阻止對C&C服務器所使用的IP地址和域的訪問。
2 基于簽名的技術
用于檢測有害的網絡流量的流行技術是使用基于簽名的入侵檢測系統(IDS)。基于簽名的檢測的優點是,如果惡意軟件研究人員已經創建了一個簽名,那么可以很容易地檢測到已知的機器人流量。缺點是,機器人經常混淆或加密他們的流量,這使得寫簽名變得更加困難甚至不可能。
3 基于DNS協議
惡意軟件需要知道C&C基礎設施的IP地址來進行通信。這個地址可以硬編碼,也可以從一個域名中檢索。使用域名提供了更多的靈活性,因為它允許攻擊者輕松地更改IP地址。受感染的計算機甚至不需要出站連接。只要它可以通過在Internet上執行遞歸查找的本地DNS服務器解析主機名。DNS已經卷入了最近兩次大規模的入侵,導致數百萬賬戶的損失。
網絡管理員應該尋找以下內容:
具有低到非常低的TTL(壽命)值的DNS響應,其在某種程度上是不尋常的
DNS響應,其中包含一個屬于動態DNS提供者的長列表中的一個域。
客戶端發出的DNS查詢比預期的主機名的TTL更頻繁。
DNS請求在本地名稱空間之外的主機名,這是響應的資源記錄,指向的IP地址在127.0.0.0/8,0.0.0.0/32,RFC1918的IP空間,或在組織的公共或私有IP空間內的任何地方。
對于單個唯一的主機名的連續DNS響應,它只包含一個資源記錄,但是每24小時更改了兩次以上。
在一個固定的地址維護一個DNS服務器和C&C服務器,增加了它被刪除的機會。因此,攻擊者已經開始使用快速通量域( fast-flux domain)。這些域是所有者快速更改域點的IP地址,也可選地更改DNS服務器的IP地址。
4 基于IRC協議
第一代僵尸網絡使用網絡中繼聊天作為建立中心指揮和控制機制的通道。它們連接到攻擊者選擇的IRC服務器和通道,并等待命令。盡管IRC僵尸網絡易于使用、控制和管理,但它們卻遭受了一個中心點的失敗。
5 基于P2P協議
為了克服IRC的問題,在第二代僵尸網絡中使用P2P架構,而不是使用中央C&C服務器,攻擊者將命令發送給一個或多個bot,并將其傳遞給他們的鄰居。越來越多的P2P (P2P)協議被用于C&C通道。
示例包括Zeus v3、TDL v4 (Alureon)和ZeroAccess。在過去的12個月里,使用P2P的惡意軟件樣本數量增加了大約10倍。
P2P的C&C通道通常很容易被DNS、反向DNS或被動DNS識別,因為它們通常不會試圖隱藏——除非它們是惡意的。一般情況下,惡意軟件P2P的所有成員都受到了同樣的惡意軟件的攻擊。檢測到一個,你就能快速識別出數百個被破壞的資產。
5 基于HTTP協議
利用P2P僵尸網絡的第二代實現是困難和復雜的。因此,攻擊者開始再次使用集中的C&C模型,使用HTTP協議在某些web服務器上發布命令。
絕大多數被檢查的惡意軟件都使用HTTP作為C&C協議。根據Mandiant, APT攻擊者使用的所有后門中有83%是向TCP端口80或443發送會話。然而,只有少數幾個樣本使用TLS與C&C服務器通信。所有的TLS惡意軟件允許連接到無效證書的服務器。如果服務器確實使用了無效證書,則可以使用該屬性來檢測這些用例。類似地,在無效證書的情況下的雙重連接嘗試可能觸發檢測。
大多數被檢查的惡意軟件使用基于HTTP的C&C通道。這些惡意軟件樣本生成的HTTP請求通常使用偽造的 User-Agent獲取請求。其中大多數惡意軟件偽造了安裝的ie版本的 User-Agent。因此,檢測偽造 User-Agent可能為C&C通道檢測提供一種方法。
這里有一些指標可以通過被動地查看網絡流量來檢測C&C通道會話:
證書不是由受信任的CA簽名的
域名是隨機的(即不存在)
有效期為一個月。
6 基于時間
為了能夠接收新的命令,bot必須經常向C&C服務器發送流量。這樣的流量是自動發送的,通常是定期發送的。用戶生成的流量的行為要少得多,因此可以通過測量這種規律來檢測bot。
7 異常檢測
異常檢測是基于這樣一種假設,即構建一個合法的流量內容模型是可能的。在檢測命令和控制信道時,網絡流量的異常檢測可以是非常強大的工具。不幸的是,最有效的方法是在第一個妥協之前就開始(定義什么是“好”的網絡)。然而,一些形式的異常檢測仍然增加了巨大的價值:
開發一組快速簽名,以確保端口80和443上的每個TCP會話分別包含有效的HTTP或SSL通信。使用諸如FlowGrep之類的工具,或者檢查失敗的代理日志。對于所有未通過應用程序代理傳遞的流量,這將是一個有用的操作,并且不會被阻止直接訪問internet資源。
對于internet上的HTTP服務器的持久連接,即使是在正常的辦公時間之外,也應該是例外,而不是規則,所以有效的異常可以被過濾掉,這使得這是識別破壞的有效機制。攻擊者是否與您的組織在同一時區運行?
對遠程web服務器上相同文件的持久請求,但是使用不同的參數可以表示通過HTTP進行的數據竊取。
8 基于相關性
減少bot檢測的假陽性數量的一個方法是在提高警報之前需要幾個相關事件。這使得系統可以使用本身具有高假陽性率的事件。然而,通過要求多個事件,系統能夠過濾掉大部分誤報。事件可能與單個主機或一組主機相關。
使用相關性來檢測bot的優點是,與僅使用單個事件相比,假陽性的數量較少。與此同時,這可能是一個劣勢,因為隱形bot只產生一兩個事件,可能不會被檢測到。
四 社交網絡
為了擊敗基于社交網絡的僵尸網絡,組織必須事先考慮攻擊者。無論通道、提供者或帳戶,社交網絡消息都是文本。因此,如果惡意軟件想要使用社交網絡為他們的C&C服務,他們就會在文本中對他們的命令進行編碼。就像合法的消息可能包含web鏈接一樣,C&C消息(例如,下載有效負載的鏈接)也可能包含在內。
五 基于web的攻擊/檢測特性。
通過使用HTTP連接作為通信通道,基于web的惡意軟件攻擊可以避免防火墻的檢測并增加攻擊的威脅。其中一個攻擊特征是它的小流量簽名,它也非常適合在正常的交通流中。由于大多數防火墻不過濾HTTP流量,因此不容易檢測到任何異常行為。
此外,快速通量域技術允許一個完全限定的域名(FQDN)指向多個IP地址。這些IP地址可以分散在世界各地,使一個惡意的域名難以被跟蹤和分析。攻擊者可以使快速通量域經常與各種IP地址相關聯。
然而,一個需要大量IPs的快速通量域是一個有用的特性。快速通量域技術的檢測和連接規律性的使用可以作為基于web的檢測的基礎。除了提高檢測的準確性外,還可以檢測不同類型的僵尸網絡/惡意軟件。
六 結論
通過使用惡意軟件分析的結果來磨練C&C通道檢測能力,一個組織可以開始修復一個惡意軟件事件。任何確定的C&C頻道都可以作為破壞(IOCs)的有用指標,可以用來檢測相同或類似的惡意軟件的其他實例。與C&C相關的IOCs包括網絡通信中所看到的域名、IP地址、協議,甚至是字節的模式,它們可以表示命令或編碼數據。Matt Jonkman的團隊定期發布已知命令和控制通道的更新簽名。如果建立這樣一個系統聽起來有點像工作,那就看一下BotHunter。