SafeCheck: Detecting smart contract vulnerabilities based on static program analysis methods

被引:2
|
作者
Chen, Haiyue [1 ]
Zhao, Xiangfu [1 ]
Wang, Yichen [1 ]
Zhen, Zixian [1 ]
机构
[1] Yantai Univ, Sch Comp & Control Engn, 30 Qingquan Rd, Yantai 264005, Shandong, Peoples R China
来源
SECURITY AND PRIVACY | 2024年 / 7卷 / 05期
基金
中国国家自然科学基金;
关键词
detection rules; intermediate representation; semantic facts; semantic information; smart contracts; static program analysis; vulnerability detection;
D O I
10.1002/spy2.393
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Ethereum smart contracts are a special type of computer programs. Once deployed on the blockchain, they cannot be modified. This presents a significant challenge to the security of smart contracts. Previous research has proposed static and dynamic detection tools to identify vulnerabilities in smart contracts. These tools check contract vulnerabilities based on predefined rules, and the accuracy of detection strongly depends on the design of the rules. However, the constant emergence of new vulnerability types and strategies for vulnerability protection leads to numerous false positives and false negatives by tools. To address this problem, we analyze the characteristics of vulnerabilities in smart contracts and the corresponding protection strategies. We convert the contracts' bytecode into an intermediate representation to extract semantic information of the contracts. Based on this semantic information, we establish a set of detection rules based on semantic facts and implement a vulnerability detection tool SafeCheck using static program analysis methods. The tool is used to detect six common types of vulnerabilities in smart contracts. We have extensively evaluated SafeCheck on real Ethereum smart contracts and compared it to other tools. The experimental results show that SafeCheck performs better in smart contract vulnerability detection compared to other typical tools, with a high F-measure (up to 83.1%) for its entire dataset.
引用
收藏
页数:25
相关论文
共 50 条
  • [41] A survey of static analysis methods for identifying security vulnerabilities in software systems
    Pistoia, M.
    Chandra, S.
    Fink, S. J.
    Yahav, E.
    IBM SYSTEMS JOURNAL, 2007, 46 (02) : 265 - 288
  • [42] Characterizing and Detecting Program Representation Faults of Static Analysis Frameworks
    Zhang, Huaien
    Yu Pei
    Liang, Shuyun
    Xing, Zezhong
    Tan, Shin Hwei
    PROCEEDINGS OF THE 33RD ACM SIGSOFT INTERNATIONAL SYMPOSIUM ON SOFTWARE TESTING AND ANALYSIS, ISSTA 2024, 2024, : 1772 - 1784
  • [43] Ontology Model-Based Static Analysis of Security Vulnerabilities
    Yu, Lian
    Wu, Shi-Zhong
    Guo, Tao
    Dong, Guo-Wei
    Wan, Cheng-Cheng
    Jing, Yin-Hang
    INFORMATION AND COMMUNICATIONS SECURITY, 2011, 7043 : 330 - +
  • [44] Short Paper: Static and Microarchitectural ML-Based Approaches For Detecting Spectre Vulnerabilities and Attacks
    Biringa, Chidera
    Baye, Gaspard
    Kul, Gokhan
    PROCEEDINGS OF THE 11TH INTERNATIONAL WORKSHOP ON HARDWARE AND ARCHITECTURAL SUPPORT FOR SECURITY AND PRIVACY, HASP 2022, 2022, : 53 - 57
  • [45] MLFuzzer: a fuzzing approach based on generative adversarial networks and BiLSTM for detecting vulnerabilities in smart contracts
    Ghazi Mergani Ahmead Ali
    Hongsong Chen
    Cluster Computing, 2025, 28 (5)
  • [46] Spatio-Temporal Context Reduction: A Pointer-Analysis-Based Static Approach for Detecting Use-After-Free Vulnerabilities
    Yan, Hua
    Sui, Yulei
    Chen, Shiping
    Xue, Jingling
    PROCEEDINGS 2018 IEEE/ACM 40TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE), 2018, : 327 - 337
  • [47] Formal Analysis of Smart Contract Based on Colored Petri Nets
    Duo, Wang
    Xin, Huang
    Xiaofeng, Ma
    IEEE INTELLIGENT SYSTEMS, 2020, 35 (03) : 19 - 29
  • [48] ELAID: detecting integer-Overflow-to-Buffer-Overflow vulnerabilities by light-weight and accurate static analysis
    Xu, Lili
    Xu, Mingjie
    Li, Feng
    Huo, Wei
    CYBERSECURITY, 2020, 3 (01)
  • [49] SolGPT: A GPT-Based Static Vulnerability Detection Model for Enhancing Smart Contract Security
    Zeng, Shengqiang
    Zhang, Hongwei
    Wang, Jinsong
    Shi, Kai
    ALGORITHMS AND ARCHITECTURES FOR PARALLEL PROCESSING, ICA3PP 2023, PT IV, 2024, 14490 : 42 - 62
  • [50] Benchmarking Approach to Compare Web Applications Static Analysis Tools Detecting OWASP Top Ten Security Vulnerabilities
    Bermejo Higuera, Juan R.
    Bermejo Higuera, Javier
    Sicilia Montalvo, Juan A.
    Cubo Villalba, Javier
    Nombela Perez, Juan Jose
    CMC-COMPUTERS MATERIALS & CONTINUA, 2020, 64 (03): : 1555 - 1577