近日,研究人員發(fā)現,有大量的惡意npm軟件包,它們冒充以太坊開發(fā)者使用的Hardhat開發(fā)環(huán)境,正在竊取私鑰和其他敏感數據。研究人員稱,這些惡意軟件包總共被下載了一千多次。
針對性攻擊活動 Hardhat是由Nomic Foundation維護的、廣泛用于以太坊開發(fā)的工具,它可用于在以太坊區(qū)塊鏈上開發(fā)、測試和部署智能合約以及去中心化應用程序(dApps)。通常,區(qū)塊鏈軟件開發(fā)者、金融科技公司、初創(chuàng)企業(yè)和教育機構會使用它。
這些用戶往往會通過npm(Node Package Manager,JavaScript生態(tài)系統(tǒng)里廣泛使用的工具,用于管理依賴項、庫和模塊)獲取項目組件。
在npm平臺上,三個惡意賬戶上傳了20個信息竊取包。這些包采用“拼寫錯誤偽裝”(typosquatting)手段冒充合法包,引誘用戶安裝。Socket列出了16個惡意包的名稱,包括:
- nomicsfoundations
- @nomisfoundation/hardhat - configure
- installedpackagepublish
- @nomisfoundation/hardhat - config
- @monicfoundation/hardhat - config
- @nomicsfoundation/sdk - test
- @nomicsfoundation/hardhat - config
- @nomicsfoundation/web3 - sdk
- @nomicsfoundation/sdk - test1
- @nomicfoundations/hardhat - config
- crypto - nodes - validator
- solana - validator
- node - validators
- hardhat - deploy - others
- hardhat - gas - optimizer
- solidity - comments - extractors
一旦安裝這些包,其中的代碼就會嘗試收集Hardhat的私鑰、配置文件以及助記詞,然后用硬編碼的AES密鑰進行加密,再傳輸給攻擊者。
Socket解釋說:“這些包借助Hardhat運行時環(huán)境,通過 hreInit() 和 hreConfig() 等函數收集私鑰、助記詞和配置文件等敏感信息,然后利用硬編碼的密鑰和以太坊地址將這些數據高效地泄露出去。”
安全風險與緩解措施 私鑰和助記詞用于訪問以太坊錢包,所以此次攻擊首先可能導致的后果是發(fā)起未經授權的交易從而使資金遭受損失。而且,由于許多受感染的系統(tǒng)屬于開發(fā)者,攻擊者可能會未經授權訪問生產系統(tǒng),破壞智能合約或者部署現有dApp的惡意克隆,為大規(guī)模攻擊做準備。
Hardhat配置文件可能包含第三方服務的API密鑰以及開發(fā)網絡和端點的信息,這些信息可能被用于開展釣魚攻擊。
軟件開發(fā)者要謹慎行事,在安裝前驗證軟件包的真實性,警惕拼寫錯誤偽裝并查看源代碼。一般來說,私鑰不應進行硬編碼,而應存儲在安全的保險庫之中。
為降低此類風險,建議使用鎖定文件(lock files),為依賴項指定特定版本并且盡量減少依賴項的使用。
參考來源:https://www.bleepingcomputer.com/news/security/malicious-npm-packages-target-ethereum-developers-private-keys/