有些人总喜欢玩触发时生成随机数的玩法,那就别怪别人玩输的吃土了。本文是 RACA 盲盒被人用智能合约输的吃土玩成明盒的事故复盘。事故现场BSCScan发生了啥由于 RACA 的智能合约在开盲盒的时候才决定盲盒内容(自己用 Panoramix 看), 因此我们的攻击者搞了个非常简单的办法弄死了这个盲盒:只要不断的开盒,大奖就会在眼前延伸,不要停下来啊!具体代码def unknown3829d282(uint256 _param1): # not payable require calldata.size - >=′ 32 if not stor1[caller]: revert with 0, 'white only' # 限制只有白名单里的人能用这合约 require ext_code.size(0x4eb7ddd1b0103349fd289c5a4e4b95a0cc68d19e) call 0x4eb7ddd1b0103349fd289c5a4e4b95a0cc68d19e.open(uint256 param1) with: # 开盒合约 gas gas_remaining ...