基于语义增强SAT评估的智能合约重入漏洞检测

IF 5.7 2区 计算机科学 Q1 COMPUTER SCIENCE, HARDWARE & ARCHITECTURE
Long He;Xiangfu Zhao;Yichen Wang
{"title":"基于语义增强SAT评估的智能合约重入漏洞检测","authors":"Long He;Xiangfu Zhao;Yichen Wang","doi":"10.1109/TR.2024.3488814","DOIUrl":null,"url":null,"abstract":"Reentrancy, a specific vulnerability in smart contracts, frequently leads to security incidents. However, existing detection tools encounter challenges related to low precision, limited mainly by eight typical false positive (FP) types. To address these challenges, we proposed enriching the control flow to construct a constraint reentrancy control flow graph (CRCFG) at the source code level. The CRCFG includes specific control flows interacting with attackers and corresponding constraint relationships. This enhancement facilitates modeling of the reentrancy process and leverages Boolean satisfiability (SAT) solvers for vulnerability detection, thereby enhancing the precision of the detection. Specifically, first, we present the concepts of five different kinds of basic blocks to build a CRCFG. Then, we encode the CRCFG by converting it into a conjunctive normal form file. Finally, we call a SAT solver to examine all scenarios in the CRCFG and determine the presence of reentrancy vulnerabilities. Based on the above-mentioned steps, we developed a tool, ReenSAT, to detect reentrancy vulnerabilities. We conducted experiments on a verified real-world dataset. Experimental results show that ReenSAT outperforms state-of-the-art tools by an impressive <bold>34.72%</b> in precision, while effectively addressing eight typical types of false positives within these tools. In addition, when processing complex large contract datasets, ReenSAT's vulnerability detection efficiency outperforms that of most state-of-the-art tools.","PeriodicalId":56305,"journal":{"name":"IEEE Transactions on Reliability","volume":"74 2","pages":"2708-2722"},"PeriodicalIF":5.7000,"publicationDate":"2024-11-13","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"ReenSAT: Reentrancy Vulnerability Detection in Smart Contracts Using Semantic-Enhanced SAT Evaluation\",\"authors\":\"Long He;Xiangfu Zhao;Yichen Wang\",\"doi\":\"10.1109/TR.2024.3488814\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Reentrancy, a specific vulnerability in smart contracts, frequently leads to security incidents. However, existing detection tools encounter challenges related to low precision, limited mainly by eight typical false positive (FP) types. To address these challenges, we proposed enriching the control flow to construct a constraint reentrancy control flow graph (CRCFG) at the source code level. The CRCFG includes specific control flows interacting with attackers and corresponding constraint relationships. This enhancement facilitates modeling of the reentrancy process and leverages Boolean satisfiability (SAT) solvers for vulnerability detection, thereby enhancing the precision of the detection. Specifically, first, we present the concepts of five different kinds of basic blocks to build a CRCFG. Then, we encode the CRCFG by converting it into a conjunctive normal form file. Finally, we call a SAT solver to examine all scenarios in the CRCFG and determine the presence of reentrancy vulnerabilities. Based on the above-mentioned steps, we developed a tool, ReenSAT, to detect reentrancy vulnerabilities. We conducted experiments on a verified real-world dataset. Experimental results show that ReenSAT outperforms state-of-the-art tools by an impressive <bold>34.72%</b> in precision, while effectively addressing eight typical types of false positives within these tools. In addition, when processing complex large contract datasets, ReenSAT's vulnerability detection efficiency outperforms that of most state-of-the-art tools.\",\"PeriodicalId\":56305,\"journal\":{\"name\":\"IEEE Transactions on Reliability\",\"volume\":\"74 2\",\"pages\":\"2708-2722\"},\"PeriodicalIF\":5.7000,\"publicationDate\":\"2024-11-13\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"IEEE Transactions on Reliability\",\"FirstCategoryId\":\"94\",\"ListUrlMain\":\"https://ieeexplore.ieee.org/document/10752786/\",\"RegionNum\":2,\"RegionCategory\":\"计算机科学\",\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"Q1\",\"JCRName\":\"COMPUTER SCIENCE, HARDWARE & ARCHITECTURE\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"IEEE Transactions on Reliability","FirstCategoryId":"94","ListUrlMain":"https://ieeexplore.ieee.org/document/10752786/","RegionNum":2,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q1","JCRName":"COMPUTER SCIENCE, HARDWARE & ARCHITECTURE","Score":null,"Total":0}
引用次数: 0

摘要

可重入性是智能合约中的一个特定漏洞,经常导致安全事件。然而,现有的检测工具面临着精度低的挑战,主要受到八种典型假阳性(FP)类型的限制。为了解决这些挑战,我们提出在源代码级别丰富控制流以构建约束重入控制流图(CRCFG)。CRCFG包括与攻击者交互的特定控制流和相应的约束关系。这种增强简化了重入过程的建模,并利用布尔可满足性(SAT)求解器进行漏洞检测,从而提高了检测的精度。具体来说,首先,我们提出了构建CRCFG的五种不同类型的基本块的概念。然后,我们通过将CRCFG转换为合取格式文件对其进行编码。最后,我们调用SAT求解器来检查CRCFG中的所有场景并确定是否存在重入漏洞。基于上述步骤,我们开发了一个工具ReenSAT来检测重入漏洞。我们在经过验证的真实数据集上进行了实验。实验结果表明,ReenSAT的精度比最先进的工具高出34.72%,同时有效地解决了这些工具中8种典型的误报类型。此外,在处理复杂的大型合同数据集时,ReenSAT的漏洞检测效率优于大多数最先进的工具。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
ReenSAT: Reentrancy Vulnerability Detection in Smart Contracts Using Semantic-Enhanced SAT Evaluation
Reentrancy, a specific vulnerability in smart contracts, frequently leads to security incidents. However, existing detection tools encounter challenges related to low precision, limited mainly by eight typical false positive (FP) types. To address these challenges, we proposed enriching the control flow to construct a constraint reentrancy control flow graph (CRCFG) at the source code level. The CRCFG includes specific control flows interacting with attackers and corresponding constraint relationships. This enhancement facilitates modeling of the reentrancy process and leverages Boolean satisfiability (SAT) solvers for vulnerability detection, thereby enhancing the precision of the detection. Specifically, first, we present the concepts of five different kinds of basic blocks to build a CRCFG. Then, we encode the CRCFG by converting it into a conjunctive normal form file. Finally, we call a SAT solver to examine all scenarios in the CRCFG and determine the presence of reentrancy vulnerabilities. Based on the above-mentioned steps, we developed a tool, ReenSAT, to detect reentrancy vulnerabilities. We conducted experiments on a verified real-world dataset. Experimental results show that ReenSAT outperforms state-of-the-art tools by an impressive 34.72% in precision, while effectively addressing eight typical types of false positives within these tools. In addition, when processing complex large contract datasets, ReenSAT's vulnerability detection efficiency outperforms that of most state-of-the-art tools.
求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
IEEE Transactions on Reliability
IEEE Transactions on Reliability 工程技术-工程:电子与电气
CiteScore
12.20
自引率
8.50%
发文量
153
审稿时长
7.5 months
期刊介绍: IEEE Transactions on Reliability is a refereed journal for the reliability and allied disciplines including, but not limited to, maintainability, physics of failure, life testing, prognostics, design and manufacture for reliability, reliability for systems of systems, network availability, mission success, warranty, safety, and various measures of effectiveness. Topics eligible for publication range from hardware to software, from materials to systems, from consumer and industrial devices to manufacturing plants, from individual items to networks, from techniques for making things better to ways of predicting and measuring behavior in the field. As an engineering subject that supports new and existing technologies, we constantly expand into new areas of the assurance sciences.
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:604180095
Book学术官方微信