目标:
编写一个具有明显漏洞的智能合约,攻击者发动攻击,同时锁定攻击者的资金。
预期的攻击者行为:
攻击者将发送0.1以太,以便从智能合约中获得所有资金。
步骤1:查找已验证的新创建的合同
攻击者将使用网络爬虫获取所有新创建的合同,并查看合同是否已经过验证。 一旦合同被验证,它将显示智能合约源代码。
步骤2:我们来做一个简单的数学计算
让我们回顾一下。
目前,Solidity不提供float / double数据类型。 因此,最好使用SafeMath来避免发生意外结果。
本文转载于公众号:区块链研究实验室