检索规则说明:AND代表“并且”;OR代表“或者”;NOT代表“不包含”;(注意必须大写,运算符两边需空一格)
检 索 范 例 :范例一: (K=图书馆学 OR K=情报学) AND A=范并思 范例二:J=计算机应用与软件 AND (U=C++ OR U=Basic) NOT M=Visual
作 者:顾锡国 王志伟 陈翔[3] 何启帆 崔展齐 GU Xi-guo;WANG Zhi-wei;CHEN Xiang;HE Qi-fan;CUI Zhan-qi(School of Computer Science,Beijing Information Science and Technology University,Beijing 100101,China;Data and Technical Support Center,Cyberspace Administration of China,Beijing 100048,China;School of Information Science and Technology,Nantong University,Nantong,Jiangsu 226019,China)
机构地区:[1]北京信息科技大学计算机学院,北京100101 [2]国家网信办数据与技术保障中心,北京100048 [3]南通大学信息科学技术学院,江苏南通226019
出 处:《电子学报》2024年第12期4101-4112,共12页Acta Electronica Sinica
基 金:江苏省前沿引领技术基础研究专项(No.BK20202001);国家自然科学基金(No.61702041);北京控制工程研究所高可信嵌入式软件工程技术实验室开放基金(No.LHCESET202307);北京信息科技大学“勤信人才”培育计划(No.QXTCP B202406)。
摘 要:随着智能合约被广泛使用,其处理的业务逻辑更加复杂,代码复杂度越来越高,引发了大量安全漏洞.为避免潜在安全漏洞造成的危害,研究人员提出了一系列智能合约漏洞检测方法.但现有方法对合约特征表征不完整,未将合约的语义及结构特征进行统一表征,难以准确、全面地检测和识别智能合约中的潜在漏洞和安全风险.为此,本文提出了基于图注意力网络的智能合约漏洞检测方法SCG-Detector(Smart Contract Graph Detector).首先,通过解析合约源代码构建抽象语法树(Abstract Syntax Tree,AST)以表征合约语法结构信息,并在AST上添加表示语义信息的数据依赖关系和控制依赖关系,以构建合约图(Smart Contract Graph,SCG)同时表征合约的语法结构及语义信息;然后,将SCG输入到图注意网络模型中进行训练,利用注意力机制学习合约中漏洞的特征;最后,利用训练好的图注意力网络模型检测合约中是否存在漏洞及所存在漏洞的类型.SCG-Detector在12616个智能合约上进行的实验结果表明,相比于sFuzz、Conkas、ConFuzzius、Mythril、Osiris、Slither、Oyente、MANDO-GURU等8种广泛使用的方法,SCG-Detector的Precision最高提升了26.46%,Recall最高提升了69.64%,F1最高提升了59.57%.syntax tree(AST)is constructed by parsing the contract source code to represent the contract’s syntactic structure information.Data dependency relationships and control dependency relationships,which represent semantic information,are added to the AST to construct a smart con⁃tract graph(SCG)that characterizes the contract’s syntactic structure and semantic information.Secondly,using the SCG as input,the graph attention network model is trained with an attention mechanism to learn the features of vulnerabilities in the contract.Finally,the trained graph attention network model is used to detect whether there are vulnerabilities in the contract and the types of vulnerabilities present.Experiments are conducted on 12616 smart contracts to compare with 8 widely used methods,including sFuzz,Conkas,ConFuzzius,Mythril,Osiris,Slither,Oyente,and MANDO-GURU.The experi⁃mental results shows that the Precision of SCG-Detector is improved by up to 26.46%,recall is improved by up to 69.64%,and F1 is improved by up to 59.57%.
关 键 词:智能合约 图注意力网络 合约图 抽象语法树 数据依赖关系 控制依赖关系
分 类 号:TP311.5[自动化与计算机技术—计算机软件与理论]
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在链接到云南高校图书馆文献保障联盟下载...
云南高校图书馆联盟文献共享服务平台 版权所有©
您的IP:216.73.216.15