
本文來自BlockSec本文來自
8 月12 日,根據DAO Maker 電報群用戶反饋,該項目疑似遭到黑客攻擊,價值700 萬美元的USDC 被黑客提取至未知地址。 BlockSec 團隊經過分析後發現,該事件的起因是私鑰洩露或者內部人士所為。
二級標題
二級標題
二級標題
0x26aa86261c834e837f6be93b2d589724ed5ae644bc8f4b8af2207e6bd70828f9
根據我們的交易分析系統(https://tx.blocksecteam.com)我們發現,攻擊的過程非常簡單。
涉及到的地址:
攻擊交易的hash 是:
涉及到的地址:
0x41b856701bb8c24cece2af10651bfafebb57cf49:受害者錢包;
0x1c93290202424902a5e708b95f4ba23a3f2f3cee:XXX,攻擊者合約;
0x0eba461d9829c4e464a68d4857350476cfb6f559:中間人;
0x054e71d5f096a0761dba7dbe5cec5e2bf898971c:受害合約創建者(也是攻擊者)。
攻擊者XXX (0x1c93290202424902a5e708b95f4ba23a3f2f3cee)調用受害者錢包合約(0x41b856701bb8c24cece2af10651bfafebb57cf49)的函數查詢用戶餘額,然後調用withdrawFromUser 將錢轉到自己的賬戶。攻擊完成。由於轉賬的操作是一個特權操作,因此通常需要對調用者的身份做校驗。我們通過分析發現,攻擊者確實具有相應的權限來將受害者錢包中的餘額轉出。
這裡的問題就變成為什麼攻擊者能具有相應的權限?通過進一步分析我們發現另外一筆交易。這一筆交易將攻擊者賦予具有轉賬的權限。交易trace 如下:0x2fba930502d27f9c9a2f2b9337a0149534dda7527029645752b2a6507ca6b0d6。
0x0eba461d9829c4e464a68d4857350476cfb6f559 調用受害者合約的grantRole 函數將攻擊者0x1c93 賦予具有轉賬的權限。但是能調用grantRole 賦予其他賬戶權限,那麼0x0eba4 必須具有admin 的權限。那麼他的admin 權限是誰授予的呢?
二級標題
二級標題
其他
其他
二級標題