看Level 3與思科如何聯(lián)手除掉僵尸網(wǎng)絡(luò)--SSH精神病
維護(hù)網(wǎng)絡(luò)安全不僅要識別威脅,還要找到有效的方法把威脅從網(wǎng)絡(luò)上消滅掉。近日,全球最大的電信運(yùn)營商Level3與思科塔羅斯(Talos)安全團(tuán)隊(duì),聯(lián)合調(diào)查并打掉了一個掃描全球互聯(lián)網(wǎng)并發(fā)動DDoS攻擊的僵尸網(wǎng)絡(luò)--SSH精神病(Psychos)。
發(fā)現(xiàn)
2014年9月底, 安全博客“惡意軟件必死”報道了一種新型的Linux惡意軟件和工具包,用來發(fā)動DDoS攻擊。四個月后,火眼發(fā)現(xiàn)了一起異乎尋常的SSH暴力嘗試登陸攻擊,使用就是這個工具。不久之后,思科塔羅斯安全團(tuán)隊(duì)的蜜罐捕捉到來自同一攻擊者的海量認(rèn)證嘗試 (103.41.125.0/23 and 43.255.190.0/23)。
今年3月底,Level 3開始與塔羅斯團(tuán)隊(duì)聯(lián)手對付這個超級僵尸網(wǎng)絡(luò)。Level 3通過與整個互聯(lián)網(wǎng)的SSH流量對比,確定了攻擊者擁有的流量規(guī)模。數(shù)據(jù)顯示,僅此一個攻擊者就占到整個互聯(lián)網(wǎng)SSH流量的35%還多。
發(fā)現(xiàn)威脅后,安全機(jī)構(gòu)的職責(zé)就是盡可能的把它從網(wǎng)絡(luò)上剔除。但在實(shí)施這樣的行為之前,還需要考慮到后果。因?yàn)樵谧钃暨@些攻擊流量的過程中,將影響到許多被利用的無害的主機(jī)。為了減少傷及無辜,安全人員對攻擊者的工具和基礎(chǔ)設(shè)施要有更多的了解。
分析
塔羅斯團(tuán)隊(duì)的蜜罐數(shù)據(jù)顯示,在SSH暴力登錄成功之后,會從兩個IP23.234.60.140和23.234.19.202的網(wǎng)頁服務(wù)器上下載文件。前者在/install目錄下提供命名為從8000.rar到8008.rar的文件下載,后者在/i目錄下提供命名為從a06到a11的文件下載。
第一臺主機(jī)的文件是shell腳本,可以從中看出更多攻擊手法的細(xì)節(jié)。盡管以.rar的擴(kuò)展名命名,但實(shí)際上是一個Unix的shell腳本,與去年9月底發(fā)現(xiàn)的惡意軟件使用相同的混淆處理。
dec(){ echo $@|tr “[a-zA-Z0-9\;-=+*\/]” “[.0-9a-zA-Z\/\/\:]”; }
這句轉(zhuǎn)譯字符串沒有任何改變。
這個簡單的bash函數(shù)dec()攜帶混淆的文本并把字符轉(zhuǎn)譯回真正的文本。通過這個函數(shù),可以從8000.rar文件中找到有趣的字符串:
圖中最重要的二行代碼是_download_url__……和__remote__ ……,前者是可執(zhí)行程序的地址,后者負(fù)責(zé)命令控制通信。而各個名字按順序排列的文件,互相之間唯一的不同就是下載路徑和與文件名相匹配的端口號,可用__remote__ 的代碼進(jìn)行改變。
在確定了惡意軟件中沒有根本結(jié)構(gòu)性的改變之后,Level 3的安全團(tuán)隊(duì)將其下載到CentOS 7的虛擬機(jī)中以root權(quán)限運(yùn)行,以觀察它的運(yùn)行結(jié)果。
在執(zhí)行從__download_url__ 取回的惡意文件后,肉機(jī)立刻開始搜索它的命令控制(C2)主機(jī)。惡意文件將8.8.8.8和8.8.8.4作為它的DNS解析,并嘗試對配置的主機(jī)名進(jìn)行域名解析。接著,便試圖連接IP并解析在__remote__語句中包含的主機(jī)名。
在虛擬機(jī)中運(yùn)行的不同版本的惡意軟件分別與不同的C2建立連接:
103.240.140.152 (解析自ndns.dsaj2a.org和ns2.hostasa.org)
162.218.112.7 (解析自ndns.dsaj2a1.org)
104.143.5.25 (解析自ndns.dsaj2a1.org和ns1.hostasa.org)
103.240.141.54 (解析自ndns.dsaj2a.com、ndns.hcxiaoao.com和ns3.hostasa.org)
連接建立之后,C2就可以指揮肉機(jī)發(fā)動SYN洪水攻擊。SYN的流量包被設(shè)成最小帶寬使用,也沒有隱瞞本身的來源。從C2接收的攻擊指令被確認(rèn)為與之前的惡意軟件使用相同的密鑰(BB2FA36AAA9541F0) 進(jìn)行異或保護(hù)。
其他值得注意的通信,包括每過30分鐘就會從原始惡意主機(jī)23.234.60.140上取回/config.rar。取回這個文件使用的是user-agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; TencentTraveler ; .NET CLR 1.1.4322)
config.rar與其他的惡意文件一樣,也不是RAR壓縮文件。它是一個用128位相同密鑰進(jìn)行異或(XORed)的C2通信文件。通過解碼,安全人員發(fā)現(xiàn)了一個包含下列名稱的配置文件:md5、denyip、filename和rmfile。這些名稱與其他已知的木馬和惡意軟件有關(guān),用來移除和殺死肉機(jī)上感染的其他惡意軟件,以獲得對肉機(jī)的充分控制權(quán)。解碼后的文件內(nèi)容見:
http://www.level3.com/~/media/files/misc/config.txt
在確認(rèn)了該惡意軟件的運(yùn)行目的、通信手段和指令源之后,安全人員開始評估它在整個互聯(lián)網(wǎng)上造成的影響。
在3月底到4月初的二個星期中,安全人員監(jiān)控到攻擊者掃描了大量IP,識別出僵尸網(wǎng)絡(luò)中的活動主機(jī),并發(fā)現(xiàn)C2通信是通過8000至80008和3306的TCP端口進(jìn)行的。但之前版本的惡意軟件使用的通信端口是3502至3508。
在評估完這個僵尸網(wǎng)絡(luò)的規(guī)模、影響和持續(xù)時間后,Level 3和塔羅斯小組決定是時候把這個毒瘤從互聯(lián)網(wǎng)上清除出去了。
行動
4月7日,Level 3把“SSH精神病”互聯(lián)網(wǎng)上所有的攻擊流量放入黑洞,保證其流量再也無法通過Level 3發(fā)出,然后行動人員又聯(lián)系了其他網(wǎng)絡(luò)運(yùn)營商,給他們通報威脅情況并請求對方把這些流量永久的從互聯(lián)網(wǎng)上剔除。
提醒
如果你使用開啟了sshd服務(wù)的Linux系統(tǒng),最好確保你的sshd配置文件禁止root登錄。這種操作將把ssh精神病拒之門外。此外,如果在非標(biāo)準(zhǔn)端口運(yùn)行ssh服務(wù)的話也會是一個不錯的方法。大多數(shù)商業(yè)掃描器和惡意軟件是不會非標(biāo)準(zhǔn)端口的服務(wù)的。
最后,密碼設(shè)置要避免普通密碼字典的猜解。下面這個地址是思科塔羅斯小組蜜罐系統(tǒng)捕獲的447萬多個口令,從中可以看出簡單的字母組合和多位數(shù)的有規(guī)律的字母數(shù)字已經(jīng)無法避免破解。
http://www.level3.com/~/media/files/misc/SSHPsycho_Passwords.xlsx
安全牛評
找到并分析惡意攻擊的源頭,然后將其從互聯(lián)網(wǎng)上剔除,需要整個安全社區(qū)的聯(lián)動。ssh精神病被打掉的這起案例,充分展示了安全研究人員與運(yùn)營商的合作,不失為一個很好的借鑒例子。
原文地址:http://www.aqniu.com/news/7303.html