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

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

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

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

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

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

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

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

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

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