價值近一億美元,Harmony巨額加密貨幣資產失竊
前幾日,有黑客從區塊鏈公司Harmony竊取了價值近一億美元的加密貨幣。事情發生后,Harmony承諾,若攻擊者歸還資金并分享漏洞利用信息,將提供100萬美元的賞金,并表示不會提出刑事指控。
Harmony的事件響應團隊宣布,它沒有發現任何關于公司智能合約代碼的違規行為或平臺漏洞的跡象。Harmony表示Harmony區塊鏈的共識層仍然是安全的。
經調查,事件響應團隊發現了私鑰被泄露的證據。攻擊者通過以某種方式控制MultiSigWallet的所有者直接調用confirmTransaction()從Harmony轉移了大量代幣(包括ETH、USDC、WBTC、USDT、DAI、BUSD、AAG、FXS、SUSHI、AAVE、WETH和FRAX,價值從49178美元到41200000美元不等),導致Harmony鏈上總共損失了價值約9700萬美元的資產。最后,所有資產都被交易到以太坊,目前仍保留在以太坊網絡上的攻擊者帳戶中。攻擊者目前尚未采取任何措施來清洗這些資產。
區塊鏈安全公司Certik發布了對這一事件的詳細分析,它證實攻擊者能夠控制multiSig錢包所有者的權限,然后從Harmony中竊取資金。
Certik以涉及13100枚ETH的第一個漏洞利用交易為例。
1、MultiSigWallet 合約的所有者調用 submitTransaction() 函數來提交具有以下有效負載的交易,生成交易ID
21106。


2、要確認交易,調用方必須是所有者。
3、接下來,在漏洞利用交易中,MultiSigWallet 合約的所有者從MultiSigWallet輸入交易 Id 21106調用函數 confirmTransaction()。

4、若要成功執行交易,調用方必須是所有者。

5、executeTransaction()
函數輸入數據調用一個外部調用,該調用將觸發 Ethmanager 合約上的unlockEth() 函數。


6、輸入數據指定即將傳遞給unlockEth() 函數的金額、接收人和接收Id。

7、由于攻擊者以某種方式控制了所有者的權限,攻擊者能夠使用id 21106執行交易,從而將13100枚以太幣轉移到攻擊者的地址。
8、攻擊者在其他ERC20Manager合約上使用不同的交易ID重復了前面的過程,以轉移大量的ERC20代幣和穩定幣。
Harmony公司已向當局報告了這一事件,美國聯邦調查局正在幾家網絡安全公司的幫助下進行調查。
資訊來源:certik
轉載請注明出處和本文鏈接
每日漲知識
彩虹表(Rainbow tables)
一個龐大的、針對各種可能的字母組合預先計算好的哈希值的集合,常用來破解md5。