研究發(fā)現(xiàn)十個竊取開發(fā)者數(shù)據(jù)的惡意 PyPI 包
Check Point 研究人員在 Python 包索引 (PyPI) 上發(fā)現(xiàn)了十個惡意包。這些軟件包安裝了信息竊取程序,允許攻擊者竊取開發(fā)人員的私人數(shù)據(jù)和個人憑據(jù)。研究人員提供了有關(guān)惡意軟件包的詳細信息:
- Ascii2text 在名稱和描述上模仿了流行的 art 軟件包??梢栽跊]有發(fā)布部分的情況下復(fù)制整個項目描述,從而防止用戶意識到這是一個假包。惡意部分在包 init.py 文件中,由setup.py安裝腳本導(dǎo)入。init.py 文件中的代碼負責(zé)下載和執(zhí)行惡意腳本,該腳本搜索本地密碼并使用 discordweb hook 上傳。
- Pyg-utils、Pymocks 和 PyProto2,允許攻擊者竊取用戶的 AWS 憑證。Pyg-utils 連接到同一惡意域 (pygrata.com),Pymocks 和 PyProto2 有幾乎相同的代碼針對不同的域 ——pymocks.com。
- Test-async 在其描述中被描述為 “非常酷的測試包,非常有用,每個人都 100% 需要”。在其 setup.py 安裝腳本中,它從 Web 下載并執(zhí)行可能是惡意的代碼。在下載該代碼段之前,它會通知 Discord channel “new run” 已開始。
- Free-net-vpn 和 Free-net-vpn2是針對環(huán)境變量的惡意軟件包。在它的 setup.py 安裝腳本上有一個干凈的、有記錄的代碼來獲取用戶的憑據(jù)。然后將這些機密發(fā)布到一個由動態(tài) DNS 映射服務(wù)映射的網(wǎng)站上。
- Zlibsrc模仿 zlib 項目,包含一個從外部源下載和運行惡意文件的腳本。
- Browserdiv 是一個惡意程序包,其目的是通過收集安裝程序憑據(jù)并將其發(fā)送到預(yù)定義的 discord webhook 來竊取安裝程序憑據(jù)。雖然根據(jù)它的命名,它似乎是針對網(wǎng)頁設(shè)計相關(guān)的程序(bowser,div),但根據(jù)其描述,該軟件包的動機是為了在 discord 內(nèi)使用 selfbots。
- WINRPCexploit雖然根據(jù)其描述,它是一個 "利用 windows RPC 漏洞的軟件包",但其實是一個憑據(jù)竊取程序包。在執(zhí)行時,該包會將服務(wù)器的環(huán)境變量(通常包含憑據(jù))上傳到攻擊者控制的遠程站點。
盡管 CheckPoint 報告了發(fā)現(xiàn)的軟件包并從 PyPI 中刪除,但在其系統(tǒng)中下載這些軟件包的軟件開發(fā)者仍然可能面臨風(fēng)險。
Bleepingcomputer 指出,在許多情況下,惡意程序包為可能的供應(yīng)鏈攻擊奠定了基礎(chǔ),因此開發(fā)人員的計算機可能只是廣泛感染的起始點,并且應(yīng)該對代碼進行惡意代碼審計。重要的是要記住,PyPI 中的任何包都沒有安全保證,用戶有責(zé)任仔細檢查名稱、發(fā)布歷史、提交詳細信息、主頁鏈接和下載數(shù)量。所有這些元素共同有助于確定 Python 包是否值得信賴或是否具有潛在惡意。?