https://nigesecurityguy.wordpress.com/2014/04/03/apt-detection-indicators-part-3/#comments
APT檢測指標(biāo),第3部分:命令和控制通道
在確保網(wǎng)絡(luò)安全時管毙,大多數(shù)組織更關(guān)心的是控制入站流量而不是出站流量贴膘。然而,出站流量是一個重要的風(fēng)險,它被惡意軟件和目標(biāo)攻擊者用作命令和控制的通道(C&C)和數(shù)據(jù)泄露惶洲。
了解C&C和C&C通道對有效檢測抓督、控制、分析和修復(fù)定向的惡意軟件事件至關(guān)重要邑贴。惡意軟件允許攻擊者使用受感染的計算機(jī)通過C&C通道遠(yuǎn)程控制計算機(jī)席里。這些活動對組織構(gòu)成威脅,可以通過檢測和干擾網(wǎng)絡(luò)上的C&C通道來減輕拢驾。
這個APT檢測指標(biāo)——第3部分奖磁,博客描述如下:
與出站流量有關(guān)的風(fēng)險
典型的命令和控制通道
用于繞過控制的技術(shù)
檢測和防止閃避技術(shù)的方法
由于攻擊者非常有創(chuàng)造性地隱藏他們的活動,以測試可用的協(xié)議來建立隧道和利用各種模糊處理技術(shù)繁疤,所以沒有辦法消除所有與出站通信相關(guān)的風(fēng)險咖为。然而,對技術(shù)和風(fēng)險的良好理解應(yīng)該使組織能夠發(fā)現(xiàn)異常(也可以看到:APT異常檢測)稠腊,并對改進(jìn)和微調(diào)出口策略做出明智的決定躁染。
至關(guān)重要的是提高關(guān)鍵數(shù)據(jù)和資產(chǎn)的運營意識。組織應(yīng)該在受到良好監(jiān)控的基礎(chǔ)設(shè)施的更深層保護(hù)中分割和包裝關(guān)鍵數(shù)據(jù)(也可以看到自適應(yīng)區(qū)域防御)架忌。此外吞彤,分層防御策略(多層和防御手段)可以防止安全漏洞,并使用相應(yīng)的時間來檢測和響應(yīng)攻擊叹放,從而減少漏洞后果饰恕。
一、惡意軟件回顧
惡意軟件许昨,也被稱為惡意軟件懂盐,已經(jīng)存在了,幾乎和計算機(jī)的存在一樣長糕档。多年來莉恼,很多人都在努力阻止惡意軟件但惡意軟件仍在不斷增長。每天速那,大量的惡意軟件被釋放俐银。
僵尸網(wǎng)絡(luò)(Botnets)
botnet由受惡意軟件感染的計算機(jī)構(gòu)成,這些計算機(jī)被稱為bot端仰。這些bot連接到C&C基礎(chǔ)設(shè)施以形成bot網(wǎng)絡(luò)或botnet捶惜。C&C基礎(chǔ)設(shè)施允許攻擊者控制連接到它的bot。bot可以被指示從受感染的電腦中竊取用戶數(shù)據(jù)荔烧、(財務(wù))憑證或信用卡信息吱七。大量的bot可以用來執(zhí)行分布式拒絕服務(wù)(DDoS)攻擊和關(guān)閉服務(wù)器汽久。犯罪分子還將bot出售給其他罪犯。
定向目標(biāo)的攻擊(Targeted Attacks)
在定向目標(biāo)攻擊情況下踊餐,攻擊者想要感染一個特定的組織景醇。這與上面描述的普通僵尸網(wǎng)絡(luò)完全不同,在那里罪犯對他們感染的機(jī)器不感興趣吝岭。目標(biāo)攻擊的目標(biāo)是竊取目標(biāo)或破壞目標(biāo)系統(tǒng)的某些數(shù)據(jù)三痰。
這是通過感染一個或幾個帶有惡意軟件的計算機(jī)來實現(xiàn)的,這些惡意軟件會接觸C&C服務(wù)器窜管。C&C服務(wù)器允許攻擊者遠(yuǎn)程控制受感染的計算機(jī)散劫。控制功能可用于感染其他計算機(jī)或搜索攻擊者感興趣的文檔幕帆。在發(fā)現(xiàn)感興趣的數(shù)據(jù)之后获搏,攻擊者給出了對數(shù)據(jù)進(jìn)行泄露的指令。泄露通常是通過與C&C通道分開的通道進(jìn)行的蜓肆。
探測定向目標(biāo)攻擊比探測無目標(biāo)攻擊要困難得多颜凯。該惡意軟件只被發(fā)送到幾個目標(biāo),使得反病毒檢測不太可能仗扬,因為反病毒供應(yīng)商不太可能獲得惡意軟件的樣本。檢測C&C流量也變得更加困難蕾额,因為入侵檢測系統(tǒng)(IDS)的惡意軟件的簽名不太可能出現(xiàn)早芭,而且C&C基礎(chǔ)設(shè)施不太可能出現(xiàn)在任何黑名單上。
簡單的惡意軟件可能被沙箱捕獲诅蝶,它們是解決APT防御難題的有用的部分退个。但在定向目標(biāo)攻擊中,惡意軟件的作者在發(fā)布之前測試他們的攻擊调炬。因此语盈,通過基于沙箱的方法檢測、分類和屬性的威脅變得更加困難缰泡。因此刀荒,對目標(biāo)攻擊的檢測嚴(yán)重依賴于啟發(fā)式或人工檢查作為最后一道防線。
二棘钞、惡意軟件C&C網(wǎng)絡(luò)協(xié)議的使用
命令和控制通道在其復(fù)雜性上可能會有很大的差異缠借。控制基礎(chǔ)結(jié)構(gòu)可以從簡單的HTTP請求到惡意的域宜猜,到更復(fù)雜的方法泼返,包括使用缺乏集中式服務(wù)器的彈性P2P技術(shù),因此很難進(jìn)行分析姨拥。一小群惡意軟件使用TLS加密(一些)他們的通信绅喉。值得注意的是渠鸽,幾乎所有的TLS通信都被描述為HTTPS通信。此外柴罐,大多數(shù)已知的樣本無法完成TLS握手拱绑。這可能表明惡意軟件實際上并沒有實現(xiàn)TLS,但僅僅是在一個通常用于TLS連接的端口上進(jìn)行通信丽蝎,這是非常典型的猎拨。
三、C&C通道檢測技術(shù)
下面是一些C&C通道的例子和用來檢測它們的技術(shù)屠阻。我們將在未來的博客中更詳細(xì)地討論這個主題红省,并使用開源工具.
1 黑名單
限制對C&C基礎(chǔ)設(shè)施的訪問的一種簡單技術(shù)是阻止對C&C服務(wù)器所使用的IP地址和域的訪問。
2 基于簽名的技術(shù)
用于檢測有害的網(wǎng)絡(luò)流量的流行技術(shù)是使用基于簽名的入侵檢測系統(tǒng)(IDS)国觉“墒眩基于簽名的檢測的優(yōu)點是,如果惡意軟件研究人員已經(jīng)創(chuàng)建了一個簽名麻诀,那么可以很容易地檢測到已知的機(jī)器人流量痕寓。缺點是,機(jī)器人經(jīng)秤眨混淆或加密他們的流量呻率,這使得寫簽名變得更加困難甚至不可能。
3 基于DNS協(xié)議
惡意軟件需要知道C&C基礎(chǔ)設(shè)施的IP地址來進(jìn)行通信呻引。這個地址可以硬編碼礼仗,也可以從一個域名中檢索。使用域名提供了更多的靈活性逻悠,因為它允許攻擊者輕松地更改IP地址元践。受感染的計算機(jī)甚至不需要出站連接。只要它可以通過在Internet上執(zhí)行遞歸查找的本地DNS服務(wù)器解析主機(jī)名童谒。DNS已經(jīng)卷入了最近兩次大規(guī)模的入侵单旁,導(dǎo)致數(shù)百萬賬戶的損失。
網(wǎng)絡(luò)管理員應(yīng)該尋找以下內(nèi)容:
具有低到非常低的TTL(壽命)值的DNS響應(yīng)饥伊,其在某種程度上是不尋常的
DNS響應(yīng)象浑,其中包含一個屬于動態(tài)DNS提供者的長列表中的一個域。
客戶端發(fā)出的DNS查詢比預(yù)期的主機(jī)名的TTL更頻繁撵渡。
DNS請求在本地名稱空間之外的主機(jī)名融柬,這是響應(yīng)的資源記錄,指向的IP地址在127.0.0.0/8,0.0.0.0/32,RFC1918的IP空間趋距,或在組織的公共或私有IP空間內(nèi)的任何地方粒氧。
對于單個唯一的主機(jī)名的連續(xù)DNS響應(yīng),它只包含一個資源記錄节腐,但是每24小時更改了兩次以上外盯。
在一個固定的地址維護(hù)一個DNS服務(wù)器和C&C服務(wù)器摘盆,增加了它被刪除的機(jī)會。因此饱苟,攻擊者已經(jīng)開始使用快速通量域( fast-flux domain)孩擂。這些域是所有者快速更改域點的IP地址,也可選地更改DNS服務(wù)器的IP地址箱熬。
4 基于IRC協(xié)議
第一代僵尸網(wǎng)絡(luò)使用網(wǎng)絡(luò)中繼聊天作為建立中心指揮和控制機(jī)制的通道类垦。它們連接到攻擊者選擇的IRC服務(wù)器和通道,并等待命令城须。盡管IRC僵尸網(wǎng)絡(luò)易于使用蚤认、控制和管理,但它們卻遭受了一個中心點的失敗糕伐。
5 基于P2P協(xié)議
為了克服IRC的問題砰琢,在第二代僵尸網(wǎng)絡(luò)中使用P2P架構(gòu),而不是使用中央C&C服務(wù)器良瞧,攻擊者將命令發(fā)送給一個或多個bot陪汽,并將其傳遞給他們的鄰居。越來越多的P2P (P2P)協(xié)議被用于C&C通道褥蚯。
示例包括Zeus v3挚冤、TDL v4 (Alureon)和ZeroAccess。在過去的12個月里遵岩,使用P2P的惡意軟件樣本數(shù)量增加了大約10倍你辣。
P2P的C&C通道通常很容易被DNS、反向DNS或被動DNS識別尘执,因為它們通常不會試圖隱藏——除非它們是惡意的。一般情況下宴凉,惡意軟件P2P的所有成員都受到了同樣的惡意軟件的攻擊誊锭。檢測到一個,你就能快速識別出數(shù)百個被破壞的資產(chǎn)弥锄。
5 基于HTTP協(xié)議
利用P2P僵尸網(wǎng)絡(luò)的第二代實現(xiàn)是困難和復(fù)雜的丧靡。因此,攻擊者開始再次使用集中的C&C模型籽暇,使用HTTP協(xié)議在某些web服務(wù)器上發(fā)布命令温治。
絕大多數(shù)被檢查的惡意軟件都使用HTTP作為C&C協(xié)議。根據(jù)Mandiant, APT攻擊者使用的所有后門中有83%是向TCP端口80或443發(fā)送會話戒悠。然而熬荆,只有少數(shù)幾個樣本使用TLS與C&C服務(wù)器通信。所有的TLS惡意軟件允許連接到無效證書的服務(wù)器绸狐。如果服務(wù)器確實使用了無效證書卤恳,則可以使用該屬性來檢測這些用例累盗。類似地,在無效證書的情況下的雙重連接嘗試可能觸發(fā)檢測。
大多數(shù)被檢查的惡意軟件使用基于HTTP的C&C通道。這些惡意軟件樣本生成的HTTP請求通常使用偽造的 User-Agent獲取請求挑秉。其中大多數(shù)惡意軟件偽造了安裝的ie版本的 User-Agent挺份。因此,檢測偽造 User-Agent可能為C&C通道檢測提供一種方法拭抬。
這里有一些指標(biāo)可以通過被動地查看網(wǎng)絡(luò)流量來檢測C&C通道會話:
證書不是由受信任的CA簽名的
域名是隨機(jī)的(即不存在)
有效期為一個月。
6 基于時間
為了能夠接收新的命令,bot必須經(jīng)常向C&C服務(wù)器發(fā)送流量傲须。這樣的流量是自動發(fā)送的,通常是定期發(fā)送的逛艰。用戶生成的流量的行為要少得多躏碳,因此可以通過測量這種規(guī)律來檢測bot。
7 異常檢測
異常檢測是基于這樣一種假設(shè)散怖,即構(gòu)建一個合法的流量內(nèi)容模型是可能的菇绵。在檢測命令和控制信道時,網(wǎng)絡(luò)流量的異常檢測可以是非常強(qiáng)大的工具镇眷。不幸的是咬最,最有效的方法是在第一個妥協(xié)之前就開始(定義什么是“好”的網(wǎng)絡(luò))。然而欠动,一些形式的異常檢測仍然增加了巨大的價值:
開發(fā)一組快速簽名永乌,以確保端口80和443上的每個TCP會話分別包含有效的HTTP或SSL通信。使用諸如FlowGrep之類的工具具伍,或者檢查失敗的代理日志翅雏。對于所有未通過應(yīng)用程序代理傳遞的流量,這將是一個有用的操作人芽,并且不會被阻止直接訪問internet資源望几。
對于internet上的HTTP服務(wù)器的持久連接,即使是在正常的辦公時間之外萤厅,也應(yīng)該是例外橄抹,而不是規(guī)則,所以有效的異程栉叮可以被過濾掉楼誓,這使得這是識別破壞的有效機(jī)制。攻擊者是否與您的組織在同一時區(qū)運行?
對遠(yuǎn)程web服務(wù)器上相同文件的持久請求名挥,但是使用不同的參數(shù)可以表示通過HTTP進(jìn)行的數(shù)據(jù)竊取疟羹。
8 基于相關(guān)性
減少bot檢測的假陽性數(shù)量的一個方法是在提高警報之前需要幾個相關(guān)事件。這使得系統(tǒng)可以使用本身具有高假陽性率的事件。然而阁猜,通過要求多個事件丸逸,系統(tǒng)能夠過濾掉大部分誤報。事件可能與單個主機(jī)或一組主機(jī)相關(guān)剃袍。
使用相關(guān)性來檢測bot的優(yōu)點是黄刚,與僅使用單個事件相比,假陽性的數(shù)量較少民效。與此同時憔维,這可能是一個劣勢,因為隱形bot只產(chǎn)生一兩個事件畏邢,可能不會被檢測到业扒。
四 社交網(wǎng)絡(luò)
為了擊敗基于社交網(wǎng)絡(luò)的僵尸網(wǎng)絡(luò),組織必須事先考慮攻擊者舒萎。無論通道程储、提供者或帳戶,社交網(wǎng)絡(luò)消息都是文本臂寝。因此章鲤,如果惡意軟件想要使用社交網(wǎng)絡(luò)為他們的C&C服務(wù),他們就會在文本中對他們的命令進(jìn)行編碼咆贬。就像合法的消息可能包含web鏈接一樣败徊,C&C消息(例如,下載有效負(fù)載的鏈接)也可能包含在內(nèi)掏缎。
五 基于web的攻擊/檢測特性皱蹦。
通過使用HTTP連接作為通信通道,基于web的惡意軟件攻擊可以避免防火墻的檢測并增加攻擊的威脅眷蜈。其中一個攻擊特征是它的小流量簽名沪哺,它也非常適合在正常的交通流中。由于大多數(shù)防火墻不過濾HTTP流量酌儒,因此不容易檢測到任何異常行為凤粗。
此外,快速通量域技術(shù)允許一個完全限定的域名(FQDN)指向多個IP地址今豆。這些IP地址可以分散在世界各地,使一個惡意的域名難以被跟蹤和分析柔袁。攻擊者可以使快速通量域經(jīng)常與各種IP地址相關(guān)聯(lián)呆躲。
然而,一個需要大量IPs的快速通量域是一個有用的特性捶索〔宓啵快速通量域技術(shù)的檢測和連接規(guī)律性的使用可以作為基于web的檢測的基礎(chǔ)。除了提高檢測的準(zhǔn)確性外,還可以檢測不同類型的僵尸網(wǎng)絡(luò)/惡意軟件辅甥。
六 結(jié)論
通過使用惡意軟件分析的結(jié)果來磨練C&C通道檢測能力酝润,一個組織可以開始修復(fù)一個惡意軟件事件。任何確定的C&C頻道都可以作為破壞(IOCs)的有用指標(biāo)璃弄,可以用來檢測相同或類似的惡意軟件的其他實例要销。與C&C相關(guān)的IOCs包括網(wǎng)絡(luò)通信中所看到的域名、IP地址夏块、協(xié)議疏咐,甚至是字節(jié)的模式,它們可以表示命令或編碼數(shù)據(jù)脐供。Matt Jonkman的團(tuán)隊定期發(fā)布已知命令和控制通道的更新簽名浑塞。如果建立這樣一個系統(tǒng)聽起來有點像工作,那就看一下BotHunter政己。