買比特幣 買比特幣
Ctrl+D 買比特幣
ads

DAO:智能合約中的重入攻擊_ETH

Author:

Time:1900/1/1 0:00:00

智能合約是一種旨在以信息化方式傳播、驗證或執行合同的計算機協議。智能合約允許在沒有第三方的情況下進行可信交易,這些交易可追蹤且不可逆轉。智能合約概念于1995年由NickSzabo首次提出。智能合約的目的是提供優于傳統合約的安全方法,并減少與合約相關的其他交易成本。

漏洞概述:

因為以太坊智能合約中是可以調用外部的合約代碼,外部合約可能是攻擊者構造的惡意不安全的合約代碼,當在轉賬操作時執行代碼,迫使攻擊的合約回調包括自身的代碼,和繞過源代碼的限制發生了重入攻擊事件。

發生重入攻擊漏洞有兩個原因:

多個DeFi項目發布8.11預告推文,明日或將有Linea相關重要消息發布:8月10日消息,多個DeFi項目在社交媒體上同時發布“11.08.23”配圖推文,圖片中存在較為明顯的Linea Logo元素,或為預告明日將有Linea相關重要消息發布。[2023/8/10 16:18:41]

1.?調用了外面不安全的合約代碼

2.?外部合約的函數早于狀態變量的修改

Arbitrum社區發起“將部分DAO收入分配給ARB持有者”的提案:5月12日消息,治理頁面顯示,ArbitrumDAO正在討論一項“將部分DAO收入分配給ARB代幣持有者”的提案,這將調整社區激勵措施,并賦予ARB超越治理代幣的目的。根據該提案,正如Arbitrum最近的推文所述,DAO從L2基礎費用和盈余費用中積累了約3352ETH的收入,收入分配將與每個持有人委托的ARB代幣數量成正比,未來可以定期觸發分配,以確保及時為社區提供獎勵。[2023/5/12 14:59:16]

漏洞分析:

Fahrenheit Holdings希望購買Celsius資產:金色財經報道,商業咨詢服務公司 Fahrenheit Holdings 希望購買 Celsius 資產,Fahrenheit Holdings表示,唯一的目標是增加這些資產,使利益相關者變得完整。[2023/4/23 14:22:09]

看withdraw函數,我們可以看到它接收了一個_amount參數,將其與發送者的balance進行比較,不超過發送者的balance就將這些_amount發送給sender,同時我們注意到這里它用來發送ether的函數是call.value,發送完成后,它才在下面更新了sender的balances,這里就是可重入攻擊的關鍵所在了,因為該函數在發送ether后才更新余額,所以我們可以想辦法讓它卡在call.value這里不斷給我們發送ether,同樣利用的是我們熟悉的fallback函數來實現。

PeckShield:XCarnival攻擊者疑似返還1467枚ETH:6月27日消息,派盾(PeckShield)監測顯示,XCarnival攻擊者疑似已返還1467枚ETH。

今晨報道,XCarnival表示(在攻擊者退還盜取資金的前提下)將給予攻擊者(0xb7CBB4d43F1e08327A90B32A8417688C9D0B800a)1500枚ETH的賞金,并明確免除對此人的法律訴訟。[2022/6/27 1:33:54]

當然,這里還有另外一個關鍵的地方——call.value函數特性,當我們使用call.value()來調用代碼時,執行的代碼會被賦予賬戶所有可用的gas,這樣就能保證我們的fallback函數能被順利執行,對應的,如果我們使用transfer和send函數來發送時,代碼可用的gas僅有2300而已,這點gas可能僅僅只夠捕獲一個event,所以也將無法進行可重入攻擊,因為send本來就是transfer的底層實現,所以他兩性質也差不多。

2016年6月以太幣組織TheDAO被攻擊,攻擊者利用兩個代碼漏洞創建子合約提取了360萬個以太幣。接下來我們簡單說一下這個事件

攻擊者利用the?DAO函數智能合約中splitDAO()函數,重復對DAO資產進行重入攻擊,不斷從項目的資產里面分離出DAO資產并轉移到自己的賬戶中

1.?創建錢包,調用splitDAO函數

2.?創建一個分割提案到一個新的錢包地址

3.?等待再調用splitDAO函數

4.?成功獲取了ether

?解決方法:

1.?使用其他轉賬函數

進行以太坊轉賬時發送給外部地址時使用Solidity的內置函數,這將不足以調用另一份合約.

2.?先修改狀態變量

這種方式就是確保狀態變量的修改要早于轉賬操作,即Solidity官方推薦的檢查-生效-交互模式(checks-effects-interactions)。

1.?使用互斥鎖

互斥鎖就是添加一個在代碼執行過程中鎖定合約的狀態變量以防止重入攻擊。

2.?使用OpenZeppelin官方庫

OpenZeppelin官方庫中有一個專門針對重入攻擊的安全合約

??本文作者:權星實驗室團隊

來源:金色財經

Tags:DAOETHVALARBfacedao幣價格eth學校VAL價格arb幣前景怎么樣

芝麻開門交易所下載
SHI:從基本面分析看GHC憑什么復制Shib百萬倍的神話?(一)_GHC

????首先讓我們來看看GHC和Shib有什么異同: Shib的發展歷程回顧 ???SHIB的匿名項目方曾將總供應量的50%發送給了以太坊的聯合創始人V神???馬斯克在Twitter發文:正在尋.

1900/1/1 0:00:00
NFT:證券時報 | NFT應用前景廣闊 但需去偽存真_yac幣是區塊鏈嗎

近日,沐瞳科技旗下游戲《無盡對決》的NFT以盲盒形式在海外發售,上架僅僅2分鐘后,這些盲盒便被搶購一空。而在1月1日,周杰倫主理的某潮牌宣布發售“幻想熊”NFT產品,不到1小時便告售罄.

1900/1/1 0:00:00
DEF:2022年 , 關于DAO的機會與展望_DEFI

DAO也是讓我感慨良多的一個領域。早在2019年參加在北京舉辦的以太坊開發者大會時,我就曾經思考過關于DAO的發展。那時之所以想到DAO主要原因是由于當時我對初露苗頭的DeFi應用不太看好.

1900/1/1 0:00:00
SAN:1-25日以太坊大餅今日走勢解析高點和低位_SAND

?大家好,目前以太坊實時價格為2391,大餅36150;行情都有逐步回升的跡象,但是根據K線形態提示,以太坊和大餅每次回升時出現橫盤現象比較明顯.

1900/1/1 0:00:00
加密貨幣:比特幣將跌破3萬?是末日來臨還是黎明前的黑暗?_加密貨幣軟件

比特幣將跌破3萬美元? 最近,比特幣行情表現不容可樂觀:連續三天呈下跌狀態,最低價格至41138美元,為6天以來的新低。與此同時,加密貨幣行情整體下跌趨勢明顯,ETH三連跌,最低至3040美元.

1900/1/1 0:00:00
MAN:PDD跨鏈布局NFT,元宇宙玩法多樣化_Tezos

導語:NFT在2021年實現了爆炸性的增長,當下就連主流的傳統資本也開始擁抱NFT熱潮,尤其在Web3.0進入大眾視野并成為流行詞匯后,各方熱點的協同作用將加密行業提升至新的高度.

1900/1/1 0:00:00
ads