At present, millions of Ethereum smart contracts are created per year and attract financially motivated attackers. However, existing analyzers do not meet the need to precisely analyze the financial security of large numbers of contracts. In this paper, we propose and implement FASVERIF, an automated analyzer for fine-grained analysis of smart contracts' financial security. On the one hand, FASVERIF automatically generates models to be verified against security properties of smart contracts. On the other hand, our analyzer automatically generates the security properties, which is different from existing formal verifiers for smart contracts. As a result, FASVERIF can automatically process source code of smart contracts, and uses formal methods whenever possible to simultaneously maximize its accuracy. We evaluate FASVERIF on a vulnerabilities dataset by comparing it with other automatic tools. Our evaluation shows that FASVERIF greatly outperforms the representative tools using different technologies, with respect to accuracy and coverage of types of vulnerabilities.
翻译:目前,每年创建数百万个以太坊智能合约并吸引有经济动机的攻击者。然而,现有的分析工具不能准确地分析大量智能合约的金融安全性能。本文提出并实现了FASVERIF,一种针对智能合约金融安全性的自动化细粒度分析器。一方面,FASVERIF自动生成要针对智能合约的安全属性进行验证的模型;另一方面,我们的分析器自动生成安全属性,这与现有的智能合约形式验证器不同。因此,FASVERIF可以自动处理智能合约的源代码,并在可能的情况下同时使用形式方法来最大化其准确性。我们利用漏洞数据集对FASVERIF进行评估,将其与其他自动工具进行比较。我们的评估显示,FASVERIF在准确性和漏洞类型覆盖方面大大优于使用不同技术的代表性工具。