WO2021114093A1 - 一种基于深度学习的智能合约漏洞检测方法 - Google Patents

一种基于深度学习的智能合约漏洞检测方法 Download PDF

Info

Publication number
WO2021114093A1
WO2021114093A1 PCT/CN2019/124326 CN2019124326W WO2021114093A1 WO 2021114093 A1 WO2021114093 A1 WO 2021114093A1 CN 2019124326 W CN2019124326 W CN 2019124326W WO 2021114093 A1 WO2021114093 A1 WO 2021114093A1
Authority
WO
WIPO (PCT)
Prior art keywords
smart contract
code
vulnerabilities
training
neural network
Prior art date
Application number
PCT/CN2019/124326
Other languages
English (en)
French (fr)
Inventor
王锐
叶可江
须成忠
Original Assignee
中国科学院深圳先进技术研究院
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 中国科学院深圳先进技术研究院 filed Critical 中国科学院深圳先进技术研究院
Priority to PCT/CN2019/124326 priority Critical patent/WO2021114093A1/zh
Publication of WO2021114093A1 publication Critical patent/WO2021114093A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software

Definitions

  • the invention belongs to the field of block chains and relates to a method for detecting smart contract vulnerabilities based on deep learning.
  • Smart contract is one of the core technologies of blockchain, a consensus rule in multi-party participation scenarios, and the center of value transmission.
  • the essence of a smart contract is a piece of code running in the blockchain network, which completes the business logic assigned by the user. Taking the token of the Ethereum system as an example, its business logic is token issuance and transaction.
  • smart contracts were designed into a model that cannot be modified once deployed. This design may be to improve the credibility of smart contracts.
  • the loss to the user is huge and irreversible.
  • the current mainstream smart contract vulnerability detection is divided into three categories.
  • the first category is the matching of feature codes
  • the second category is the automated detection based on morphological verification
  • the third category is the automated detection based on symbolic execution and symbol abstraction.
  • Feature code matching some abstraction of malicious code, similar to static code detection, through sampling into a semantic match, and then to match its static source code.
  • the advantage of this detection method is that it is very fast, because it matches a string of the original code.
  • the second is that it can quickly respond to new vulnerabilities, because most of this detection method is developed in the form of plug-ins. For example, if a new vulnerability occurs, then you can quickly submit some new matching patterns.
  • an OPCODE When testing the code, through source code or compilation, an OPCODE can be formed and input to the automated analysis engine. After input to the engine, it will be converted into a CFG (ControlFlowGraph control flow chart),
  • CFG will package the logic in the contract code into blocks, and when the logic is forked, it will be forked.
  • CFG Builder mainly forms a very large and complete CFG for the smart contract code of OPCODE. After the CFG is generated, there are the following two analysis methods:
  • Oyente's logic is that after the CFG build is formed, it first passes EXPLORER verification and verifies every process in the code. Next is CodeAnalysis, which converts the EXPLORER path just output and performs some vulnerability verification. Currently only three verifications are provided: TOD, Timestamp dependency, and Mishandled exceptions. Finally, the system uses Microsoft's Z3 to ensure the false positive rate and false negative rate Bit-Vector Solver's open source verifier, and then a package of the overall architecture.
  • Securify provides another method. Smart contract code is easy to decouple. For example, some structures and modules that are relatively fixed and decoupled such as Transfer. Therefore, it is not necessary to verify the logic of the entire smart contract, but can decouple the smart contract.
  • the various modules of the system are checked and analyzed to improve the degree of automation.
  • Securify converts Contract Bytecode into a custom semantic language, and then verifies it through a custom semantic language verification module (similar to pattern matching, converts some vulnerabilities into a verification language pattern matching framework, and then verifies its semantics Correct) and generate a safety report.
  • the false negative rate is high. Some functions, features, etc. in the smart contract are still subject to a lot of variability, so the false negative rate will be relatively high.
  • Oyente's false negative rate is very high.
  • Oyente coverage rate is only 20%, and the remaining 80% of the code cannot be verified.
  • the present invention proposes a smart contract vulnerability detection method based on deep learning.
  • the method performs vulnerability detection through the deep learning method, realizes automation and improves efficiency.
  • the technical solution of the present invention to solve the above problems is: a method for detecting smart contract vulnerabilities based on deep learning, which is special in that it includes the following steps:
  • the required detection code is processed and input to the trained neural network for detection, and the result is obtained.
  • step 1) the learning and training stage specifically includes the following steps:
  • Aiming at smart contract vulnerabilities use this as a key point to analyze the data flow of the smart contract code, and extract function calls from the contract code.
  • Data flow analysis is a technology used at compile time. It collects semantic information from smart contract code and uses algebraic methods to determine the definition and use of variables at compile time. Then extract one or more smart contract code fragments from the function call, and the code fragments are semantically related.
  • Training is performed by setting different number of tokens (tokens), batch size (batchsize), iteration period (epochs), dropout method, etc. At the same time, use different data sets and set different hidden layers to train the BLSTM neural network and perform tuning at the same time.
  • step 2) detection stage specifically includes the following steps:
  • the prior art needs to manually define loopholes, and can only identify and analyze the set loopholes.
  • the loophole detection method of the present invention performs loophole detection through a deep learning method, which realizes automation and improves efficiency.
  • Figure 1 is based on the deep learning smart contract vulnerability detection method and system architecture diagram
  • Figure 2 is a diagram of the BLSTM neural network architecture.
  • a smart contract vulnerability detection method based on deep learning including the following steps:
  • Aiming at the main smart contract vulnerabilities such as integer overflow, external calls, sensitive behaviors, abnormalities, logical sequences, etc., use this as a key point to analyze the data flow of the smart contract code, and extract function calls from the contract code.
  • Data flow analysis is a technology used at compile time. It collects semantic information from smart contract code and uses algebraic methods to determine the definition and use of variables at compile time. Then extract one or more smart contract code fragments from the function call, and the code fragments are semantically related.
  • the required detection code is processed and input to the trained neural network for detection, and the result is obtained, which specifically includes:

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

一种基于深度学习的智能合约漏洞检测方法,包括以下步骤:1)学习训练阶段:针对智能合约代码进行处理,选择合适的神经网络进行训练;2)检测阶段:将需要检测代码进行处理,输入到训练好的神经网络进行检测,得出结果。本漏洞检测方法通过深度学习的方法进行漏洞检测,实现了自动化,提高了效率。

Description

一种基于深度学习的智能合约漏洞检测方法 技术领域
本发明属于区块链领域,涉及一种基于深度学习的智能合约漏洞检测方法。
背景技术
智能合约是区块链的核心技术之一,是多方参与场景中的共识规则,更是价值传递的中枢。智能合约本质是一段运行在区块链网络中的代码,它完成用户所赋予的业务逻辑。以以太坊体系的代币为例,其业务逻辑是代币发币和交易。以太坊在设计之初,将智能合约设计成了一旦部署就不能修改的模式,这种设计有可能是为了提高智能合约的可信性。在区块链应用中,由于区块链的不可篡改性,智能合约一旦上线并出现安全隐患,对用户造成的损失是巨大且不可挽回的。一旦出现黑客事件,需要整个社区的共识才能回滚交易,所以每次遭受攻击都回滚交易也是不现实的。因此,区块链应用开发的过程需要用大量的测试和检验以获取足够的安全性,而反过来牺牲迭代的速度。要应对区块链智能合约的安全漏洞问题,未来需要普遍考虑设计相应的智能合约协商更新机制,降低漏洞修复的成本。同时,在智能合约上线之前,对其进行全面深入的代码安全检测,尽可能的消除漏洞,降低安全风险。因此,我们需要一种可以自动化检测智能合约代码漏洞的方法及系统来减少该问题的产生。通过漏报率、误报率、命中率、测试时限等评估维度,来整体判别某种验证和检测工具的可行性,是当前智能合约及区块链应用发展的必经阶段,也是作为区块链从业者需要认真践行的使命。
目前主流的智能合约漏洞检测分为三类,第一类就是特征代码的匹配,第二类就是基于形态化验证的自动化检测,以及第三类,基于符号执行和符号抽象的自动化检测。
1)特征代码匹配:对恶意代码进行一些提取抽象,类似于代码静态检测,通过抽样成一种语义匹配,然后再去匹配它的静态源代码。这种检测的方法的 优点是速度很快,因为它就是对原码进行一个字符串的匹配。第二是它能够迅速的响应新的漏洞,因为这种检测方法大部分是以插件形式开发,比如出现了一个新的漏洞,那么就可以快速的提交一些新的匹配模式。
2)基于形式化验证的自动化检测:形式化方法是采用某种严格的数学理论,对目标对象进行准确且无二异性的严格数学建模,描述以及推导与证明。形式化验证是用逻辑来验证程序的可靠性,把一段程序用逻辑的方法证明一遍,证明它能得到预期的结果,没有bug。形式化验证来检测智能合约安全,最早是在16年,由Hirai提供,使用Isabelle高阶逻辑交互定理证明器,将EVM的一些OPCODE(机器码),通过lem language转化成一个形式化模型,然后通过形式化模型的验证来去判断代码中的逻辑是否存在问题。
3)基于符号执行、符号抽象的自动化检测:
在对代码进行检测时,通过源代码或者编译,可以形成一个OPCODE,并输入到自动化分析引擎。在输入到引擎后,会转化成一个CFG(ControlFlowGraph控制流程图),
CFG会将合约代码里的逻辑包装成块,当逻辑有分叉的时候,将其分叉。CFG Builder主要是对OPCODE这种智能合约代码,把它形成一个十分庞大完善的一个CFG。CFG生成后,有以下两种分析方法:
a.符号执行验证:Oyente
Oyente的逻辑是在CFG build形成之后,首先通过EXPLORER验证,将代码当中的每一个流程都去验证一遍。接下来是CodeAnalysis,将刚刚输出的EXPLORER路径转化,进行一些漏洞验证,目前只提供TOD、Timestamp dependence、Mishandled exceptions这三种验证,最后系统为了保证误报率和漏报率,采用了微软的Z3 Bit-Vector Solver开源的验证器,然后来进行整体架构的一个封装。
b.符号抽象分析:Securify
Securify提供了另外一种方法,智能合约代码容易解耦合,比如Transfer等一些比较固定解耦合的一些结构和模块,因此并不是需要对整个智能合约的逻辑进行的校验,可以对智能合约解耦合的各个模块进行校验分析,从而提高自动化程度。Securify将Contract Bytecode转化成一种自定义的语义语言,然后通过自定义的语义语言的验证模块进行验证(类似于模式匹配,将一些漏洞转化成一种验证语言的模式匹配框架,然后去验证其语意是否正确),并生成一个安全报告。
特征代码匹配的缺点:
1)我们所理解的现在的区块链都应该是公开透明的,但实际情况并不是这样,我们大概做了一个统计,目前代码的开源率仅仅只占48.62%,在以太坊上其实有超过一半的智能合约是不开源的,只暴露它的一个OPCODE,对于OPCODE的分析对于安全人员来说其实也是面临着巨大的挑战,逆向OPCODE需要花费大量的成本,因此使用范围有限。
2)漏报率高,智能合约里面的一些函数、特征等等,还是变化性很多的,所以漏报率会比较高。
基于形式化验证的自动化检测的缺点:
1)适配困难,不同的区块链平台存在多种智能合约开发语言,需要花费大量的精力进行适配。
基于符号执行、符号抽象的自动化检测:
1)对于Oyente来说,在CFG转EXPLORER验证的时候,需要对每次的循环都进行一个验证,所以说这种分析方法特别耗时,并且也不一定成功。
2)Oyente的漏报率很高,对于Parity的钱包代码来说,它的Oyente覆盖率仅仅达到20%,剩下80%的代码,无法进行验证。
3)对于Securify来说,虽然降低了漏报率,但是误报率会增加。
4)两种方法对于漏洞描述都不精确,无法对漏洞进行准确的描述,不便于修正。
以上三类技术共有的缺点:
需要人工定义漏洞特征,且只能针对设置好的漏洞进行识别和分析。
发明内容
为解决上述背景技术中存在的问题,本发明提出一种基于深度学习的智能合约漏洞检测方法,该方法通过深度学习的方法进行漏洞检测,实现了自动化,提高了效率。
本发明解决上述问题的技术方案是:一种基于深度学习的智能合约漏洞检测方法,其特殊之处在于,包括以下步骤:
1)学习训练阶段:
针对智能合约代码进行处理,选择合适的神经网络进行训练;
2)检测阶段:
将需要检测代码进行处理,输入到训练好的神经网络进行检测,得出结果。
进一步地,所述步骤1)学习训练阶段,具体包括以下步骤:
1.1)针对智能合约漏洞,以此为关键点对智能合约代码进行数据流分析,从合约代码中提取函数调用。数据流分析是一项编译时使用的技术,它能从智能合约代码中收集语义信息,并通过代数的方法在编译时确定变量的定义和使用。然后从函数调用中提取一个或多个智能合约代码分片,代码分片之间是有语义相关的。
1.2)将多个代码分片组合成一个程序分片,然后将每个程序分片标记为真实数据,有漏洞的标为“1”,没有漏洞的标为“0”,作为基本事实。真实数据标签是可用的,我们就知道训练程序是否有漏洞,以及漏洞的位置。
1.3)将程序分片转化为特定的符号表示,以用来保存训练智能合约代码的语义信息;同时建立符号表,并构建一个编码器,编码器的编码方法传入一行符号,返回一个整数列表,使这些符号转化为向量。
1.4)将向量和标注好的基本事实输入到BLSTM神经网络。通过设置不同的标志数目(tokens),批大小(batchsize),迭代期(epochs),丢弃法(dropout) 等进行训练。同时使用不同的数据集,设置不同的隐藏层数训练BLSTM神经网络,同时进行调优。
进一步地,所述步骤2)检测阶段,具体包括以下步骤:
2.1)将待检测的智能合约代码进行数据流分析,从合约代码中提取函数调用,然后从函数调用中提取一个或多个智能合约代码分片。
2.2)将多个代码分片组合成一个程序分片。
2.3)将程序分片转化为特定的符号表示,以用来保存训练智能合约代码的语义信息,然后将这些符号表示转化为向量。
2.4)使用训练好的BLSTM神经网络进行检测,并得出结果。
本发明的优点:
1)现有技术的适配困难,本发明漏洞检测方法适配更加方便,适用于不同区块链系统的智能合约检测;
2)现有技术的漏报率和误报率很高,本发明漏洞检测方法通过深度学习模型降低了漏报率和误报率;
3)现有技术无法对漏洞进行准确的描述,本发明漏洞检测方法可以对漏洞进行精确的描述,方便修正漏洞;
4)现有技术需要人工定义漏洞,且只能针对设置好的漏洞进行识别和分析,本发明漏洞检测方法通过深度学习的方法进行漏洞检测,实现了自动化,提高了效率。
附图说明
图1是基于深度学习智能合约漏洞检测方法及系统架构图;
图2是BLSTM神经网络架构图。
具体实施方式
为使本发明实施方式的目的、技术方案和优点更加清楚,下面将结合本发明实施方式中的附图,对本发明实施方式中的技术方案进行清楚、完整地描述,显然,所描述的实施方式是本发明一部分实施方式,而不是全部的实施方式。 基于本发明中的实施方式,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施方式,都属于本发明保护的范围。因此,以下对在附图中提供的本发明的实施方式的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施方式。
参见图1,一种基于深度学习的智能合约漏洞检测方法,包括以下步骤:
1)学习训练阶段
针对智能合约代码进行处理,选择合适的神经网络进行训练;其具体包括:
1.1)针对主要的智能合约漏洞,如:整数溢出、外部调用、敏感行为、异常、逻辑顺序等,以此为关键点对智能合约代码进行数据流分析,从合约代码中提取函数调用。数据流分析是一项编译时使用的技术,它能从智能合约代码中收集语义信息,并通过代数的方法在编译时确定变量的定义和使用。然后从函数调用中提取一个或多个智能合约代码分片,代码分片之间是有语义相关的。
1.2)将多个代码分片组合成一个程序分片,然后将每个程序分片标记为真实数据,有漏洞的标为“1”,没有漏洞的标为“0”,作为基本事实。真实数据标签是可用的,我们就知道训练程序是否有漏洞,以及漏洞的位置。
1.3)将程序分片转化为特定的符号表示,以用来保存训练智能合约代码的语义信息。同时建立符号表,并构建一个编码器。编码器的编码方法传入一行符号,返回一个整数列表,使这些符号转化为向量。
1.4)将向量和标注好的基本事实输入到BLSTM神经网络(见图2)。通过设置不同的标志数目(tokens),批大小(batchsize),迭代期(epochs),丢弃法(dropout)等进行训练。同时使用不同的数据集,设置不同的隐藏层数训练BLSTM神经网络,同时进行调优。
2)检测阶段
将需要检测代码进行处理,输入到训练好的神经网络进行检测,得出结果,其具体包括:
2.1)将待检测的智能合约代码进行数据流分析,从合约代码中提取函数调用,然后从函数调用中提取一个或多个智能合约代码分片。(与学习训练阶段相同)
2.2)将多个代码分片组合成一个程序分片。(无需进行标注)
2.3)将程序分片转化为特定的符号表示,以用来保存训练智能合约代码的语义信息,然后将这些符号表示转化为向量。(与学习训练阶段相同)
2.4)使用训练好的BLSTM神经网络进行检测,并得出结果。
以上所述仅为本发明的实施例,并非以此限制本发明的保护范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的系统领域,均同理包括在本发明的保护范围内。

Claims (3)

  1. 一种基于深度学习的智能合约漏洞检测方法,其特征在于,包括以下步骤:
    1)学习训练阶段:
    针对智能合约代码进行处理,选择合适的神经网络进行训练;
    2)检测阶段:
    将需要检测代码进行处理,输入到训练好的神经网络进行检测,得出结果。
  2. 根据权利要求1所述的一种基于深度学习的智能合约漏洞检测方法,其特征在于:
    所述步骤1)学习训练阶段,具体包括以下步骤:
    1.1)针对智能合约漏洞,以此为关键点对智能合约代码进行数据流分析,从合约代码中提取函数调用;
    1.2)将多个代码分片组合成一个程序分片,然后将每个程序分片标记为真实数据,有漏洞的标为“1”,没有漏洞的标为“0”,作为基本事实;
    1.3)将程序分片转化为特定的符号表示,以用来保存训练智能合约代码的语义信息;同时建立符号表,并构建一个编码器,编码器的编码方法传入一行符号,返回一个整数列表,使这些符号转化为向量;
    1.4)将向量和标注好的基本事实输入到BLSTM神经网络。
  3. 根据权利要求2所述的一种基于深度学习的智能合约漏洞检测方法,其特征在于:
    所述步骤2)检测阶段,具体包括以下步骤:
    2.1)将待检测的智能合约代码进行数据流分析,从合约代码中提取函数调用,然后从函数调用中提取一个或多个智能合约代码分片;
    2.2)将多个代码分片组合成一个程序分片;
    2.3)将程序分片转化为特定的符号表示,以用来保存训练智能合约代码的语义信息,然后将这些符号表示转化为向量;
    2.4)使用训练好的BLSTM神经网络进行检测,并得出结果。
PCT/CN2019/124326 2019-12-10 2019-12-10 一种基于深度学习的智能合约漏洞检测方法 WO2021114093A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/CN2019/124326 WO2021114093A1 (zh) 2019-12-10 2019-12-10 一种基于深度学习的智能合约漏洞检测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2019/124326 WO2021114093A1 (zh) 2019-12-10 2019-12-10 一种基于深度学习的智能合约漏洞检测方法

Publications (1)

Publication Number Publication Date
WO2021114093A1 true WO2021114093A1 (zh) 2021-06-17

Family

ID=76329194

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2019/124326 WO2021114093A1 (zh) 2019-12-10 2019-12-10 一种基于深度学习的智能合约漏洞检测方法

Country Status (1)

Country Link
WO (1) WO2021114093A1 (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113609488A (zh) * 2021-07-19 2021-11-05 华东师范大学 基于自监督学习及多通道超图神经网络的漏洞检测方法与系统
CN113672515A (zh) * 2021-08-26 2021-11-19 北京航空航天大学 一种基于符号执行的wasm智能合约漏洞检测方法
CN113904844A (zh) * 2021-10-08 2022-01-07 浙江工商大学 基于跨模态教师-学生网络的智能合约漏洞检测方法
CN114048464A (zh) * 2022-01-12 2022-02-15 北京大学 基于深度学习的以太坊智能合约安全漏洞检测方法及系统
CN115174279A (zh) * 2022-09-09 2022-10-11 南方科技大学 一种以太坊智能合约漏洞实时检测方法、终端及存储介质
CN116069937A (zh) * 2023-03-06 2023-05-05 湖南天河国云科技有限公司 基于神经网络的智能合约分类方法、装置和计算机设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160057159A1 (en) * 2014-08-22 2016-02-25 Syracuse University Semantics-aware android malware classification
CN107885999A (zh) * 2017-11-08 2018-04-06 华中科技大学 一种基于深度学习的漏洞检测方法及系统
CN109657473A (zh) * 2018-11-12 2019-04-19 华中科技大学 一种基于深度特征的细粒度漏洞检测方法
CN109933991A (zh) * 2019-03-20 2019-06-25 杭州拜思科技有限公司 一种智能合约漏洞检测的方法、装置
CN110543419A (zh) * 2019-08-28 2019-12-06 杭州趣链科技有限公司 一种基于深度学习技术的智能合约代码漏洞检测方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160057159A1 (en) * 2014-08-22 2016-02-25 Syracuse University Semantics-aware android malware classification
CN107885999A (zh) * 2017-11-08 2018-04-06 华中科技大学 一种基于深度学习的漏洞检测方法及系统
CN109657473A (zh) * 2018-11-12 2019-04-19 华中科技大学 一种基于深度特征的细粒度漏洞检测方法
CN109933991A (zh) * 2019-03-20 2019-06-25 杭州拜思科技有限公司 一种智能合约漏洞检测的方法、装置
CN110543419A (zh) * 2019-08-28 2019-12-06 杭州趣链科技有限公司 一种基于深度学习技术的智能合约代码漏洞检测方法

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113609488A (zh) * 2021-07-19 2021-11-05 华东师范大学 基于自监督学习及多通道超图神经网络的漏洞检测方法与系统
CN113609488B (zh) * 2021-07-19 2022-07-08 华东师范大学 基于自监督学习及多通道超图神经网络的漏洞检测方法与系统
CN113672515A (zh) * 2021-08-26 2021-11-19 北京航空航天大学 一种基于符号执行的wasm智能合约漏洞检测方法
CN113904844A (zh) * 2021-10-08 2022-01-07 浙江工商大学 基于跨模态教师-学生网络的智能合约漏洞检测方法
CN113904844B (zh) * 2021-10-08 2023-09-12 浙江工商大学 基于跨模态教师-学生网络的智能合约漏洞检测方法
CN114048464A (zh) * 2022-01-12 2022-02-15 北京大学 基于深度学习的以太坊智能合约安全漏洞检测方法及系统
CN114048464B (zh) * 2022-01-12 2022-03-15 北京大学 基于深度学习的以太坊智能合约安全漏洞检测方法及系统
CN115174279A (zh) * 2022-09-09 2022-10-11 南方科技大学 一种以太坊智能合约漏洞实时检测方法、终端及存储介质
CN116069937A (zh) * 2023-03-06 2023-05-05 湖南天河国云科技有限公司 基于神经网络的智能合约分类方法、装置和计算机设备

Similar Documents

Publication Publication Date Title
WO2021114093A1 (zh) 一种基于深度学习的智能合约漏洞检测方法
Liao et al. Soliaudit: Smart contract vulnerability assessment based on machine learning and fuzz testing
Cao et al. Bgnn4vd: Constructing bidirectional graph neural-network for vulnerability detection
Wu et al. Peculiar: Smart contract vulnerability detection based on crucial data flow graph and pre-training techniques
Zhang et al. Ethploit: From fuzzing to efficient exploit generation against smart contracts
Huang Hunting the ethereum smart contract: Color-inspired inspection of potential attacks
CN111159012A (zh) 一种基于深度学习的智能合约漏洞检测方法
CN117951701A (zh) 用于确定软件代码中的缺陷和漏洞的方法
Sun et al. Mutation testing for integer overflow in ethereum smart contracts
Sun et al. When gpt meets program analysis: Towards intelligent detection of smart contract logic vulnerabilities in gptscan
Zhou et al. Vulnerability analysis of smart contract for blockchain-based IoT applications: a machine learning approach
David et al. Do you still need a manual smart contract audit?
Sun et al. Gptscan: Detecting logic vulnerabilities in smart contracts by combining gpt with program analysis
Shakya et al. Smartmixmodel: machine learning-based vulnerability detection of solidity smart contracts
Liu et al. Characterizing transaction-reverting statements in ethereum smart contracts
Ferrag et al. Securefalcon: The next cyber reasoning system for cyber security
Dahl et al. Stack-based buffer overflow detection using recurrent neural networks
Xue Machine Learning: Research on Detection of Network Security Vulnerabilities by Extracting and Matching Features
CN115719046A (zh) 一种基于机器学习的门级信息流模型生成方法及装置
Taghavi et al. Using large language models to better detect and handle software vulnerabilities and cyber security threats
Xu et al. W2V-SA: A Deep Neural Network-based Approach to Smart Contract Vulnerability Detection.
Wang et al. Vulnerability evaluation method for E-commerce transaction systems with unobservable transitions
Saha et al. Empowering Hardware Security with LLM: The Development of a Vulnerable Hardware Database
Jain et al. Two Timin’: Repairing Smart Contracts With A Two-Layered Approach
CN112581140B (zh) 一种智能合约验证方法、计算机存储介质

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19955948

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19955948

Country of ref document: EP

Kind code of ref document: A1

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 110123)

122 Ep: pct application non-entry in european phase

Ref document number: 19955948

Country of ref document: EP

Kind code of ref document: A1