不法分子旨在通過惡意 npm 包引起 Discord 不和諧
LofyLife 活動是在 GitHub 安全鎖定期間進行的
網絡犯罪分子繼續使用 npm 軟件包將惡意軟件包投放到毫無戒心的受害者身上,最近一次是從受感染的系統中竊取 Discord 登錄令牌、銀行卡數據和其他用戶信息。
最新的 npm 活動的詳細信息被卡巴斯基威脅情報獵人稱為“LofyLife”,與此同時,擁有 NPM 公司,又歸微軟所有的 GitHub 公布了一系列對 npm 安全性的增強。涉及惡意 npm 包的幾起引人注目的事件。而且它是必要的
代碼安全供應商 BluBracket 的產品和開發人員支持負責人 Casey Bisson 對The Register表示:“任何可以達到大量目標(或大量重要目標)的攻擊向量都會引起威脅參與者的興趣,并補充說 npm擁有數千萬用戶和數百億托管包下載量。
“NPM 不只是為大量目標提供攻擊向量;目標本身特別有趣。企業和個人開發人員通常擁有比普通人口更多的資源,并在開發人員的機器或企業中獲得灘頭陣地后進行橫向攻擊系統通常也頗有成效。”
卡巴斯基研究人員 Igor Kuznetsov 和 Leonid Bezvershenko 在上周晚些時候的一份報告中寫道,他們在 npm 存儲庫中發現了四個可疑包,所有這些包都包含高度混淆的 JavaScript 和 Python 代碼。他們把所有這些都放在了 LofyLife 的旗幟下。
Python 惡意軟件是對開源令牌記錄器 Volt Stealer 的修改迭代。根據卡巴斯基的說法,Python 代碼旨在從受感染的機器上竊取 Discord 令牌和 IP 地址,并通過 HTTP 上傳它們。
研究人員寫道:“我們稱之為‘Lofy Stealer’的 JavaScript 惡意軟件是為了感染 Discord 客戶端文件而創建的,以監控受害者的行為。” “它檢測用戶何時登錄、更改電子郵件或密碼、啟用/禁用多因素身份驗證……并添加新的支付方式,包括完整的銀行卡詳細信息。”
該惡意軟件隱藏在四個惡意 npm 模塊中:small-sm、pern-valids、lifeculer 和 proc-title。這些被裝扮成有用的、無辜的庫,然后開發人員將其拉入他們的應用程序并執行。
卡巴斯基團隊寫道,一旦在機器上運行,惡意軟件就會從系統中收集信息并將其上傳到地址是硬編碼的遠程端點。數據(例如人們的 Discord 登錄令牌)被泄露到 Replit 上托管的實例:life.polarlabs.repl[.]co、Sock.polarlabs.repl[.]co 和 idk.polarlabs.repl[.]co。
鑒于 npm 為開發人員托管了大量 JavaScript 包,因此它已成為希望破壞軟件供應鏈的網絡犯罪分子的目標也就不足為奇了。一旦不法分子侵入了 npm 包維護者的帳戶并操縱其庫代碼以包含惡意軟件,或上傳新的??惡意包以誘使開發人員使用該代碼,惡意腳本就可以開始進入應用程序并繼續運行受害者和開發者的電腦。
Synopsis 網絡安全研究中心的首席安全策略師 Tim Mackey 表示,軟件供應鏈長期以來一直是攻擊者的目標,尤其是針對購物車或開發工具等框架的攻擊者。
“我們最近看到的是一種認識,即我們過去將攻擊歸類為惡意軟件或數據泄露,實際上是對信任組織在他們創建和使用的軟件中的危害,”Mackey 告訴The Register。“許多人認為供應商創建的軟件完全由該供應商編寫,但實際上,即使是最簡單的軟件也可能有數百個第三方庫。”
這些庫“實際上是應用程序軟件供應鏈中的供應商,但使用任何給定供應商的決定是由解決功能問題的開發人員做出的,而不是由專注于業務風險的商人做出的,”他說。
容易的選擇越來越難
容器和 Kubernetes 安全專家 Tigera 的高級安全研究員 Garwood Pang 告訴The Register,“這種惡意軟件似乎針對運行本地節點實例的缺乏經驗的開發人員(即學生)。針對 Discord 提供了很大的影響力。被盜的 Discord 令牌可以被用來對受害者的朋友進行魚叉式網絡釣魚嘗試。”
LofyLife 的檢測伴隨著 GitHub 對 npm 進行了一些更改。這包括在 npm CLI 中簡化的登錄和發布體驗,以及將 GitHub 和 Twitter 帳戶連接到 npm 的能力。此外,所有的 npm 包都被重新簽名,GitHub 添加了一個新的 npm CLI 命令來審計包的完整性。
GitHub 還在 NPM 上普遍提供增強的兩因素身份驗證。GitHub 在 5 月宣布了 2FA 的公開測試版,并納入了由用戶建議推動的改進。
該組織還指出,開發人員長期以來一直能夠在他們的 npm 配置文件中包含 GitHub 和 Twitter 句柄,以將 npm 帳戶的身份連接到其他平臺上的身份,但數據是未經驗證的自由格式文本字段或已驗證。通過與 GitHub 和 Twitter 的官方集成鏈接帳戶,可確保經過驗證的帳戶數據包含在 npm 配置文件中。
GitHub 的 Myles Borins 和 Monish Mohan在宣布增強功能。“在跨平臺的身份之間建立經過驗證的鏈接可以顯著提高我們進行帳戶恢復的能力。這些經過驗證的新數據為將身份驗證自動化作為帳戶恢復的一部分奠定了基礎。”
最終 GitHub 將無法識別遺留數據,但現在將繼續尊重它,以確保用戶不會被鎖定在他們的帳戶之外。