-
bitcoin $77323.969542 USD
0.01% -
ethereum $2523.414850 USD
2.23% -
tether $0.999674 USD
0.01% -
bnb $732.334794 USD
2.37% -
xrp $1.364311 USD
0.51% -
usd-coin $0.999831 USD
0.00% -
solana $101.751035 USD
1.88% -
tron $0.339246 USD
0.15% -
hyperliquid $78.911101 USD
-1.42% -
zcash $1143.169120 USD
2.95% -
dogecoin $0.084522 USD
0.58% -
monero $539.820025 USD
5.75% -
chainlink $11.538258 USD
0.03% -
unus-sed-leo $9.111763 USD
0.28% -
cardano $0.208079 USD
-0.46%
什么是“重新进入攻击”?
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),我们将及时删除。
- CPEN Network Ink 代币:深入探讨移动挖矿、代币经济及其不断发展的遗产
- 2026-09-12 16:35:02
- XRP 投资者在市场不确定性和重大经济事件中面临关键决策
- 2026-09-12 16:40:01
- 在市场波动中,以太坊鲸鱼推动 ETH 飙升至 8 个月高位
- 2026-09-12 16:35:02
- sUSDe 收益率、Aave 借款利率和 USDe 循环:在 DeFi 的“大苹果”中走钢丝
- 2026-09-12 12:45:01
- USDC Bridge CCTP、稳定币链变、Bridge 关闭:引领跨链转账新时代
- 2026-09-12 12:45:01
- 在投资者强烈抗议和激励计划撤回之际,Metaplanet 将高管股份削减 41.1%
- 2026-09-12 12:35:02
相关百科
什么是 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 美元的挂钩?
2026-09-08 02:00:03
储备构成和透明度差距1. 许多稳定币声称完全由现金或短期美国国债支持,但储备披露往往缺乏实时验证机制。 2. 第三方证明可能仅每季度进行一次,从而留下较长的窗口,使不匹配的资产负债结构仍未被发现。 3. 一些发行人持有的商业票据或逆回购协议存在未反映在公共资产负债表中的交易对手风险。 4. 链下银行...
什么是加密货币中的自我托管以及为什么它很重要?
2026-09-10 04:19:32
定义和核心机制1. 自我保管是指个人保留对其私钥的完全控制权,而不将该权力委托给任何第三方服务的做法。 2. 自我托管钱包的服务器上不持有资产;相反,它提供了一个使用本地存储的加密密钥与区块链网络交互的接口。 3. 用户的设备(无论是智能手机、台式机还是硬件模块)托管种子短语和私钥,并且在正常操作期...
什么是多重签名钱包以及它何时有用?
2026-09-12 14:20:01
定义及核心架构1. 多重签名钱包是一种加密结构,需要多个私钥来授权单个区块链交易。 2. 它在M-of-N 签名方案下运行,其中M表示所需的最小签名数量, N表示授权签名者的总数。 3. 每个签名者生成独立的密钥对;他们的公钥被共同嵌入到通过确定性散列导出的唯一链上地址中。 4. 没有任何一个参与者...
什么是闪电网络? Bitcoin 交易如何变得更快?
2026-09-08 07:00:16
闪电网络核心架构1. 闪电网络作为直接构建在 Bitcoin 区块链之上的第二层协议运行,完全依赖 Bitcoin 的加密安全模型,无需引入新的共识规则。 2. 使用2-of-2多重签名地址在参与者之间构建双向支付通道,双方必须共同签名才能将资金移出通道。 3. 每个通道都通过链上融资交易进行初始化...
什么是 Taproot 升级以及为什么 Bitcoin 需要它?
2026-09-12 10:40:03
主根激活机制1. Taproot 于 2021 年 11 月 12 日在区块高度 709632 激活,遵循软分叉共识机制,要求 90% 的矿工在 3,024 个区块的难度调整期内发出信号。 2. 升级引入了版本 1 见证输出,取代了之前在 P2WPKH 和 P2WSH 交易中使用的版本 0 隔离见证...
什么是 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 美元的挂钩?
2026-09-08 02:00:03
储备构成和透明度差距1. 许多稳定币声称完全由现金或短期美国国债支持,但储备披露往往缺乏实时验证机制。 2. 第三方证明可能仅每季度进行一次,从而留下较长的窗口,使不匹配的资产负债结构仍未被发现。 3. 一些发行人持有的商业票据或逆回购协议存在未反映在公共资产负债表中的交易对手风险。 4. 链下银行...
什么是加密货币中的自我托管以及为什么它很重要?
2026-09-10 04:19:32
定义和核心机制1. 自我保管是指个人保留对其私钥的完全控制权,而不将该权力委托给任何第三方服务的做法。 2. 自我托管钱包的服务器上不持有资产;相反,它提供了一个使用本地存储的加密密钥与区块链网络交互的接口。 3. 用户的设备(无论是智能手机、台式机还是硬件模块)托管种子短语和私钥,并且在正常操作期...
什么是多重签名钱包以及它何时有用?
2026-09-12 14:20:01
定义及核心架构1. 多重签名钱包是一种加密结构,需要多个私钥来授权单个区块链交易。 2. 它在M-of-N 签名方案下运行,其中M表示所需的最小签名数量, N表示授权签名者的总数。 3. 每个签名者生成独立的密钥对;他们的公钥被共同嵌入到通过确定性散列导出的唯一链上地址中。 4. 没有任何一个参与者...
什么是闪电网络? Bitcoin 交易如何变得更快?
2026-09-08 07:00:16
闪电网络核心架构1. 闪电网络作为直接构建在 Bitcoin 区块链之上的第二层协议运行,完全依赖 Bitcoin 的加密安全模型,无需引入新的共识规则。 2. 使用2-of-2多重签名地址在参与者之间构建双向支付通道,双方必须共同签名才能将资金移出通道。 3. 每个通道都通过链上融资交易进行初始化...
什么是 Taproot 升级以及为什么 Bitcoin 需要它?
2026-09-12 10:40:03
主根激活机制1. Taproot 于 2021 年 11 月 12 日在区块高度 709632 激活,遵循软分叉共识机制,要求 90% 的矿工在 3,024 个区块的难度调整期内发出信号。 2. 升级引入了版本 1 见证输出,取代了之前在 P2WPKH 和 P2WSH 交易中使用的版本 0 隔离见证...
查看所有文章














