CN110633567B - 一种基于rasp的智能合约虚拟机漏洞检测系统及方法 - Google Patents

一种基于rasp的智能合约虚拟机漏洞检测系统及方法 Download PDF

Info

Publication number
CN110633567B
CN110633567B CN201910836064.8A CN201910836064A CN110633567B CN 110633567 B CN110633567 B CN 110633567B CN 201910836064 A CN201910836064 A CN 201910836064A CN 110633567 B CN110633567 B CN 110633567B
Authority
CN
China
Prior art keywords
vulnerability
security
intelligent contract
bytecode
function
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.)
Active
Application number
CN201910836064.8A
Other languages
English (en)
Other versions
CN110633567A (zh
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.)
Tianjin University of Technology
Original Assignee
Tianjin University of Technology
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 Tianjin University of Technology filed Critical Tianjin University of Technology
Publication of CN110633567A publication Critical patent/CN110633567A/zh
Application granted granted Critical
Publication of CN110633567B publication Critical patent/CN110633567B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring 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/53Monitoring 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 executing in a restricted environment, e.g. sandbox or secure virtual machine
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45587Isolation or security of virtual machine instances
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45591Monitoring or debugging support

Abstract

本发明实施例提供了一种基于RASP的智能合约虚拟机漏洞检测系统及方法,涉及漏洞检测领域,上述系统包括:安全策略模块以及HOOK模块;安全策略模块用于基于现有区块链安全事件构建敏感函数集;HOOK模块用于对敏感函数集中的进行标记并结合现有区块链安全事件,对造成危害的异常行为进行记录以生成第一异常记录日志;安全策略模块用于基于第一异常记录日志构建安全执行规则集;HOOK模块用于开启RASP引擎以将智能合约字节码载入合约虚拟机并基于安全执行规则集以及智能合约字节码对漏洞进行处理。通过本发明提提供的系统及方法,可以缓解现有技术中对智能合约的漏洞检测用针对形式化验证存在的效率低、成本高、适用性弱、建模难度大准确率低等问题。

Description

一种基于RASP的智能合约虚拟机漏洞检测系统及方法
技术领域
本发明涉及漏洞检测的技术领域,尤其是涉及一种基于RASP的智能合约虚拟机漏洞检测系统及方法。
背景技术
目前的智能合约漏洞检测方法,包括以下几种:
Russell DW提出基于规则知识库的语法检查,将原始编码文件,通过内置编译工具,对合约构建一棵基于BNF范式基础上的抽象语法树(AST),对合约进行简单的安全识别。但是基于语法的安全检查规则仅能静态识别合约缺陷,无法实现对未知安全风险的识别。
基于语义分析的交易模型识别与安全检查主要通过上下文相关审查,确定智能合约中不满足规则或者不安全的操作,以此排除由于人为书写智能合约带来的各种表层的逻辑缺陷,但无法解决动态执行过程中出现的各种逻辑错误,如书写代码不精确、不完备导致的合约组合条件情况处理的缺失。
基于AI的形式验证的智能合约安全性检查,使用人工智能方法自动识别程序语义并发现其中的典型模式,从而根据模式自行产生为了满足安全要求而需要的属性。当用户提供智能合约代码或编译后的执行代码后,AI引擎将自动完成代码的局部相似性匹配和全局相似性匹配,从而推测代码的行为模型。根据AI获得行为模型,生成对应的形式验证约束,从而进行深层次的行为验证,实现代码安全性。
上述方案大多数都是基于形式化验证(formal verification),。形式化验证通过数学建模方法对系统进行描述,开发者对程序安全性进行事先审查,排除逻辑漏洞和安全漏洞,从而保证合约的安全。
然而,形式化验证方法存在一些缺陷。演绎验证无法实现完全自动化,验证的主要环节仍由工作人员完成,频繁的人机交互提高了运行成本。同时,严重降低运行效率,难以用于大规模系统验证;模型检测主要适用于有穷状态系统,搜索的可穷尽性依赖于合约的有穷状态模型,建模难度大,漏洞发现的准确率低。
针对形式化验证目前存在的效率低、成本高、适用性弱、建模难度大准确率低等问题,本发明从一个全新的角度,利用前期积累的区块链、大数据及网络安全相关研究成果,通过分析当前的漏洞类型,利用RASP技术这一应用运行时环境保护机制解决智能合约的漏洞检测问题,对于区块链安全的发展具有很强的理论意义和现实意义。
发明内容
有鉴于此,本发明的目的在于提供一种基于RASP的智能合约虚拟机漏洞检测系统,以缓解了现有技术中存在的对于漏洞检测效率低、成本高、适用性弱、建模难度大准确率低的技术问题。
本发明提供了一种基于RASP的智能合约虚拟机漏洞检测系统,包括:安全策略模块以及HOOK模块;
所述安全策略模块用于基于现有区块链安全事件构建敏感函数集并对所述敏感函数集中的敏感函数进行标记并基于第一异常记录日志构建安全执行规则集;
所述HOOK模用于对所述敏感函数集中的敏感函数进行标记并结合现有区块链安全事件,对造成危害的异常行为进行记录以生成第一异常记录日志以及开启RASP引擎以将智能合约字节码载入合约虚拟机并基于所述安全执行规则集以及智能合约字节码对漏洞进行处理。
另一方面,本发明提供了一种基于RASP的智能合约虚拟机漏洞检测系统的方法,按照如下步骤进行:
S1:利用安全策略模块基于现有区块链安全事件构建敏感函数集;
S2:利用HOOK模块用于对所述敏感函数集中的敏感函数进行标记并结合现有区块链安全事件,对造成危害的异常行为进行记录以生成第一异常记录日志;
S3:由安全策略模块基于所述第一异常记录日志构建安全执行规则集;
S4:利用HOOK模块开启RASP引擎以将智能合约字节码载入合约虚拟机基于所述安全执行规则集以及智能合约字节码对漏洞进行处理。
优选的,其特征在于,在步骤S1中:利用安全策略模块基于现有区块链安全事件构建敏感函数集的步骤包括:
S101:基于区块链安全事件进行深度搜索以获得安全事件中所涉及的第一漏洞函数;
S102:对所述第一漏洞函数进行编译并将编译后的漏洞函数进行切片和降噪以获得第二漏洞函数;
S103:利用主成分分析算法对所述第二漏洞函数进行漏洞特征提取以获取第三漏洞函数;
S104:对所述第三漏洞函数利用张量分析方法对漏洞特征进行降维处理以获取第四漏洞函数;
S105:基于所述第四漏洞函数构建敏感函数集。
优选的,在所述步骤S3中:由安全策略模块基于所述第一异常记录日志构建安全执行规则集;的步骤包括:
S301:安全策略模块利用主成分分析算法对所述第一异常记录日志进行特征提取以生成第二异常记录日志;
S302:安全策略模块利用张量分析方法对所述第二异常记录日志进行降维以生成第三异常记录日志;
S303:基于所述第三异常记录日志构建安全执行规则集。
优选的,其特征在于,在所述中S4中:利用HOOK模块开启RASP引擎以将智能合约字节码载入合约虚拟机基于所述安全执行规则集以及智能合约字节码对漏洞进行处理的步骤包括:
S401:所述HOOK模块开启RASP引擎并对智能合约字节码进行处理以获得第一字节码并将所述第一字节码载入所述合约虚拟机;
S402:基于所述第一字节码以及敏感函数集,获取所述第一字节码与所述敏感函数集的相似度;
若相似度超过阈值,则执行S403:对所述第一字节码中与敏感函数集相似的部分利用替代函数进行替代以获取第二字节码并将所述第二字节码传输至合约虚拟机,否则不执行任何操作;
S404:所述HOOK模块对所述第二字节码进行监测并基于所述第二字节码以及安全执行规则集,对风险进行判断;
若判定为高危或中危,则执行阻断智能合约的运行;
若判定为低危,则发出警告;
若判定为安全,则不执行任何操作。
本发明实施例带来了以下有益效果:本发明实施例提供了一种基于RASP的智能合约虚拟机漏洞检测系统及方法,上述系统包括:安全策略模块以及HOOK模块;安全策略模块用于基于现有区块链安全事件构建敏感函数集;HOOK模块用于对敏感函数集中的进行标记并结合现有区块链安全事件,对造成危害的异常行为进行记录以生成第一异常记录日志;安全策略模块用于基于第一异常记录日志构建安全执行规则集;HOOK模块用于开启RASP引擎以将智能合约码载入合约虚拟机并基于安全执行规则集以及智能合约字节码对漏洞进行处理。通过本发明提提供的系统及方法,可以缓解现有技术中漏洞检测采用针对形式化验证存在的效率低、成本高、适用性弱、建模难度大准确率低等问题,对于区块链安全的发展具有很强的理论意义和现实意义。
本发明的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的基于RASP的智能合约虚拟机漏洞检测方法流程图;
图2为本发明实施例提供的基于RASP的智能合约虚拟机漏洞检测方法构建敏感函数集流程图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
目前对于漏洞检测采用形式化验证,形式化验证目前存在的效率低、成本高、适用性弱、建模难度大以及准确率低等问题,基于此,本发明实施例提供的一种基于RASP的智能合约虚拟机漏洞检测系统及方法,可以缓解现有技术中漏洞检测存在的效率低、成本高、适用性弱、建模难度大以及准确率低等问题。
本发明实施例一提供了一种基于RASP的智能合约虚拟机漏洞检测系统,本发明提供的系统包括安全策略模块以及HOOK模块,具体的,上述安全策略模块负责制定虚拟机执行合约过程中RASP参与干预决策的有效策略,并初步建立基于特征集合的敏感函数、危险函数及缺陷函数集和基于合约执行状态的安全规则集,以此作为基于智能合约虚拟机的RASP引擎基础数据集,为漏洞检测提供基础支撑;
上述HOOK模块用于对变量进行监视,通过设计面向智能合约虚拟机的字节码处理方法,在敏感函数处设置监视点,实时获取变量运行状态;通过基于资产确认、漏洞确认等指标的量化分析,判定智能合约是否存在漏洞,并根据相似度判断结果的准确性,给出相应的风险评估报告;建立针对恶意行为的智能响应机制,制定基于风险评估的安全执行策略,对智能合约进行阻断、挂起、继续执行、告警等不同的操作;
基于本实施例提供的安全策略模块以及HOOK模块,本发明实施例还提供了一种基于RASP的智能合约虚拟机漏洞检测方法,如图1所示,具体按照如下步骤进行:
S1:利用安全策略模块基于现有区块链安全事件构建敏感函数集;
具体的,如图2所示,上述S1包括:
S101:基于区块链安全事件进行深度搜索以获得安全事件中所涉及的第一漏洞函数;
具体的,上述区块链安全事件主要为关于区块链的不正常加密数字货币交易造成损失的,获取现有区块链安全事件,并在上述区块链安全事件中基于关键词进行搜索并获取第一漏洞函数,上述第一漏洞函数泛指系自身存在的漏洞、容易被攻陷的漏洞以及执行转账时涉及的关键函数;
S102:对所述第一漏洞函数进行编译并将编译后的漏洞函数进行切片和降噪以获得第二漏洞函数;
具体的,为了将第一漏洞函数中的噪声信号以及对信息进行过滤,需要对上述第一漏洞函数进行编译并对编译后的漏洞函数进行降噪处理;所述第二漏洞函数为所述第一漏洞函数的原始信息,所述第二漏洞函数为字节码;
S103:利用主成分分析算法对所述第二漏洞函数进行漏洞特征提取以获取第三漏洞函数;
具体的,在本实施例中,所述第三漏洞函数为高阶矩阵;
S104:对所述第三漏洞函数利用张量分析方法对漏洞特征进行降维处理以获取第四漏洞函数;
具体的,对提取的第三漏洞函数采用张量分析将所述第三漏洞函数原始数据映射至低维空间以建立高维空间和低维空间的双向映射结构,将所述第三漏洞特征统一在同一时空参考系,对低维空间的数据进行重构优化得到敏感函数的独特特征表示。
S105:基于所述第四漏洞函数构建敏感函数集;
S2:利用HOOK模块用于对所述敏感函数集中的敏感函数进行标记并结合现有区块链安全事件,对造成危害的异常行为进行记录以生成第一异常记录日志;
具体的,所述步骤S2的目的为对现有区块链安全事件中的敏感函数集中的敏感函数进行定位,并对上述区块链安全事件进行监视,
S3:由安全策略模块基于所述第一异常记录日志构建安全执行规则集:
S301安全策略模块利用主成分分析算法对所述第一异常记录日志进行特征提取以生成第二异常记录日志;
具体的,上述第二异常记录日志为高阶矩阵,
S302:安全策略模块利用张量分析方法对所述第二异常记录日志进行降维以生成第三异常记录日志;
S303:基于所述第三异常记录日志构建安全执行规则集;
具体的,所述第三异常记录日志构建数据库,上述执行规则集为上述第三异常记录日志构建的数据库;
在本发明提供的实施例中,所述第三异常记录日志包括资产确认以及漏洞确认;
S4:利用HOOK模块开启RASP引擎以将智能合约字节码载入合约虚拟机基于所述安全执行规则集以及智能合约字节码对漏洞进行处理;
具体的,HOOK为了对敏感函数集中的敏感函数进行监测首先判定智能合约字节码中是否含有所述敏感函数集中涉及的敏感函数,若有,则对敏感函数进行替换以及标记,而后HOOK模块对标记的函数进行监测;
优选的,包括S401:所述HOOK模块开启RASP引擎并对智能合约字节码进行处理以获得第一字节码并将所述第一字节码载入所述合约虚拟机;
进一步的,智能合约字节码往往通过高级汇编语言进行编写(例如solity,go,python),为了能够使将智能合约字节码在合约虚拟机中运行,需要对智能合约字节码进行处理;
可选择的,包括S4011:对上述智能合约字节码进行插桩处理以获取第一字节码;
进一步的,所述智能合约字节码进行插桩之前,对上述智能合约字节码进行AGENT处理;
S4012:所述HOOK模块将所述的第一字节码传输至合约虚拟机;
由此,智能合约字节码可以载入合约虚拟机;
S402:基于所述第一字节码以及敏感函数集,获取所述第一字节码与所述敏感函数集的相似度;
若相似度超过阈值,若相似度超过阈值,则执行S403:对所述第一字节码中与敏感函数集相似的部分利用替代函数进行替代以获取第二字节码并将所述第二字节码传输至合约虚拟机;
若相似度未超过阈值,则不进行任何操作;
在步骤S493后,执行S404:所述HOOK模块对所述第二字节码进行监测并基于所述第二字节码以及安全执行规则集,对风险进行判断;
具体的,结合安全执行规则集中的漏洞确认以及资产确认,所述第二字节码中的漏洞信息以及资产信息,将所述漏洞确认以及漏洞信息、资产确认以及资产信息进行分别对比,获取风险计算值;
进一步的,基于风险计算值将风险程度进行风险等级判定,将风险定为高危、中危、低危以及安全;
若判定为高危或中危,则执行阻断智能合约的运行;
若判定为低危,则发出警告;
若判定为安全,则不执行任何操作。
附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本发明实施例的描述中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

Claims (5)

1.一种基于RASP的智能合约虚拟机漏洞检测系统,其特征在于,包括:安全策略模块以及HOOK模块;
所述安全策略模块用于基于现有区块链安全事件构建敏感函数集并对所述敏感函数集中的敏感函数进行标记并基于第一异常记录日志构建安全执行规则集;
所述HOOK模用于对所述敏感函数集中的敏感函数进行标记并结合现有区块链安全事件,对造成危害的异常行为进行记录以生成第一异常记录日志以及开启RASP引擎以将智能合约字节码载入合约虚拟机并基于所述安全执行规则集以及智能合约字节码对漏洞进行处理。
2.一种利用权利要求1所述的基于RASP的智能合约虚拟机漏洞检测系统的方法,其特征在于,按照如下步骤进行:
S1:利用安全策略模块基于现有区块链安全事件构建敏感函数集;
S2:利用HOOK模块用于对所述敏感函数集中的敏感函数进行标记并结合现有区块链安全事件,对造成危害的异常行为进行记录以生成第一异常记录日志;
S3:由安全策略模块基于所述第一异常记录日志构建安全执行规则集;
S4:利用HOOK模块开启RASP引擎以将智能合约字节码载入合约虚拟机基于所述安全执行规则集以及智能合约字节码对漏洞进行处理。
3.根据权利要求2所述的方法,其特征在于,在步骤S1中:利用安全策略模块基于现有区块链安全事件构建敏感函数集的步骤包括:
S101:基于区块链安全事件进行深度搜索以获得安全事件中所涉及的第一漏洞函数;
S102:对所述第一漏洞函数进行编译并将编译后的漏洞函数进行切片和降噪以获得第二漏洞函数;
S103:利用主成分分析算法对所述第二漏洞函数进行漏洞特征提取以获取第三漏洞函数;
S104:对所述第三漏洞函数利用张量分析方法对漏洞特征进行降维处理以获取第四漏洞函数;
S105:基于所述第四漏洞函数构建敏感函数集。
4.根据权利要求2所述的方法,其特征在于,在所述步骤S3中:由安全策略模块基于所述第一异常记录日志构建安全执行规则集;的步骤包括:
S301:安全策略模块利用主成分分析算法对所述第一异常记录日志进行特征提取以生成第二异常记录日志;
S302:安全策略模块利用张量分析方法对所述第二异常记录日志进行降维以生成第三异常记录日志;
S303:基于所述第三异常记录日志构建安全执行规则集。
5.根据权利要求2所述的方法,其特征在于,在所述S4中:利用HOOK模块开启RASP引擎以将智能合约字节码载入合约虚拟机基于所述安全执行规则集以及智能合约字节码对漏洞进行处理的步骤包括:
S401:所述HOOK模块开启RASP引擎并对智能合约字节码进行处理以获得第一字节码并将所述第一字节码载入所述合约虚拟机;
S402:基于所述第一字节码以及敏感函数集,获取所述第一字节码与所述敏感函数集的相似度;
若相似度超过阈值,则执行S403:对所述第一字节码中与敏感函数集相似的部分利用替代函数进行替代以获取第二字节码并将所述第二字节码传输至合约虚拟机,否则不执行任何操作;
S404:所述HOOK模块对所述第二字节码进行监测并基于所述第二字节码以及安全执行规则集,对风险进行判断;
若判定为高危或中危,则执行阻断智能合约的运行;
若判定为低危,则发出警告;
若判定为安全,则不执行任何操作。
CN201910836064.8A 2019-05-31 2019-09-05 一种基于rasp的智能合约虚拟机漏洞检测系统及方法 Active CN110633567B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201910468575 2019-05-31
CN2019104685759 2019-05-31

Publications (2)

Publication Number Publication Date
CN110633567A CN110633567A (zh) 2019-12-31
CN110633567B true CN110633567B (zh) 2023-01-13

Family

ID=68970238

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910836064.8A Active CN110633567B (zh) 2019-05-31 2019-09-05 一种基于rasp的智能合约虚拟机漏洞检测系统及方法

Country Status (1)

Country Link
CN (1) CN110633567B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111310191B (zh) * 2020-02-12 2022-12-23 广州大学 一种基于深度学习的区块链智能合约漏洞检测方法
CN111311265B (zh) * 2020-02-13 2023-07-25 布比(北京)网络技术有限公司 区块链私密交易证明方法、装置、计算机设备和存储介质
CN111460454A (zh) * 2020-03-13 2020-07-28 中国科学院计算技术研究所 一种基于栈指令序列的智能合约相似度检索方法及系统
CN112799677B (zh) * 2021-02-05 2023-09-12 北京字节跳动网络技术有限公司 一种编译期的hook方法、装置、设备及存储介质
CN113051574B (zh) * 2021-03-11 2023-03-21 哈尔滨工程大学 一种智能合约二进制代码的漏洞检测方法
CN113468524B (zh) * 2021-05-21 2022-05-24 天津理工大学 基于rasp的机器学习模型安全检测方法
CN113595975B (zh) * 2021-06-15 2022-10-14 中国科学院信息工程研究所 一种Java内存Webshell的检测方法及装置
CN116541852B (zh) * 2023-06-26 2023-09-12 中国移动紫金(江苏)创新研究院有限公司 基于区块链的智能合约虚拟机安全加固方法及其系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108959071A (zh) * 2018-06-14 2018-12-07 湖南鼎源蓝剑信息科技有限公司 一种基于RASP的PHP变形webshell的检测方法及系统
CN108985066A (zh) * 2018-05-25 2018-12-11 北京金山安全软件有限公司 一种智能合约安全漏洞检测方法、装置、终端及存储介质
CN108985073A (zh) * 2018-07-18 2018-12-11 成都链安科技有限公司 一种高度自动化的智能合约形式化验证系统及方法
CN109240922A (zh) * 2018-08-30 2019-01-18 北京大学 基于RASP提取webshell软件基因进行webshell检测的方法
CN109492402A (zh) * 2018-10-25 2019-03-19 杭州趣链科技有限公司 一种基于规则引擎的智能合约安全评测方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108985066A (zh) * 2018-05-25 2018-12-11 北京金山安全软件有限公司 一种智能合约安全漏洞检测方法、装置、终端及存储介质
CN108959071A (zh) * 2018-06-14 2018-12-07 湖南鼎源蓝剑信息科技有限公司 一种基于RASP的PHP变形webshell的检测方法及系统
CN108985073A (zh) * 2018-07-18 2018-12-11 成都链安科技有限公司 一种高度自动化的智能合约形式化验证系统及方法
CN109240922A (zh) * 2018-08-30 2019-01-18 北京大学 基于RASP提取webshell软件基因进行webshell检测的方法
CN109492402A (zh) * 2018-10-25 2019-03-19 杭州趣链科技有限公司 一种基于规则引擎的智能合约安全评测方法

Also Published As

Publication number Publication date
CN110633567A (zh) 2019-12-31

Similar Documents

Publication Publication Date Title
CN110633567B (zh) 一种基于rasp的智能合约虚拟机漏洞检测系统及方法
Liang et al. AntMiner: mining more bugs by reducing noise interference
US9424426B2 (en) Detection of malicious code insertion in trusted environments
Aloraini et al. An empirical study of security warnings from static application security testing tools
CN101882102A (zh) 用于自动化计算机支持的系统
Sena et al. Understanding the exception handling strategies of Java libraries: An empirical study
Saccente et al. Project achilles: A prototype tool for static method-level vulnerability detection of Java source code using a recurrent neural network
CN111400719A (zh) 基于开源组件版本识别的固件脆弱性判别方法及系统
Dashevskyi et al. A screening test for disclosed vulnerabilities in foss components
CN107103238A (zh) 用于保护计算机系统免遭恶意对象活动侵害的系统和方法
Bian et al. Detecting bugs by discovering expectations and their violations
CN110414222A (zh) 一种基于组件关联的应用隐私泄露问题检测方法和装置
Pakki et al. Exaggerated error handling hurts! an in-depth study and context-aware detection
Wang et al. GraphSPD: Graph-based security patch detection with enriched code semantics
Di Penta et al. The life and death of statically detected vulnerabilities: An empirical study
Filus et al. Software vulnerabilities in TensorFlow-based deep learning applications
Gong et al. Incorporating Android Code Smells into Java Static Code Metrics for Security Risk Prediction of Android Applications
Sun et al. Propagating bug fixes with fast subgraph matching
Liu et al. PF-Miner: A practical paired functions mining method for Android kernel in error paths
CN1860476B (zh) 用于自动化计算机支持的系统和方法
CN113392016A (zh) 对程序异常情况处理的规约生成方法、装置、设备及介质
Lamothe et al. Assisting example-based api misuse detection via complementary artificial examples
RU2757807C1 (ru) Система и способ обнаружения вредоносного кода в исполняемом файле
CN113961475B (zh) 基于规约导向的错误处理缺陷的检测方法及系统
CN113553593B (zh) 基于语义分析的物联网固件内核漏洞挖掘方法及系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant