市值: $2.7727T 4.18%
體積(24小時): $112.9877B 43.32%
恐懼與貪婪指數:

73 - 貪婪

  • 市值: $2.7727T 4.18%
  • 體積(24小時): $112.9877B 43.32%
  • 恐懼與貪婪指數:
  • 市值: $2.7727T 4.18%
加密
主題
加密植物
資訊
加密術
影片
頂級加密植物

選擇語言

選擇語言

選擇貨幣

加密
主題
加密植物
資訊
加密術
影片

什麼是“重新進入攻擊”?

Re-entrancy attacks exploit unchecked external calls in smart contracts, allowing malicious actors to drain funds by recursively re-entering functions before state updates occur.

2025/09/04 07:18

了解區塊鏈的重新進入攻擊

1。重新進入攻擊是智能合約,尤其是以太坊區塊鏈中的關鍵安全漏洞。它利用在合同執行期間處理外部呼叫的方式,允許惡意合同在初始執行完成之前反復重新輸入弱勢函數。這種遞歸行為會意外耗盡資金或操縱狀態變量。

2。核心機制涉及呼叫合同,該合同在目標合同中調用功能,該函數在更新其內部狀態之前,通常會轉移資金。如果接收合同包含具有惡意邏輯的後備功能,則可以觸發另一個調用回到原始功能,創建一個循環。由於餘額或狀態尚未更新,因此每個重新進入支票並繼續撤回資金。

3。最臭名昭著的例子之一是2016年DAO HACK,由於重新進入缺陷,超過360萬ETH被虹吸。在將用戶的餘額設置為零之前,分散的自主組織的撤回功能已發送資金,從而使攻擊者能夠反复撤回相同的餘額。該活動導致以太坊網絡中的硬叉,並提高了對安全合同設計的認識。

4。現代發展實踐現在強調“檢查效應互動”模式,以防止這種攻擊。這種方法要求在任何外部功能調用之前,狀態更改(例如更新余額或所有權)。通過在交互前確保內部一致性,重新進入窗口有效地關閉。

5。堅固的語言級別保障措施,例如使用Openzeppelin圖書館的重新進入警衛,已成為標準。這些警衛使用類似靜音的機制來將功能標記為當前執行,從而阻止任何遞歸輸入嘗試。還鼓勵開發人員使用Pull-Over-over-Push付款模型,用戶啟動提款,而不是自動向他們推薦資金。

重新剝削的常見向量

1。對未知或未經信任的合同的外部呼叫是重新進入的主要切入點。當合同在另一個合同上調用功能(尤其是可以執行任意代碼的合同)時,它可能會陷入回調陷阱中。當所謂的合同受到攻擊者控制時,這尤其危險。

2。當合同收到以太時,後備並在以太坊智能合約中接收功能是自動觸發器。如果這些函數包含回到發件人中的邏輯,則可以利用狀態更新中的正時差距。攻擊者與這些功能的合同製定了專門旨在重新進入脆弱的撤回或轉移例程的合同。

3。跨功能重新輸入是另一個變體,其中重新輸入不在同一合同的不同功能範圍內。如果多個功能共享狀​​態並且缺乏適當的鎖定機制,則攻擊者可以在它們之間跳躍以保持不一致的狀態和提取價值。

4。分散融資(FEFI)方案的閃存貸款擴大了風險。攻擊者可以不用抵押品借入大筆款項,使用它們來操縱合同條件,並在一次交易中執行卸貨攻擊。借入的資金在最終確定之前償還,這使攻擊成本效益且難以通過經濟威懾。

5。經過審核的第三方圖書館或繼承的代碼可能會引入隱藏的再進入風險。即使主要邏輯顯得安全,依賴項也可能包含間接暴露的脆弱功能。這強調了對DEFI項目中全面審核和依賴跟踪的需求。

緩解策略和最佳實踐

1。執行檢查效應的互動模式是基本的。開發人員必須在任何外部呼叫之前確保所有狀態修改發生。例如,在發送資金之前降低用戶的餘額,消除了多次撤回相同餘額的可能性。

2。從受信任的庫中實現非倫敦修飾符增加了一層保護。這些修飾符使用布爾標誌在執行過程中鎖定功能,以防止遞歸調用。儘管不是萬無一失的,但它們對大多數已知的重新進入模式有效。

3。限制合同的以太或令牌的量可以減少潛在的損失。充當中介機構的合同應最大程度地減少基金的積累並鼓勵經常撤離。即使存在脆弱性,這也限制了攻擊者的利潤率。

4.專業安全公司的代碼審核至關重要。自動化工具(例如Slither或Mythril)可以檢測到重新進入模式,但是人類審查對於捕獲複雜的邏輯缺陷是必要的。同行評審和漏洞賞金計劃進一步加強了安全性。

5。使用暫停機制使用可升級的合同模式,使開發人員可以實時響應攻擊。儘管這引入了集中化風險,但在發現漏洞後,它提供了關鍵的應急選擇。

常見問題

是什麼觸發了智能合同中的重新進入攻擊?當合同在更新其內部狀態之前,合同對另一個合同進行外部呼叫時,會觸發重新進入攻擊。如果接收合同具有惡意的後備功能,則可以回到原始合同的功能,從而利用未完成的狀態更新。

可以在無法處理以太的合同中重新進入嗎?是的。儘管以太轉移是常見的向量,但對於令牌轉移或任何可以進行遞歸調用的合同的外部呼叫也可能發生重新進入。關鍵因素是狀態更新和外部交互的順序,而不是資產類型。

所有defi協議都容易受到重新置換的影響嗎?並非全部,但是許多早期的DEFI協議是。現代協議納入了重新進入警衛,並遵循安全的編碼實踐。但是,新的或未經審計的項目仍可能會帶來風險,尤其是當它們與傳統系統或不信任合同互動時。

Flash貸款如何實現重新進入攻擊? Flash貸款允許攻擊者在一次交易中藉用大量資產。他們使用這些資金來操縱合同狀態(例如流動性池),並在償還貸款之前觸發重新進入。這可以在沒有前期資本的情況下進行盈利攻擊。

免責聲明:info@kdj.com

所提供的資訊並非交易建議。 kDJ.com對任何基於本文提供的資訊進行的投資不承擔任何責任。加密貨幣波動性較大,建議您充分研究後謹慎投資!

如果您認為本網站使用的內容侵犯了您的版權,請立即聯絡我們(info@kdj.com),我們將及時刪除。

相關知識

什麼是 DAI?它與 USDT 有何不同?

什麼是 DAI?它與 USDT 有何不同?

2026-09-08 17:00:22

市場波動模式1. 自2021年以來,Bitcoin超過68%的交易日在24小時窗口內價格波動超過15%。 2. 在流動性較低的時期,尤其是在 02:00 至 06:00 UTC 期間,以太坊表現出比 Bitcoin 更高的日內波動性。 3. 穩定幣脫鉤事件(例如 2023 年 3 月的 USDC 事...

為什麼穩定幣會失去 1 美元的掛鉤?

為什麼穩定幣會失去 1 美元的掛鉤?

2026-09-08 02:00:03

儲備組成和透明度差距1. 許多穩定幣聲稱完全由現金或短期美國國債支持,但儲備揭露往往缺乏即時驗證機制。 2. 第三方證明可能僅每季進行一次,從而留下較長的窗口,使不匹配的資產負債結構仍未被發現。 3. 一些發行人持有的商業票據或逆回購協議存在未反映在公共資產負債表中的交易對手風險。 4. 鏈下銀行關...

什麼是加密貨幣中的自我託管以及為什麼它很重要?

什麼是加密貨幣中的自我託管以及為什麼它很重要?

2026-09-10 04:19:32

定義和核心機制1. 自我保管是指個人保留對其私鑰的完全控制權,而不將該權力委託給任何第三方服務的做法。 2. 自我託管錢包的伺服器上不持有資產;相反,它提供了一個使用本地儲存的加密金鑰與區塊鏈網路互動的介面。 3. 使用者的裝置(無論是智慧型手機、桌上型電腦或硬體模組)託管種子短語和私鑰,並且在正常...

託管錢包與非託管錢包:有什麼區別?

託管錢包與非託管錢包:有什麼區別?

2026-09-17 03:19:46

託管錢包定義1. 託管錢包是一種由第三方服務提供者持有和管理用戶私鑰的數位資產儲存解決方案。 2. 使用者透過電子郵件、密碼和雙重認證等登入憑證存取資金,而不是直接加密控制。 3. 簡化帳戶恢復-忘記密碼或失去裝置存取權限的使用者可以透過平台管理的身份驗證協定重新獲得存取權限。 4. 這些錢包通常作...

什麼是多重簽名錢包以及它何時有用?

什麼是多重簽名錢包以及它何時有用?

2026-09-12 14:20:01

定義及核心架構1. 多重簽章錢包是一種加密結構,需要多個私鑰來授權單一區塊鏈交易。 2. 它在M-of-N 簽章方案下運行,其中M表示所需的最小簽章數量, N表示授權簽章者的總數。 3. 每個簽署者產生獨立的金鑰對;他們的公鑰被共同嵌入到透過確定性雜湊導出的唯一鏈上位址中。 4. 沒有任何一個參與者...

Bitcoin 與閃電網路:有什麼不同?

Bitcoin 與閃電網路:有什麼不同?

2026-09-13 15:40:16

核心架構及交易模型1. Bitcoin 在單層、無需許可的區塊鏈上運行,其中每筆交易都經過加密驗證,在數千個全節點上傳播,並大約每十分鐘永久記錄在連續區塊中。 2. 閃電網絡作為直接建構在 Bitcoin 的 UTXO 模型之上的點對點覆蓋網絡,依賴於由時間鎖定、可撤銷的承諾交易強制執行的雙向支付通...

什麼是 DAI?它與 USDT 有何不同?

什麼是 DAI?它與 USDT 有何不同?

2026-09-08 17:00:22

市場波動模式1. 自2021年以來,Bitcoin超過68%的交易日在24小時窗口內價格波動超過15%。 2. 在流動性較低的時期,尤其是在 02:00 至 06:00 UTC 期間,以太坊表現出比 Bitcoin 更高的日內波動性。 3. 穩定幣脫鉤事件(例如 2023 年 3 月的 USDC 事...

為什麼穩定幣會失去 1 美元的掛鉤?

為什麼穩定幣會失去 1 美元的掛鉤?

2026-09-08 02:00:03

儲備組成和透明度差距1. 許多穩定幣聲稱完全由現金或短期美國國債支持,但儲備揭露往往缺乏即時驗證機制。 2. 第三方證明可能僅每季進行一次,從而留下較長的窗口,使不匹配的資產負債結構仍未被發現。 3. 一些發行人持有的商業票據或逆回購協議存在未反映在公共資產負債表中的交易對手風險。 4. 鏈下銀行關...

什麼是加密貨幣中的自我託管以及為什麼它很重要?

什麼是加密貨幣中的自我託管以及為什麼它很重要?

2026-09-10 04:19:32

定義和核心機制1. 自我保管是指個人保留對其私鑰的完全控制權,而不將該權力委託給任何第三方服務的做法。 2. 自我託管錢包的伺服器上不持有資產;相反,它提供了一個使用本地儲存的加密金鑰與區塊鏈網路互動的介面。 3. 使用者的裝置(無論是智慧型手機、桌上型電腦或硬體模組)託管種子短語和私鑰,並且在正常...

託管錢包與非託管錢包:有什麼區別?

託管錢包與非託管錢包:有什麼區別?

2026-09-17 03:19:46

託管錢包定義1. 託管錢包是一種由第三方服務提供者持有和管理用戶私鑰的數位資產儲存解決方案。 2. 使用者透過電子郵件、密碼和雙重認證等登入憑證存取資金,而不是直接加密控制。 3. 簡化帳戶恢復-忘記密碼或失去裝置存取權限的使用者可以透過平台管理的身份驗證協定重新獲得存取權限。 4. 這些錢包通常作...

什麼是多重簽名錢包以及它何時有用?

什麼是多重簽名錢包以及它何時有用?

2026-09-12 14:20:01

定義及核心架構1. 多重簽章錢包是一種加密結構,需要多個私鑰來授權單一區塊鏈交易。 2. 它在M-of-N 簽章方案下運行,其中M表示所需的最小簽章數量, N表示授權簽章者的總數。 3. 每個簽署者產生獨立的金鑰對;他們的公鑰被共同嵌入到透過確定性雜湊導出的唯一鏈上位址中。 4. 沒有任何一個參與者...

Bitcoin 與閃電網路:有什麼不同?

Bitcoin 與閃電網路:有什麼不同?

2026-09-13 15:40:16

核心架構及交易模型1. Bitcoin 在單層、無需許可的區塊鏈上運行,其中每筆交易都經過加密驗證,在數千個全節點上傳播,並大約每十分鐘永久記錄在連續區塊中。 2. 閃電網絡作為直接建構在 Bitcoin 的 UTXO 模型之上的點對點覆蓋網絡,依賴於由時間鎖定、可撤銷的承諾交易強制執行的雙向支付通...

看所有文章

User not found or password invalid

Your input is correct