又見大規(guī)模開源軟件供應(yīng)鏈劫持,攻擊者下發(fā)了挖礦和竊密木馬,或影響超百萬用戶和大量下游項目。
10月22日,每周下載超數(shù)百萬次的流行NPM包UA-Parser-JS遭到黑客劫持,導(dǎo)致大量Windows與Linux設(shè)備感染了加密貨幣挖礦軟件與密碼竊取木馬。
UA-Parser-JS可用于解析瀏覽器的用戶代理,能夠識別出訪問者使用的瀏覽器、引擎、操作系統(tǒng)、CPU以及設(shè)備類型/型號。
這個項目的人氣很高,每周下載量超數(shù)百萬次,本月下載總量超過2400萬次。此外,該包也被用于一千多個其他項目,身影遍布Facebook、微軟、亞馬遜、Instagram、谷歌、Slack、Mozilla、Discord、Elastic、Intuit、Reddit等知名廠商。
隨后不久(10月22日),美國網(wǎng)絡(luò)安全與基礎(chǔ)設(shè)施安全局發(fā)布預(yù)警,在流行NPM包 UA-Parser-JS中發(fā)現(xiàn)惡意軟件,敦促用戶抓緊時間更新。
UA-Parser-JS項目被劫持大肆擴散惡意軟件
10月22日,攻擊者開始分發(fā)惡意版本的UA-Parser-JS NPM包,試圖向眾多Linux與Windows設(shè)備安裝加密貨幣挖礦軟件與密碼竊取木馬。
有開發(fā)者表示,自己的NPM賬戶遭到劫持,攻擊者先后部署了三個惡意版本。
UA-Parser-JS開發(fā)者Faisal Salman在bug報告中解釋道,“當(dāng)時我的郵箱突然被數(shù)百個網(wǎng)站的垃圾郵件吞沒,我馬上意識到,肯定出了異常狀況(要不是這樣,我可能根本沒有察覺問題的出現(xiàn),還好鬧出的動靜很大)?!?/p>
“我相信是有人劫持了我的npm賬戶,并發(fā)布了受到感染的軟件包(0.7.29、0.8.0、1.0.0)。這些軟件包可能會安裝惡意軟件,具體區(qū)別可以參考代碼diff。”
受到影響的版本以及補丁修復(fù)后的版本分別為:
惡意版本
修復(fù)版本
0.7.29
0.7.30
0.8.0
0.8.1
1.0.0
1.0.1
通過開源安全廠商Sonatyp共享的惡意版本,我們可以更好地了解這次攻擊的整個流程。
當(dāng)受到感染的軟件包被安裝在用戶設(shè)備上時,其中的preinstall.js腳本會檢查設(shè)備上使用的操作系統(tǒng)類型,并啟動Linux shell腳本或Windows批處理文件。
用于檢查操作系統(tǒng)類型的preinstall.js腳本
如果軟件包是安裝在Linux設(shè)備上,則執(zhí)行preinstall.sh腳本以檢查用戶是否位于俄羅斯、烏克蘭、白俄羅斯及哈薩克斯坦。如果不在這些國家/地區(qū),則該腳本將從159[.]148[.]186[.]228處下載 jsextension程序并執(zhí)行。
jsextension程序是一個XMRig Moero挖礦軟件。為了避免被快速檢測出來,它只會使用設(shè)備CPU的50%算力。
安裝挖礦軟件的Linux shell腳本
對于Windows設(shè)備,批處理文件同樣會下載XMRig Monero挖礦軟件并將其保存為 jsextension.exe加以執(zhí)行。另外,批處理文件還會從citationsherbe[.]at處下載一個sdd.dll文件,并將其保存為create.dll。
安裝挖礦軟件的Windows批處理文件
這里下載的DLL文件是個密碼竊取木馬(可能屬于DanaBot家族),用于竊取存儲在設(shè)備上的密碼內(nèi)容。
在使用 regsvr32.exe -s create.dll 命令完成加載后,該DLL文件會嘗試竊取各類程序中保存的密碼,包括主流FTP客戶端、VNC、聊天軟件、電子郵件客戶端以及瀏覽器等。
除了從上述程序中竊取密碼之外,該DLL還會執(zhí)行PowerShell腳本以從Windows憑證管理器內(nèi)竊取密碼,如下圖所示。
從Windows中竊取已保存的密碼
此次攻擊的幕后策劃者,似乎也策劃了本周發(fā)現(xiàn)的其他惡意NPM包攻擊。
Sonatype的研究人員先后發(fā)現(xiàn)了三個惡意NPM包,會以幾乎相同的方式在Linux及Windows設(shè)備上部署加密貨幣挖礦軟件。
UA-Parser-JS用戶該如何應(yīng)對?
考慮到此次供應(yīng)鏈攻擊的廣泛影響,強烈建議UA-Parser-JS的所有用戶檢查項目中是否存在惡意軟件。
具體包括檢查是否存在 jsextension.exe (Windows) 或 jsextension (Linux)文件,如果找到請立即刪除。
Windows用戶還應(yīng)掃描設(shè)備查找 create.dll 文件,一旦找到請立即刪除。
雖然目前的密碼竊取木馬只影響到Windows設(shè)備,但Linux用戶同樣不能掉以輕心,要做好設(shè)備已經(jīng)受到全面滲透的心理準(zhǔn)備。
因此,所有受到感染的Linux及Windows用戶都應(yīng)變更密碼、密鑰并刷新令牌,避免憑證信息泄露并被攻擊者掌握。
雖然全面更換密碼與訪問令牌是一項艱巨的工作,但考慮到攻擊者可能借此奪取其他賬戶、包括在供應(yīng)鏈攻擊中進(jìn)一步滲透其他項目,請大家萬勿抱有僥幸心態(tài)。