鎖定開發人員的惡意NPM套件攻擊經常發生,其中大部分駭客都是透過假冒知名冒件的方式,使用極為相似的名稱騙過開發人員,導致他們不慎下載惡意軟體,但最近一波攻擊行動引起軟體開發圈的關注,原因是駭客先針對套件維護者下手,取得他們的NPM帳號來發布新版套件。

根據資安新聞網站Bleeping Computer的報導,每週被下載超過3千萬次的熱門套件eslint-config-prettier,在上週末遭遇供應鏈攻擊,套件維護人員JounQin遭受網釣攻擊,導致他的NPM帳號Token外流,攻擊者得逞後,以他的名義在NPM套件庫上架有問題的套件。

這起事故發現的過程,起因是7月18日有開發人員安裝特定版本的eslint-config-prettier之後,電腦出現不尋常的行為,這些新版套件存在怪異的共通點,那就是維護者雖然在NPM儲存庫上架,卻並未在GitHub專案更新對應的內容,這種情況隨即引起開源軟體社群的注意。

其中一名開發者Dasa Paddock在GitHub儲存庫詢問此事,指出NPM套件庫已發布4個新版eslint-config-prettier,GitHub儲存庫卻沒有程式碼變更的記錄。JounQin後續在GitHub這項套件專案的議題討論,提出說明,導致未經授權的人士得到他的NPM帳號Token,並用於發布有問題的版本。

JounQin公布釣魚信的內容,提及對方要求他驗證NPM帳號,並指出雖然寄信者是support@npmjs.com,看似像來自NPM團隊,信中的連結卻連往非法網域npnjs[.]com。他坦承是疏忽造成,並表示已移除遭利濫用的Token,將會儘快發布新版處理。

究竟惡意版本的NPM套件會造成那些危害?資安新聞網站Bleeping Computer取得相關檔案,發現套件裡的安裝指令碼install.js內含惡意功能logDiskSpace(),會試圖濫用rundll32執行套件裡node-gyp.dll,而此DLL檔案是木馬程式,目前VirusTotal旗下的72款防毒引擎當中,有46款將其視為有害

值得留意的是,攻擊者疑似並非只對JounQin下手,因為惡意程式研究員Malware Utkonos於社群網站X上透露,另一個名為got-fetch的套件,也存在有問題的檔案crashreporter.dll,以及eslint-config-prettier被植入的惡意DLL檔案,源自相同的惡意軟體家族。對此,資安研究員Ax Sharma透露,got-fetch開發者獲報後,於NPM套件庫表明停止維護,並將GitHub儲存庫的內容進行封存。

熱門新聞

Advertisement