【技術(shù)分享】高?!巴诘V”病毒防護解決思路
“挖礦”病毒產(chǎn)生背景
近年來,隨著虛擬貨幣的瘋狂炒作,挖礦病毒已經(jīng)成為不法分子利用最為頻繁的攻擊方式之一。病毒傳播者可以利用個人電腦或服務(wù)器或者入侵其他單位服務(wù)器或云環(huán)境資源進行挖礦,導(dǎo)致挖礦病毒、木馬泛濫的同時浪費業(yè)務(wù)單位電力、計算資源,導(dǎo)致影響正常的單位業(yè)務(wù)無法開展,具體現(xiàn)象體現(xiàn)為電腦CPU占用率高,C盤可使用空間驟降,電腦溫度升高,風(fēng)扇噪聲增大,電力消耗猛增等問題。

學(xué)校環(huán)境為高計算集中環(huán)境,校園數(shù)據(jù)中心存放大量服務(wù)器、云主機、虛擬主機,同時教室辦公終端、學(xué)生終端數(shù)量巨大,都可能成為挖礦病毒的感染對象,也存在著校內(nèi)教職工或者學(xué)生群體刻意使用校內(nèi)公共資源進行挖礦謀取個人利益的現(xiàn)象。
“挖礦”病毒介紹
挖礦病毒入侵主要分為三種方式:基于瀏覽器插件的挖礦病毒,基于Linux系統(tǒng)的挖礦病毒,基于Windows系統(tǒng)的挖礦病毒(常見)。
一、基于Linux/Windows系統(tǒng)的挖礦病毒
挖礦病毒程序結(jié)構(gòu)(一般情況下)▼

文件結(jié)構(gòu)▼

基于Linux/Windows系統(tǒng)的挖礦病毒一般包括四個部分,包括挖礦配置、挖礦軟件、守護進程、監(jiān)控更新程序,對應(yīng)文件包括config.json(挖礦配置)、sysupdate(XMR挖礦軟件)、update.sh(定時執(zhí)行與更新腳本)、networkservice(scanner 掃描并入侵其它主機)、sysguard(watchdog 用于監(jiān)控并保證病毒程序的正常運行與更新,并保證它們已root權(quán)限運行)。
二、基于瀏覽器插件的挖礦病毒
現(xiàn)在各種網(wǎng)絡(luò)安全防護比較多,直接向內(nèi)網(wǎng)植入挖礦病毒,成本越來越高,所以非法分子將目光投向網(wǎng)頁,利用網(wǎng)頁中的插件漏洞來植入挖礦病毒;常見的網(wǎng)頁插件包括:injected.js、content-script.js、background.js、manifest.json等。
injected.js插件和原網(wǎng)頁自帶的腳本類似,可以訪問網(wǎng)頁原有js的變量空間,僅當(dāng)你需要獲取被瀏覽頁面中原有js中的變量時,才把你的腳本inject到用戶的頁面中,然后傳給content-script。
content-script.js主要是注入用戶瀏覽的頁面中,但又不像injected script那么徹底,而是單獨運行在一個隔離空間里;因而只能訪問和操作頁面DOM,不能訪問頁面js的變量空間。
background.js這類腳本是運行在瀏覽器后臺的,它與當(dāng)前瀏覽頁面無關(guān),也就是所謂的后臺腳本,在Chrome擴展中分為持續(xù)性和非持續(xù)性的。
manifest.json是一個Chrome插件必不可少的文件,用來配置所有和插件相關(guān)的配置,必須放在根目錄。
插件文件格式▼

在background.js文件中,查找挖礦配置代碼▼

隨著攻防手法的不斷變化,黑產(chǎn)團伙開始在挖礦病毒上使用的技術(shù)也越來越先進。

1、通過釣魚郵件、惡意站點、軟件捆綁下載等方式誘導(dǎo)用戶點擊其惡意腳本程序。
2、在用戶點擊啟動惡意腳本loader.sh后,該腳本將清除安全軟件,下載啟動程序(kworker)。
3、Kworker程序檢查并更新各功能組件,以及啟動挖礦程序dbus、攻擊程序autoUpdate、隱藏腳本hideproc.sh、攻擊腳本sshkey.sh。
4、autoUpdate程序掃描并攻擊所在網(wǎng)段的Struts2、Shiro、Mssql、Postgres、Redis、Dubbo、Smb和SSH等組件、服務(wù)或協(xié)議漏洞,以及國內(nèi)用戶常用的服務(wù),并利用相關(guān)漏洞寫入計劃任務(wù)并執(zhí)行。
5、通過hideproc.sh腳本隱藏進程,防止被用戶發(fā)現(xiàn)。
6、通過sshkey.sh腳本嘗試從bash_history、etc/hosts、ssh/kownhost及進程已有連接中提取該終端連接過的終端,如果可以成功連接則下載并啟動腳本loader.sh,達到傳播目的。
7、挖礦程序dbus在受害者的設(shè)備上悄悄運行以便挖掘加密貨幣,同時將中毒設(shè)備上連接到一個礦池,為欺詐者獲取未經(jīng)授權(quán)的“免費”計算能力,欺詐者直接將“免費算力”掙來的加密貨幣放入自己的錢包。

“挖礦”病毒的危害
一、社會層面
虛擬貨幣“挖礦”活動指通過專用“礦機”計算生產(chǎn)虛擬貨幣的過程,站在國家層面來說會造成如下危害:
1)能源消耗和碳排放量大,對國民經(jīng)濟貢獻度低,對產(chǎn)業(yè)發(fā)展、科技進步等帶動作用有限。
2)虛擬貨幣生產(chǎn)、交易環(huán)節(jié)衍生的風(fēng)險越發(fā)突出,其盲目無序發(fā)展對推動經(jīng)濟社會高質(zhì)量發(fā)展和節(jié)能減排帶來不利影響。
二、學(xué)校層面
惡意挖礦攻擊,就是在用戶不知情或未經(jīng)允許的情況下,占用受害者的系統(tǒng)資源和網(wǎng)絡(luò)資源進行挖礦,從而獲取加密貨幣牟利,其通常發(fā)生在網(wǎng)站或服務(wù)器中,對學(xué)校會造成如下危害:
1)服務(wù)器性能嚴重下降,影響業(yè)務(wù)系統(tǒng)正常運行,嚴重時可能導(dǎo)致校園業(yè)務(wù)系統(tǒng)中斷。
2)在感染挖礦病毒的同時,服務(wù)器資源可能成為攻擊者控制的僵尸網(wǎng)絡(luò)中的一部分,被用來對其他目標進行攻擊,如DDoS攻擊源、C2服務(wù)器等。
3)可能導(dǎo)致信息泄露及其他攻擊。攻擊者在安裝挖礦木馬的同時,很多情況下已獲得服務(wù)器的系統(tǒng)權(quán)限,服務(wù)器上數(shù)據(jù)的竊取以及針對目標企業(yè)的下一步攻擊僅在于攻擊者的一念之間。
三、個人層面
挖礦病毒在運行時,因占用大量系統(tǒng)資源,造成系統(tǒng)卡頓后容易被用戶察覺,所以會使用偽裝成系統(tǒng)文件、無文件持久化等技術(shù)保護自身,即使被用戶發(fā)現(xiàn)也不會被輕易清除,長時間占用用戶的系統(tǒng)資源,挖礦獲取利益。嚴重影響終端性能,造成電腦卡頓,降低終端用戶辦公、學(xué)習(xí)效率,影響教育教學(xué)活動。
“挖礦”病毒整治政策要求
國家發(fā)展改革委等部門多次組織召開 “挖礦”治理專題會議,并在關(guān)于整治虛擬貨幣“挖礦”活動的通知,發(fā)改運行【2021】1283號文件中明確要求:整治虛擬貨幣“挖礦”活動對促進我國產(chǎn)業(yè)結(jié)構(gòu)優(yōu)化、推動節(jié)能減排、如期實現(xiàn)碳達峰、碳中和目標具有重要意義。
各地區(qū)、各部門和有關(guān)單位要高度重視,充分認識整治虛擬貨幣“挖礦”活動的必要性和重要性,切實把整治虛擬貨幣“挖礦”活動作為促進經(jīng)濟社會高質(zhì)量發(fā)展的一項重要任務(wù),進一步增強責(zé)任感和緊迫感,抓住關(guān)鍵環(huán)節(jié),采取有效措施,全面整治虛擬貨幣“挖礦”活動,確保取得實際成效。
“挖礦”病毒防護手段

檢測:以“工具+人工”的手段,通過安全設(shè)備檢測,輔助人工分析,幫助用戶定位網(wǎng)絡(luò)中是否存在挖礦行為。
1) 針對網(wǎng)絡(luò)中存在的挖礦或其他的安全隱患
通過邊界側(cè)防火墻、入侵防御設(shè)備和終端安全防護,采用本地特征庫和云端情報庫相結(jié)合的方式,通過安全防護引擎對挖礦活動進行檢測,阻斷實時惡意連接。
2)對于無法識別潛在的挖礦外聯(lián)行為
通過威脅感知系統(tǒng),結(jié)合AI技術(shù)與虛擬沙箱技術(shù),對網(wǎng)絡(luò)中傳輸?shù)碾[蔽性高的APT惡意文件有效識別,同時快速識別異常外聯(lián)流量,定位組織網(wǎng)絡(luò)中的挖礦主機。
3)多維度檢測

處置:一旦在用戶網(wǎng)絡(luò)中發(fā)現(xiàn)挖礦病毒,通過終端EDR和邊界防火墻,阻斷該終端異常外聯(lián)行為,并進行病毒查殺。
1) Linux系統(tǒng)挖礦病毒的處置
通過定時任務(wù)/服務(wù)的清除、特定文件的刪除、文件中特定內(nèi)容的刪除、目錄的刪除、指定文件的恢復(fù)、病毒進程文件處置、病毒文件刪除等處置動作,徹底清除用戶網(wǎng)絡(luò)中的挖礦病毒。
2) Windows系統(tǒng)挖礦病毒的處置
通過進程內(nèi)存處置、自啟動目錄文件刪除、自啟動配件文件的清除/修改,注冊表項的清除/修改,計劃任務(wù)刪除、賬號刪除、WMI自啟動刪除、文件的刪除和恢復(fù)等處置動作,徹底清除用戶網(wǎng)絡(luò)中的挖礦病毒。
預(yù)防:面對日益嚴峻的挖礦或其他惡意病毒威脅,以預(yù)防為主,建設(shè)立體化的病毒防護解決方案,從源頭杜絕挖礦病毒進入組織內(nèi)部。
在邊界上通過防火墻和入侵防御設(shè)備構(gòu)建防御基線,快速檢測并阻斷多種已知或未知病毒。
在網(wǎng)絡(luò)層面,通過旁路部署的威脅感知設(shè)備對流量和異常行為的分析,定位未知病毒或攻擊行為,通過與邊界防火墻的聯(lián)動,阻斷異常流量,定位異常主機。
在終端層面,通過部署終端EDR,協(xié)同邊界側(cè)設(shè)備和云端安全能力,及時發(fā)現(xiàn)潛伏的挖礦主機,及時清理,杜絕影響。
1.系統(tǒng)層面
服務(wù)器端:
-
建立服務(wù)器投產(chǎn)標準化規(guī)范,安全基線(如:服務(wù)器上線之前,安全策略如何設(shè)置、補丁要求、防病毒、運維管理要求如何配置等)。
-
定義服務(wù)器運維規(guī)范,安全要求,以及安全檢查機制。
-
建立服務(wù)器配置管理機制,首先針對操作系統(tǒng)進行配置管理。
客戶端:
-
建立客戶端系統(tǒng)準入機制,如沒有進行補丁更新、沒有安裝防病毒的客戶端無法訪問服務(wù)器區(qū)網(wǎng)絡(luò)。
-
定義客戶端補丁更新策略、防病毒更新策略等安全要求。
-
建立客戶端統(tǒng)一的桌管平臺,讓客戶端的機器能夠統(tǒng)一的進行管理。
2. 運維層面
-
加強服務(wù)器監(jiān)控預(yù)警機制。
-
加強用戶安全意識教育。
-
建立統(tǒng)一日志管理平臺,可收集、存儲、分析服務(wù)器系統(tǒng)及網(wǎng)絡(luò)設(shè)備的相關(guān)日志。
-
建立服務(wù)器統(tǒng)一運維管理平臺,能夠快速批量的管理服務(wù)器。