WO2021243740A1 - 一种基于以太坊虚拟机的代码插桩框架系统 - Google Patents

一种基于以太坊虚拟机的代码插桩框架系统 Download PDF

Info

Publication number
WO2021243740A1
WO2021243740A1 PCT/CN2020/095248 CN2020095248W WO2021243740A1 WO 2021243740 A1 WO2021243740 A1 WO 2021243740A1 CN 2020095248 W CN2020095248 W CN 2020095248W WO 2021243740 A1 WO2021243740 A1 WO 2021243740A1
Authority
WO
WIPO (PCT)
Prior art keywords
virtual machine
module
instrumentation
analysis script
ethereum
Prior art date
Legal status (The legal status 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 status listed.)
Ceased
Application number
PCT/CN2020/095248
Other languages
English (en)
French (fr)
Inventor
吴斯韦
周亚金
吴磊
任奎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang University
Original Assignee
Zhejiang University
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 Zhejiang University filed Critical Zhejiang University
Publication of WO2021243740A1 publication Critical patent/WO2021243740A1/zh
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/54—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by adding security routines or objects to programs
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00—Arrangements for program control, e.g. control units
    • G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44—Arrangements for executing specific programs
    • G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533—Hypervisors; Virtual machine monitors
    • G06F9/45558—Hypervisor-specific management and integration aspects

Definitions

  • the invention relates to the technical field of program analysis information, in particular to a code instrumentation framework system based on an Ethereum virtual machine.
  • Program instrumentation technology is to insert some "probes" into the program on the basis of ensuring the original logic integrity of the program under test. In essence, it is the code segment for information collection, and the program runs through the execution of the "probe" Through the analysis of these data, the control flow and data flow information of the program can be obtained, and then dynamic information such as logic coverage can be obtained. Program instrumentation is widely used in traditional program analysis.
  • Geth's built-in trace function provides a simple instrumentation framework, which will jump to the execution environment of instrumentation code before each operation code (opcode) is executed during execution, regardless of whether the user cares about the operation code ( opcode), this kind of design will bring additional context switching overhead and cannot cope with large-scale experiments. And it does not have a dynamic taint engine, and analysts still need to pay high development costs to track the data flow of the program when using it.
  • the present invention discloses a code instrumentation framework system based on the Ethereum virtual machine, which can help users to understand and understand the Ethereum virtual machine level with the lowest development cost. Detect malicious behavior.
  • the specific technical solutions are as follows:
  • a code instrumentation framework system based on an Ethereum virtual machine characterized in that the system includes an analysis script loading module, an analysis script execution module, an Ethereum virtual machine instrumentation module, a dynamic stain engine module, and an analysis script interface module;
  • the Ethereum virtual machine instrumentation module inserts three types of instrumentation points into the Ethereum virtual machine to interrupt the execution of the Ethereum virtual machine, and on the other hand provides Ethereum for the analysis script interface module Various types of data support during the execution of the virtual machine; the three types of instrumentation points include conventional transaction instrumentation points, smart contract instrumentation points, and opcode instrumentation points; the conventional transactions refer to Transactions initiated by non-smart contract accounts;
  • the analysis script loading module is used to load the analysis script and record the instrumentation points that the user cares about;
  • the analysis script execution module is used to execute the analysis script
  • the dynamic stain engine module is used to provide various data support related to data flow analysis for the analysis script interface module;
  • the analysis script interface module provides an interface for the analysis script execution module to view various data and various data related to data flow analysis during the execution of the Ethereum virtual machine.
  • the conventional transaction type instrumentation points include the beginning of the conventional transaction and the end of the conventional transaction.
  • the smart contract insertion point includes the beginning and the end of executing a smart contract.
  • the opcode-type instrumentation points include before the operation code is executed and after the operation code is executed.
  • the various types of data during the execution of the virtual machine include the stack, memory, transaction input fields in the Ethereum virtual machine, the state variables and transaction return fields of the involved smart contract, and the transaction hash of the current transaction. Block number;
  • the stack and memory refer to the data storage structure in the Ethereum virtual machine.
  • the various types of data related to data flow analysis refer to the shadow stack, shadow memory, shadow transaction input fields, and shadow state variables of the involved smart contracts that are independently maintained by the dynamic taint engine module for storing and spreading taints. And shadow transaction return field.
  • the code instrumentation framework system of the present invention can help analysts to go deep into the Ethereum virtual machine level to understand and detect malicious behaviors. By providing a flexible instrumentation interface, it can save money in completing transaction analysis tasks based on the Ethereum virtual machine instrumentation.
  • a large number of development costs for users by providing an interface for viewing various data of the Ethereum virtual machine in the execution process, it saves users the development cost of understanding the underlying logic of the Ethereum virtual machine; and viewing the data flow-related information provided by the dynamic taint engine
  • Various data interfaces save the development cost of users recording data streams; by loading user scripts in advance and recording the instrumentation points that users care about, the user's analysis scripts can be called on demand during execution, avoiding unnecessary context switching And the performance loss brought about.
  • Fig. 1 is a schematic diagram of the code instrumentation framework system based on the Ethereum virtual machine of the present invention.
  • the Ethereum-based code instrumentation framework system of the present invention includes:
  • this module inserts three types of plugging points in the Ethereum virtual machine to interrupt the execution of the Ethereum virtual machine.
  • this module provides Ethereum for the analysis script interface module.
  • Various types of data support during the execution of the virtual machine; the three types of instrumentation points include:
  • 3Operation code type insertion point before and after operation code execution.
  • the conventional transaction refers to a transaction initiated by a non-smart contract account.
  • the various types of data during the execution of the virtual machine include the stack, memory, transaction input fields in the Ethereum virtual machine, the state variables and transaction return fields of the involved smart contract, the transaction hash of the current transaction, and the area in which it is located. Block number
  • the stack and memory refer to the data storage structure in the Ethereum virtual machine.
  • the analysis script loading module which is used to load the analysis script and record the instrumentation points that the user cares about, in order to avoid the performance loss caused by unnecessary context switching;
  • the context switching refers to Switch from the execution context of the Ethereum virtual machine to the execution context of the analysis script engine.
  • Analysis script execution module which is used to execute analysis scripts.
  • the dynamic stain engine module which is used to provide various data support related to data flow analysis for the analysis script interface module; the various types of data related to data flow analysis refer to the autonomous maintenance of the dynamic stain engine module Shadow stack, shadow memory, shadow transaction input fields, shadow state variables of the involved smart contract, and shadow transaction return fields for storing and disseminating taints.
  • Analysis script interface module which is used to provide an interface for the analysis script execution module to view various data and various data related to data flow analysis during the execution of the Ethereum virtual machine.
  • the code instrumentation framework system based on the Ethereum virtual machine of the present invention is deployed in the Ethereum virtual machine embedded in Geth, where the analysis script execution module uses the JavaScript execution engine provided by go-duktape, which is The development script language provided by the user is JavaScript.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Devices For Executing Special Programs (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

一种基于以太坊虚拟机的代码插桩框架系统,包括分析脚本载入模块、分析脚本执行模块、以太坊虚拟机插桩模块、动态污点引擎模块、分析脚本接口模块;以太坊虚拟机插桩模块一方面在以太坊虚拟机中插入三类插桩点,用于打断以太坊虚拟机的执行,另一方面为分析脚本接口模块提供虚拟机在执行过程中的各类数据支持;分析脚本载入模块用于载入分析脚本并记录用户在意的插桩点;动态污点引擎模块用于为分析脚本接口模块提供数据流分析相关的各类数据支持;分析脚本接口模块为分析脚本执行模块提供接口查看虚拟机执行过程中各类数据和数据流分析相关的各类数据。通过提供丰富的接口,帮助分析人员减小开发成本,大大减少运行性能损耗。

Description

一种基于以太坊虚拟机的代码插桩框架系统 技术领域
本发明涉及程序分析信息技术领域,具体涉及一种基于以太坊虚拟机的代码插桩框架系统。
背景技术
近年来,随着比特币系统的平稳运行,区块链技术受到世界范围内广泛的关注,而以太坊的诞生又是一个里程碑意义的事件。以太坊作为市值排名第二的区块链平台,最重要的突破和特色就是配备了图灵完备的以太坊虚拟机,可以支持智能合约的执行。以太坊原生的以太币以及在以太坊上发行的众多数字货币已经具备了相当的金融属性。以太坊网络由运行着以太坊客户端软件的节点组成,主要包括Go-Ethereum(简称Geth)和Parity等。
由于区块链技术,以太坊平台,智能合约都是新生事物,又因其具备的金融属性,近些年吸引了许多的恶意攻击者在以太坊平台上兴风作浪,严重地影响了以太坊的生态,比如臭名昭著的重入攻击,曾对以太坊平台造成巨大的影响。
程序插桩技术,是在保证被测程序原有逻辑完整性的基础上在程序中插入一些“探针”,本质上就是进行信息采集的代码段,通过“探针”的执行抛出程序运行的特征数据,通过对这些数据的分析,可以获取程序的控制流和数据流信息,进而得到逻辑覆盖等动态信息。程序插桩被广泛用于传统程序分析中。
随着以太坊平台上各类攻击漏洞层出不穷,结合程序插桩技术检测恶意行为的需求也愈发急迫,而近年来已经出现了一些基于插桩技术的攻击检测方法,不过由于没有成熟的插桩框架出现,目前以太坊与插桩技术的结合仍然是通过直接对以太坊虚拟机插入“探针”的方式,这需要分析人员对以太坊虚拟机的代码逻辑非常了解,并且针对不同类型攻击的检测会需要不同的插桩方式,不仅需要分析人员投入很高的开发成本,而且缺乏可扩展性。
Geth内嵌的trace功能提供了一个朴素的插桩框架,它在执行时会在每一个操作码(opcode)执行之前跳转到插桩代码的执行环境,而不管用户是否在意该种操作码(opcode),此种设计会带来额外的上下文切换开销,无法应对大规模的实验。并且它不具备动态污点引擎,分析人员在使用时仍然需要付出很高的开发成本来追踪程序的数据流。
发明内容
为了解决现有技术中存在的上述缺陷,本发明的公开了一种基于以太坊虚拟机的代码插桩框架系统,该系统可以帮助用户以最低的开发成本深入到以太坊虚拟机层面来理解和检测 恶意行为。具体技术方案如下:
一种基于以太坊虚拟机的代码插桩框架系统,其特征在于,该系统包括分析脚本载入模块、分析脚本执行模块、以太坊虚拟机插桩模块、动态污点引擎模块和分析脚本接口模块;
所述的以太坊虚拟机插桩模块一方面在以太坊虚拟机中插入三类插桩点,用于打断以太坊虚拟机的执行,另一方面为所述的分析脚本接口模块提供以太坊虚拟机在执行过程中的各类数据支持;所述的三类插桩点包括常规交易类插桩点、智能合约类插桩点和操作码类插桩点;所述的常规交易指的是由非智能合约账户发起的交易;
所述的分析脚本载入模块用于载入分析脚本并记录用户在意的插桩点;
所述的分析脚本执行模块用于执行分析脚本;
所述的动态污点引擎模块用于为所述的分析脚本接口模块提供数据流分析相关的各类数据支持;
所述的分析脚本接口模块为所述的分析脚本执行模块提供接口,查看以太坊虚拟机在执行过程中的各类数据和数据流分析相关的各类数据。
进一步地,所述的常规交易类插桩点包含常规交易的开始和常规交易的结束。
进一步地,所述的智能合约插桩点包含执行一个智能合约的开始和结束。
进一步地,所述的操作码类插桩点包含操作码执行之前和操作码执行之后。
进一步地,所述的虚拟机在执行过程中的各类数据包括以太坊虚拟机中的栈、内存,交易输入字段、所涉及智能合约的状态变量和交易返回字段、当前交易的交易哈希和所处区块号;
其中,所述的栈、内存指的是以太坊虚拟机中的数据存储结构。
进一步地,所述的数据流分析相关的各类数据指的是动态污点引擎模块自主维护的用于存储和传播污点的影子栈、影子内存、影子交易输入字段、所涉及智能合约的影子状态变量和影子交易返回字段。
本发明的有益效果如下:
本发明的代码插桩框架系统可以帮助分析人员深入到以太坊虚拟机层面来理解和检测恶意行为,通过提供灵活的插桩接口,在完成基于以太坊虚拟机插桩的交易分析任务中可以节省用户大量的开发成本;通过提供查看以太坊虚拟机在执行过程中的各类数据的接口,节省了用户理解以太坊虚拟机底层逻辑的开发成本;通过配备动态污点引擎提供的查看数据流相关的各类数据的接口,节省了用户记录数据流的开发成本;通过提前加载用户脚本并记录用户在意的插桩点,可以做到在执行时按需调用用户的分析脚本,避免不必要的上下文切换而带来的性能损耗。
附图说明
图1为本发明的基于以太坊虚拟机的代码插桩框架系统的示意图。
具体实施方式
下面根据附图和优选实施例详细描述本发明,本发明的目的和效果将变得更加明白,应当理解,此处所描述的具体实施例仅仅用于解释本发明,并不用于限定本发明。
如图1所示,本发明的基于以太坊的代码插桩框架系统,包括:
(1)以太坊虚拟机插桩模块,该模块一方面在以太坊虚拟机中插入三类插桩点,用于打断以太坊虚拟机的执行,另一方面为分析脚本接口模块提供以太坊虚拟机在执行过程中的各类数据支持;所述的三类插桩点包括:
①常规交易类插桩点:常规交易的开始和常规交易的结束。
②智能合约类插桩点:执行一个智能合约的开始和结束。
③操作码类插桩点:操作码执行之前和操作码执行之后。
所述的常规交易指的是由非智能合约账户发起的交易。
所述的虚拟机在执行过程中的各类数据包括以太坊虚拟机中的栈、内存、交易输入字段,所涉及智能合约的状态变量和交易返回字段、当前交易的交易哈希和所处区块号;
所述的栈、内存指的是以太坊虚拟机中的数据存储结构。
(2)分析脚本载入模块,该模块用于载入分析脚本并记录用户在意的插桩点,目的是为了避免不必要的上下文切换而带来的性能损耗;所述的上下文切换指的是从以太坊虚拟机的执行上下文切换到分析脚本引擎的执行上下文。
(3)分析脚本执行模块,该模块用于执行分析脚本。
(4)动态污点引擎模块,该模块用于为分析脚本接口模块提供数据流分析相关的各类数据支持;所述的数据流分析相关的各类数据指的是动态污点引擎模块自主维护的用于存储和传播污点的影子栈、影子内存、影子交易输入字段、所涉及智能合约的影子状态变量和影子交易返回字段。
(5)分析脚本接口模块,该模块用于为分析脚本执行模块提供接口,查看以太坊虚拟机在执行过程中的各类数据和数据流分析相关的各类数据。
如图1所示,本发明的基于以太坊虚拟机的代码插桩框架系统部署在Geth内嵌的以太坊虚拟机中,其中分析脚本执行模块采用的是go-duktape提供的JavaScript执行引擎,为用户提供的开发脚本语言是JavaScript。
本领域普通技术人员可以理解,以上所述仅为发明的优选实例而已,并不用于限制发明,尽管参照前述实例对发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前 述各实例记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在发明的精神和原则之内,所做的修改、等同替换等均应包含在发明的保护范围之内。

Claims (6)

  1. 一种基于以太坊虚拟机的代码插桩框架系统,其特征在于,该系统包括分析脚本载入模块、分析脚本执行模块、以太坊虚拟机插桩模块、动态污点引擎模块和分析脚本接口模块;
    所述的以太坊虚拟机插桩模块一方面在以太坊虚拟机中插入三类插桩点,用于打断以太坊虚拟机的执行,另一方面为所述的分析脚本接口模块提供以太坊虚拟机在执行过程中的各类数据支持;所述的三类插桩点包括常规交易类插桩点、智能合约类插桩点和操作码类插桩点;所述的常规交易指的是由非智能合约账户发起的交易。
    所述的分析脚本载入模块用于载入分析脚本并记录用户在意的插桩点;
    所述的分析脚本执行模块用于执行分析脚本;
    所述的动态污点引擎模块用于为所述的分析脚本接口模块提供数据流分析相关的各类数据支持;
    所述的分析脚本接口模块为所述的分析脚本执行模块提供接口,查看以太坊虚拟机在执行过程中的各类数据和数据流分析相关的各类数据。
  2. 根据权利要求1所述的基于以太坊虚拟机的代码插桩框架系统,其特征在于,所述的常规交易类插桩点包含常规交易的开始和常规交易的结束。
  3. 根据权利要求1所述的基于以太坊虚拟机的代码插桩框架系统,其特征在于,所述的智能合约插桩点包含执行一个智能合约的开始和结束。
  4. 根据权利要求1所述的基于以太坊虚拟机的代码插桩框架系统,其特征在于,所述的操作码类插桩点包含操作码执行之前和操作码执行之后。
  5. 根据权利要求1所述的基于以太坊虚拟机的代码插桩框架系统,其特征在于,所述的虚拟机在执行过程中的各类数据包括以太坊虚拟机中的栈、内存,交易输入字段、所涉及智能合约的状态变量和交易返回字段、当前交易的交易哈希和所处区块号;
    其中,所述的栈、内存指的是以太坊虚拟机中的数据存储结构。
  6. 根据权利要求1所述的基于以太坊虚拟机的代码插桩框架系统,其特征在于,所述的数据流分析相关的各类数据指的是动态污点引擎模块自主维护的用于存储和传播污点的影子栈、影子内存、影子交易输入字段、所涉及智能合约的影子状态变量和影子交易返回字段。
PCT/CN2020/095248 2020-06-02 2020-06-10 一种基于以太坊虚拟机的代码插桩框架系统 Ceased WO2021243740A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202010489633.9 2020-06-02
CN202010489633.9A CN111680290B (zh) 2020-06-02 2020-06-02 一种基于以太坊虚拟机的代码插桩框架系统

Publications (1)

Publication Number Publication Date
WO2021243740A1 true WO2021243740A1 (zh) 2021-12-09

Family

ID=72434862

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2020/095248 Ceased WO2021243740A1 (zh) 2020-06-02 2020-06-10 一种基于以太坊虚拟机的代码插桩框架系统

Country Status (2)

Country Link
CN (1) CN111680290B (zh)
WO (1) WO2021243740A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114756872A (zh) * 2022-04-28 2022-07-15 杭州孝道科技有限公司 基于go语言的注入式污点数据跟踪方法、装置和电子装置
CN116167058A (zh) * 2023-04-23 2023-05-26 北京安普诺信息技术有限公司 一种基于代码疫苗的运行时漏洞分析方法及装置
CN116707975A (zh) * 2023-07-05 2023-09-05 广州大学 智能合约攻击检测方法及系统
CN119668913A (zh) * 2024-11-29 2025-03-21 北京航空航天大学 以太坊虚拟机缺陷的根本原因检测方法及装置

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113919841A (zh) * 2021-12-13 2022-01-11 北京雁翎网卫智能科技有限公司 一种基于静态特征和动态插桩的区块链交易监测方法及系统
CN116629905A (zh) * 2022-08-17 2023-08-22 中国工程物理研究院计算机应用研究所 一种基于交易和lstm的恶意智能合约监测方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190034404A1 (en) * 2017-07-28 2019-01-31 International Business Machines Corporation Cognitive mediator for generating blockchain smart contracts
CN109800175A (zh) * 2019-02-20 2019-05-24 河海大学 一种基于代码插桩的以太坊智能合约重入漏洞检测方法
CN110046089A (zh) * 2019-03-01 2019-07-23 华南师范大学 一种基于路径覆盖充分性准则的智能合约测试方法
CN110866255A (zh) * 2019-11-07 2020-03-06 博雅正链(北京)科技有限公司 一种智能合约漏洞检测方法
CN111177730A (zh) * 2019-12-19 2020-05-19 河海大学 一种以太坊智能合约问题检测和预防方法与装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019096326A1 (en) * 2017-11-20 2019-05-23 Obook Holdings Inc. Blockchain-based room inventory management system
US10880074B2 (en) * 2018-10-15 2020-12-29 Adobe Inc. Smart contract platform for generating and customizing smart contracts
CN109493226B (zh) * 2018-11-21 2019-07-16 北京物资学院 一种基于区块链的智能合约状态监测系统及监测方法
CN110427389B (zh) * 2019-07-26 2023-07-18 南京安链数据科技有限公司 一种用于区块链数字货币的数据处理和查询方法
CN110766411A (zh) * 2019-10-29 2020-02-07 电子科技大学 以太坊代币交易中不一致行为的检测方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190034404A1 (en) * 2017-07-28 2019-01-31 International Business Machines Corporation Cognitive mediator for generating blockchain smart contracts
CN109800175A (zh) * 2019-02-20 2019-05-24 河海大学 一种基于代码插桩的以太坊智能合约重入漏洞检测方法
CN110046089A (zh) * 2019-03-01 2019-07-23 华南师范大学 一种基于路径覆盖充分性准则的智能合约测试方法
CN110866255A (zh) * 2019-11-07 2020-03-06 博雅正链(北京)科技有限公司 一种智能合约漏洞检测方法
CN111177730A (zh) * 2019-12-19 2020-05-19 河海大学 一种以太坊智能合约问题检测和预防方法与装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114756872A (zh) * 2022-04-28 2022-07-15 杭州孝道科技有限公司 基于go语言的注入式污点数据跟踪方法、装置和电子装置
CN116167058A (zh) * 2023-04-23 2023-05-26 北京安普诺信息技术有限公司 一种基于代码疫苗的运行时漏洞分析方法及装置
CN116707975A (zh) * 2023-07-05 2023-09-05 广州大学 智能合约攻击检测方法及系统
CN119668913A (zh) * 2024-11-29 2025-03-21 北京航空航天大学 以太坊虚拟机缺陷的根本原因检测方法及装置

Also Published As

Publication number Publication date
CN111680290A (zh) 2020-09-18
CN111680290B (zh) 2023-04-11

Similar Documents

Publication Publication Date Title
CN111680290B (zh) 一种基于以太坊虚拟机的代码插桩框架系统
Fu et al. Evmfuzzer: detect evm vulnerabilities via fuzz testing
CN101887393B (zh) 基于半虚拟化技术的设备故障复现方法及系统
CN103995782B (zh) 一种基于污点不变集的污点分析方法
CN111291384B (zh) 漏洞扫描方法、装置及电子设备
Zhang et al. Combatting front-running in smart contracts: Attack mining, benchmark construction and vulnerability detector evaluation
CN101853200B (zh) 一种高效动态软件漏洞挖掘方法
CN108763076A (zh) 一种软件自动测试方法、装置、设备及介质
CN107193732B (zh) 一种基于路径比对的校验函数定位方法
WO2022170170A1 (en) Malware detection system
US9558097B2 (en) Automated recording and playback of application interactions
He et al. Nurgle: Exacerbating resource consumption in blockchain state storage via mpt manipulation
US6957421B2 (en) Providing debugging capability for program instrumented code
CN115442380A (zh) 针对智能合约漏洞攻击的交易阻断方法和装置
CN116204885A (zh) 一种基于以太坊交易数据重放的操作码序列生成方法
US20190294796A1 (en) Resolving anomalies for network applications using code injection
CN106997322A (zh) 用于自动化测试的方法及设备
Zhu et al. Making smart contract classification easier and more effective
Huang et al. Ethereum transaction replay platform based on state-wise account input data
CN115470498A (zh) 一种基于拍卖退款交易智能合约重入攻击漏洞的优化方法
CN110389897A (zh) Sdk逻辑测试方法、装置、存储介质及服务器
CN104850781A (zh) 一种动态多级恶意代码行为分析方法及系统
CN115795489B (zh) 一种基于硬件级进程跟踪的软件漏洞静态分析方法及装置
CN118585352A (zh) 服务间远程调度方法、装置、设备及存储介质
Yang et al. Fuzzing IPC with knowledge inference

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: 20939445

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: 20939445

Country of ref document: EP

Kind code of ref document: A1