1、前言
北京時間3月5日,知道創宇區塊鏈安全實驗室監測到BaconProtocol遭受黑客攻擊損失約958,166美元,本次攻擊利用重入漏洞,并憑借閃電貸擴大收益額。目前攻擊者地址還沒有被加入USDC的黑名單中。
2、分析
攻擊事件如下圖所示,該次攻擊事件的問題點在于lend()函數,攻擊者利用該函數進行重入攻擊。
2.1基礎信息
攻擊合約:0x580cac65c2620d194371ef29eb887a7d8dcc91bf
攻擊者地址:0x7c42f2a7d9ad01294ecef9be1e38272c84607593
攻擊tx:0x7d2296bcb936aa5e2397ddf8ccba59f54a178c3901666b49291d880369dbcf31
印度電信巨頭Bharti Airtel收購區塊鏈技術初創公司Aqilliz戰略股份:2月24日,印度電信巨頭Bharti Airtel宣布已經收購了區塊鏈初創公司Aqilliz的戰略股份,具體財務細節未透露。Airtel的目標是在其快速增長的廣告技術(Airtel Ads)、數字娛樂(Wynk Music和Airtel Xstream)和數字市場(Airtel Thanks App)產品中大規模地部署Aqilliz的區塊鏈技術。(NDTV)[2022/2/24 10:13:22]
漏洞合約:0x781ad73f140815763d9A4D4752DAf9203361D07D
2.2流程
1.攻擊者通過UniswapV2閃電貸借出6,360,000USDC。
2.用閃電貸借出的6,360,000USDC分成3份,去bHOME中進行2次重入攻擊調用了3次lend()函數鑄造共8,465,943.180104bHOME。
BHEX上線ROCKS、LEASH交易:據官方公告,BHEX于今日17:00(UTC+8)上線ROCKS(ROCKI)、LEASH,并開通ROCKS/USDT、LEASH/USDT交易對,充值已開啟。截至快訊時間,LEASH 24小時最高漲幅達9400%,當前價格為7600美元;ROCKS24小時最高漲幅達3800%,當前價格為3.9美元。
風險提示:以上幣種價格可能劇烈波動,注意控制交易風險。[2021/5/11 21:48:53]
3.將剛才重入獲得的bHOME拿去銷毀贖回獲得7,336,924.998USDC。
4、歸還閃電貸借出的6,360,000USDC,并支付19,716的手續費,最后將剩余的957,208.998USDC轉入自己的賬戶。
比特硬幣BHD將于4月22日18:00上線火幣礦池合作挖礦:據火幣礦池公告,比特硬幣BHD將于新加坡時間2020年4月22日18:00上線火幣礦池HPT鎖倉挖礦。火幣礦池可以實現一鍵雙挖獲得雙重收益,用戶參與鎖倉挖礦不僅可以獲得HPT收益,同時還能夠享有HPT權益獎勵。BHD是新一代基于POC容量證明挖礦的加密貨幣。[2020/4/21]
2.3細節
該次攻擊事件重點在于lend()函數,由于合約https://etherscan.io/address/0x781ad73f140815763d9a4d4752daf9203361d07d#code并未驗證開源,所以我們只能從交易的Debugger中尋找線索。
1、攻擊者通過UniswapV2閃電貸借出6,360,000USDC。
HBTC霍比特(原BHEX交易所)創始人巨建華公布全新平臺通證HBC:今日,HBTC霍比特(原BHEX交易所)創始人巨建華在2周年發布會上公布HBTC霍比特全新升級的通證模型HBC。
巨建華表示:“HBC是HBTC霍比特交易平臺發行的區塊鏈通證,是前BHEX交易平臺通證BHT的升級Pro版。HBC代表了HBTC霍比特交易平臺、 HBTC Chain、幣核云 BlueHelix Cloud 三大業務的核心權益。”
據悉,獲得HBC的方式包括:BHT持幣用戶通過HBTC霍比特官網接下來開放的為期半年的兌換窗口進行兌換;HBC正式上線一定期內,用戶在HBTC霍比特交易平臺通過幣幣、合約、期權交易產生手續費后,系統會等比例贈送HBC,直到活動贈送額度用完。[2020/4/17]
2、用閃電貸借出的6,360,000USDC分成3份,去bHOME中進行重入攻擊2次調用lend()函數鑄造共8,465,943.180104bHOME。
聲音 | BHEX副總裁白洋:將盡快推出BSV等其他相對小眾但適應市場需求的合約對:今日,BHEX副總裁在做客合約交易社區合約帝時表示,BHEX會在保障主流品種正反向合約深度和體驗的基礎上,盡快推出如BSV等其他相對小眾但適應市場需求的合約對。
同時,白洋指出,目前合約市場白熱化階段,BHEX除了具備API系統穩定、不犯錯、合約深度等硬性要求外,高速度、強穩定、豐富的功能、齊全的訂單類型也能完全滿足用戶大量采用高頻高換手策略。[2020/2/21]
3、將剛才重入獲得的bHOME拿去銷毀贖回獲得7,336,924.998USDC。
4、歸還閃電貸借出的6,360,000USDC,并支付19,716的手續費,最后將剩余的957,208.998USDC轉入自己的賬戶。
2.3細節
該次攻擊事件重點在于lend()函數,由于合約https://etherscan.io/address/0x781ad73f140815763d9a4d4752daf9203361d07d#code并未驗證開源,所以我們只能從交易的Debugger中尋找線索。
分析Debugger可以看到下圖是第一次調用函數,接著進行了2次重入。
從重入攻擊中可以找到INPUT中調用函數的字節碼為0xa6aa57ce。
通過字節簽名可以知道重入攻擊調用的是lend()函數。
從Debugger中我們可以發現攻擊合約的地址0x781ad73f140815763d9a4d4752daf9203361d07d。
通過反編譯合約0x781ad73f140815763d9a4d4752daf9203361d07d得到合約偽代碼內容,可以找到lend()函數。
我們在反編譯的代碼中可以看到該合約使用的ERC777協議,會查詢recipient的回調合約并回調tokensReceived()函數用以重入攻擊。
通過分析可以發現_index就是傳入的USDC數量。
totalSupply和balanceOf的增量都和_index是正比關系,和stor104是反比關系,并且這兩個變量的更新發生在重入攻擊之前,每次都會更新。
stor104記錄的是用戶存入的USDC總量,該變量的更新發生在重入之后,那么在重入的過程中stor104的值是不變的,而上面的totalSupply是在變大,所以最后return的值也會相應的增大,從而使得攻擊者通過重入攻擊鑄造得到比正常邏輯更多的bHOME代幣。
除了該次攻擊事件,BlockSecTeam還阻斷了后面發生的攻擊并將金額返還給了項目方。
交易hash:0xf3bd801f5a75ec8177af654374f2901b5ad928abcc0a99432fb5a20981e7bbd1
3、總結
此次攻擊事件是由于項目方使用了ERC777協議但沒有對回調合約的安全性進行考慮從而導致了重入攻擊的發生,當項目合約有涉及資產的轉移時,建議使用「檢查-生效-交互」模式來保證邏輯代碼的安全,當然我們也可以使用OpenZeppelin官方提供的ReentrancyGuard修飾器來防止重入攻擊的發生。
DEX市場規模正在以驚人的速度增長,今年1月其總成交量達1286億美元,對比去年同期增長1.4倍;而在2020年1月這一數字僅為6億美元,歷史以跳躍的形式向前推進.
1900/1/1 0:00:00印度周二提議對加密貨幣和NFT等虛擬數字資產的轉讓收入征收30%的稅。政府官員表示,此舉是希望利用高額稅率有效消除有關加密貨幣交易法律地位的不確定性.
1900/1/1 0:00:001、 據BTC.com數據,在哈薩克斯坦恢復網絡后,近三日比特幣挖礦全網算力已經超過200EH/s,達到歷史新高。此前外界普遍預計,2022年比特幣全網算力將達到300EH/s.
1900/1/1 0:00:00許多NFT和DAO旨在提供新的或更方便的方式來擁有和銷售創意作品。Beeple的NFT作品“EVERYDAYS:TheFirst5000Days”在拍賣會上以6900萬美元的價格售出.
1900/1/1 0:00:00Polkadot生態研究院出品,必屬精品波卡一周觀察,是我們針對波卡整個生態在上一周所發生的事情的一個梳理,同時也會以白話的形式分享一些我們對這些事件的觀察.
1900/1/1 0:00:00Mar.2022,GraceDataSource:FootprintAnalytics區塊鏈中的新項目層出不窮,雖然是一片藍海但成功的仍然是少數.
1900/1/1 0:00:00