網絡 “冠狀病毒” |啟明星辰ADLab聯合CNCERT物聯網安全研究團隊發布最新研究報告

發布時間 2020-03-27

概況


隨著“新型冠狀病毒肺炎”上升為全球性公共衛生突發事件,各國民眾開啟了“宅抗疫、云生活”模式。在非常時期,網絡空間在人們的日常生活變得更加不可或缺,然而當大家都在奮力抗疫的同時,大量的黑客卻開始以“冠狀病毒”名義從事大規模的網絡攻擊活動,除了目前已經發現以冠狀病毒為名進行的APT攻擊、勒索病毒攻擊之外,物聯網領域中以冠狀病毒為名的相關攻擊也快速上升。


這些物聯網“冠狀病毒”樣本以“Corona”(冠狀的英文)、“covid”(冠狀病毒英文縮寫)命名,并利用物聯網設備所存在的漏洞進行傳播。我們通過監測數據發現,該類樣本的數量與疫情發展出現一定程度的相關性,比如進入3月份隨著全球疫情持續升溫,以“covid”命名的樣本開始顯著增多。


物聯網“冠狀病毒”樣本統計分析


截止到2020年3月26日,我們的物聯網威脅數據平臺共捕獲到801個以冠狀病毒命名的樣本。我們針對這些物聯網“冠狀病毒”樣本進行了仿真環境動態分析,樣本的C&C上線分布情況如圖1所示。



圖1 僵尸樣本C&C上線分布


數據顯示,這批物聯網“冠狀病毒”樣本中共近90%的樣本受控于位于美國的5個C&C服務器,7%位于俄羅斯,4%位于荷蘭。其中有6個C&C服務器在疫情期間較為活躍,且關聯的樣本量較大,包括X86、ARM、MIPS、PowerPC、SPARC、Renesas SH等多個平臺的ELF文件。通過進一步的同源性分析,我們將這些樣本分成兩類,分別命名為Corona-A、Corona-B,后文將進一步探究它們的技術特點和所屬家族。


這批“冠狀病毒”樣本的主要傳播手段仍然是通過內置密碼本進行Telnet密碼爆破,部分樣本利用到了“Redis 未授權代碼執行”等多個已知漏洞利用進行傳播。另外在我們溯源分析的過程中,發現相關組織近期利用最新的漏洞CVE-2020-9054[1](Zyxel網絡附屬存儲(NAS)設備)開展攻擊活動。據著名調查人員Brian Krebs的說法,該漏洞的相關POC在地下論壇被以2萬美元的價格出售,同時也吸引了大量勒索軟件攻擊組織的興趣(可能還與Emotet有關)。由于漏洞的嚴重性,美國CERT/CC將該漏洞定為CVSS10分。


表1 樣本傳播利用的設備漏洞


技術分析


1、Corona-A類樣本技術分析


在對Corona-A類樣本進行整體分析后,我們發現其中的變種雖多,但各類樣本間的相似度很高,故以近期活躍的C&C (192[.]3[.]193[.]251)為例,對關聯樣本進行逆向分析,其多種架構的樣本均被命名為“Corona”。


圖2 Shell腳本


僵尸程序運行后,首先綁定本地端口0x22B8(8888端口),連接C&C地址為:192[.]3[.]193[.]251:20。


圖3  監聽本地端口


通過ensure_bind函數確保樣本程序只存在單實例運行。


圖4  檢查單實例運行


執行botkiller模塊以清除其它存在競爭的主流僵尸程序。


圖5 執行botkiller模塊


需清除的僵尸家族和關聯字符串如下圖所示:


圖6 清除的目標家族及關聯字符串


惡意代碼中多處硬編碼了“Corona”關鍵詞,包括上線數據包和連接中斷的輸出顯示(僵尸服務端可能將“Corona”作為通信協議識別的關鍵特征)。


圖7 硬編碼“Corona”關鍵詞


上線包及C&C回復包通信流量如下圖所示:


圖8 TCP通信流量


樣本的proc_cmd()函數包含DDoS攻擊模塊,其融合了多種常見的攻擊模式,包括UDP、VSE、HTTP、TCP、STD、XMAS等。同時在針對該C&C監控的過程中,我們發現其近期發動的DDoS攻擊活動較為頻繁,主要目標為歐美國家,部分攻擊示例如下圖所示:


圖9 攻擊情況示例


基于樣本的代碼結構、函數命名、通信流量、攻擊模式等特征,可以發現Corona-A類樣本與Gafgyt家族的相似度很高,黑客雖對通信數據等內容包裝了“新冠”概念,但代碼在整體上仍與Gafgyt家族相近,可以認為是Gafgyt家族的變種。Corona-A的其它類型樣本也同樣基于Gafgyt進行修改,在此不做贅述。


2、Corona-B類樣本技術分析


Corona-B類惡意樣本的代碼相較Corona-A更為復雜,且大部分樣本進行了符號剝離,對逆向分析會產生較大干擾。但是黑客百密一疏,在大量樣本中,依然存在個別arm架構的樣本包含符號,可供研究分析。通過進一步的觀察,我們發現Corona-B類樣本間的差異較大,可以細分為變種Corona-B-1和變種Corona-B-2進行分析。


? Corona-B-1


Corona-B-1的關聯C&C為45[.]84[.]196[.]75,相關樣本占捕獲總量的64%,是目前發現樣本量最大的物聯網“冠狀病毒”,近一個月時間內迭代了多個版本。在溯源分析的過程中,我們發現相關組織近期利用Zyxel網絡附屬存儲(NAS)設備的最新漏洞CVE-2020-9054開展攻擊活動,相關入侵流量如下圖所示:


圖10 漏洞入侵流量


CVE-2020-9054漏洞是網絡產品供應商Zyxel近期修復的一個嚴重的遠程代碼執行漏洞,漏洞影響多款NAS設備,攻擊者可以通過weblogin.cgi組件觸發命令注入并加載惡意代碼。


攻擊成功后會執行shell腳本下載不同架構的僵尸樣本。


圖11 執行shell腳本


此類惡意樣本也曾以“corona”作為后綴名進行下載傳播。


圖12 “corona”后綴樣本


通過進一步的分析確認,Corona-B-1是Mirai家族的新變種Mukashi,雖然代碼未集成漏洞利用模塊,但黑客有很大可能在利用CVE-2020-9054漏洞進行攻擊并傳播惡意樣本,需要引起各方重視。


Corona-B-1與其它Mirai家族不同的是,其在初始化模塊中,并未采用常規的xor加解密,而是使用了自定義的解密模式。其不同版本的解密算法相同,但預置加密字符串不同,初始加密字符串示例如下圖所示。


(樣本ad61c361f76026e0b0c1ff1bc62b52e7) :


圖13 初始加密字符串


解密后的命令和字符串會存儲到Table中供后續使用,對應信息如下表所示:


表2 解密后的命令和字符串


Corona-B-1的掃描模塊scanner_init則同Mirai家族的大多數變種一樣,采用Telnet爆破,并使用不同的默認憑據組合進行登錄。


圖14 掃描流量


一旦Telnet爆破成功則會以“<host ip addr>:23 <username>:<password>”的格式將信息提交給C&C。


同時,Corona-B-1會試圖發送命令執行一些操作,如“system”、“shell”等默認命令, Corona-B-1在此處新增了"/bin/busybox CORONA"命令,可以進一步執行busybox中的惡意代碼部件。


圖15 “CORONA”命令


值得注意的是,Corona-B-1在最新的代碼中刪除了對該命令的后續處理,前期版本通過recv()函數來接收和判斷回顯信息(如若CORONA命令不存在,busybox將返回“CORONA: applet not found”)。


圖16 新舊版本命令處理對比


在攻擊模式方面,Attack_parsing()函數負責處理與C&C服務器的命令交互,具體的控制指令數組由初始解密得到。


圖17 控制指令選擇


下表為Corona-B-1支持的C&C控制指令。


表3  C&C控制指令


其中,Corona-B-1配置了部分繞過DDOS防御的攻擊模式,例如UDP bypass,TCP bypass,這些技術最早來自于Mirai的Dvrhelper變種,也表明Corona-B-1可能繼承借鑒了Dvrhelper變種的部分代碼。


?Corona-B-2


Corona-B-2的關聯C&C為64[.]227[.]17[.]38,攻擊者將多種架構的惡意樣本命名為“covid”。值得注意的是,近期其惡意代碼功能的更新迭代非常頻繁。



圖18 服務器惡意代碼更新情況


Corona-B-2樣本包含Telnet爆破、反GDB調試、禁用看門狗(watchdog)等模塊功能,相較于Corona-B-1,Corona-B-2更接近于原生的Mirai家族。通過進一步比對,其復用了Mirai的大部分代碼,但初始化模塊和攻擊模塊有所變化。


初始化模塊(table_init)的table_key與Mirai的默認配置不同(Corona-B-2的table_key為0xDEDEFBAF),相關加密數據可以通過Mirai源碼中的tools/enc.c模塊進行解密。


攻擊模塊(attack_init)共組合了13種攻擊方式,通過Bindiff進行新舊版本相似性比對后,我們發現黑客組織在持續增加和更新樣本的攻擊模塊。


包括:


attack_method_nudp

attack_method_udphex

attack_method_udpdns等。


也表明該組織近期的攻擊欲望較強。


圖19 新舊版本代碼相似性比較


綜合以上對物聯網“疫情樣本”的分析,多種惡意代碼最終都定位到了Gafgyt和Mirai家族的變種,說明這兩類廣泛傳播的家族仍是大量黑客開發新型物聯網僵尸的首選。同時從命名習慣、攻擊目標、服務器歸屬地等因素綜合判斷,這批攻擊者大概率會是境外的黑客組織。


相關樣本的家族歸類整理如下圖所示:


圖20 樣本家族歸類


受攻擊IP分布


根據我們的監測數據,目前境內受到物聯網“冠狀病毒”攻擊的設備IP超過22萬,主要位于中國境內(96.8%)。其中國內主要分布于廣東?。?5.4%)、浙江?。?4.2%)、北京市(13.7%)、江蘇?。?0.0%)等。境內受攻擊IP分布圖如下所示:


圖21 受攻擊IP位置分布圖


總結


通過以上分析可以看出,物聯網“冠狀病毒”的擴散和全球疫情發展有著一定的相關性。技術上,其大部分還是采用了經典的物聯網病毒Gafgyt和Mirai家族的攻擊模塊,但是其傳播的默認手段依然是Telnet爆破,部分新的樣本開始結合一些新發現的漏洞進行擴散傳播。此外,為了更有效的獨占設備資源,物聯網“冠狀病毒”還加強了對其它主流僵尸競爭對手的防控和撲殺,可以殺掉50多種類型的物聯網僵尸進程。一些樣本還采用了自定義的加解密模塊,并不斷在攻擊模塊中融合新的攻擊類型。


該批物聯網“冠狀病毒”攻擊手法和特點來看并沒有太多新奇的東西,但是通過利用現實世界的真實事件來擴散惡意攻擊這一思路必將會長期存在。對新漏洞的武器化依然是物聯網黑客們的重點關注方向。黑客從服務器、PC、智能手機,擴展向攝像頭、路由器、NAS、家居安防系統、智能電視、智能穿戴設備,甚至是嬰兒監視器,任何互聯網連接的設備都不會放過,這也是長期以來物聯網惡意代碼保持多平臺兼容的原因。物聯網的威脅對于普通管理員來說是很難察覺的,就像處于潛伏期的受感染者一樣,無法及時防御和清除。最后,在疫情之下,我們更應該警惕別有用心的物聯網“冠狀病毒”大幅擴散,爭取早日戰勝疫情,戰勝病毒。因此我們建議用戶:


( 1 ) 及時更新升級物聯網設備固件;

( 2 ) 盡快更換設備廠商初始密碼,注意避免空口令或弱口令;

( 3 ) 如無必要,盡可能不要將產品直接暴露在互聯網上,如必須聯網,可將設備連接到安全路由器或防火墻,進行更多的防護;

( 4 ) 加強網絡邊界入侵防范和管理,關閉非必要的網絡服務和端口,如SSH(22)、Telnet(23)、HTTP/HTTPS (80、443)等。


IOC樣例




本報告由CNCERT物聯網安全研究團隊與啟明星辰ADLab聯合發布