You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

测试赌博智能合约余额被盗,求助分析攻击方式与发现途径

攻击方式分析

这次攻击的核心问题是可预测的随机数生成逻辑,而非重入攻击:

  1. 你的合约随机数依赖block.timestamp、block.difficulty和msg.sender这些公开可预知的参数生成,攻击者可以提前计算出调用play函数时的随机数结果。
  2. 合约设定的赢面是49%(即随机数取模100后小于49即获胜),攻击者通过自己部署的合约发起调用,提前计算好满足获胜条件的时机,转入0.16 BNB后直接触发双倍返还,刚好取走合约全部0.32 BNB余额。
  3. 内部交易仅显示一次调用,没有重复触发的痕迹,排除重入攻击的可能——重入攻击通常会出现多次递归调用合约提取资金的记录。
攻击者发现合约的途径

即使合约仅部署12小时,依然会被自动化工具盯上,常见途径包括:

  • 链上新合约监控机器人:这类工具会实时监听链上所有新部署的合约,通过分析字节码中的函数名(如play、withdraw)或支付逻辑,筛选出带有赌博、奖励机制的合约,尤其是测试阶段的合约往往漏洞明显。
  • 余额变化监控:当你向合约转入BNB并产生测试交易后,合约的余额变化会被机器人捕捉,标记为有可窃取资金的潜在目标。
  • 开源合约漏洞扫描:你的合约是开源状态,自动化扫描工具会直接分析代码中的漏洞(比如可预测随机数),一旦发现就自动发起攻击。

内容的提问来源于stack exchange,提问作者bitsatan1010011010

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.19 22:30:16