[发明专利]一种恶意智能合约识别方法及装置在审
申请号: | 202110742535.6 | 申请日: | 2021-06-30 |
公开(公告)号: | CN113569250A | 公开(公告)日: | 2021-10-29 |
发明(设计)人: | 苏申;李柯斌;田志宏;鲁辉;林链升 | 申请(专利权)人: | 广州大学 |
主分类号: | G06F21/57 | 分类号: | G06F21/57;G06F21/56 |
代理公司: | 广州三环专利商标代理有限公司 44202 | 代理人: | 郭浩辉;颜希文 |
地址: | 510006 广东省广*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 恶意 智能 合约 识别 方法 装置 | ||
本发明提供了一种恶意智能合约识别方法及装置,所述方法包括:获取智能合约的实时数据;基于预设的异常状态模型,从所述实时数据中提取出特征变量,并根据所述特征变量通过预设的操作函数进行计算得到待测数据;当判断所述待测数据落在所述异常状态模型的异常数值区间时,则将与该待测数据相对应的智能合约判定为合约状态异常。本发明通过对监测到的实时数据经过一系列算法后会得出一组待测数据,当判断待测数据落在区间内则判定为异常状态。由于本发明数据监测的异常状态判断依据是区间,因此适用范围较大,从而有效提升了智能合约异常检测的效果。
技术领域
本发明涉及电子信息技术领域,尤其是涉及一种恶意智能合约识别方法及装置。
背景技术
智能合约是一种可以由互不信任的网络节点共同执行已被双方认证的程序,该程序通过特定的共识协议以数字方式强制节点执行:任何节点甚至智能合约的创建者均无法修改智能合约代码、影响代码执行。而且智能合约在链上无法像传统程序那样通过钩子函数对恶意行为进行阻拦,并且发现漏洞和解决漏洞总存在滞后性。用户委托智能合约来处理和转让有价值的资产,这吸引了大量的黑客关注与大量的恶意攻击。而由于智能合约上链后无法修改的特性,智能合约受到恶意攻击往往会导致比常规网络系统上的攻击更加严重的后果。因此如果能在攻击开始之前判断出该次操作是恶意行为,则可以提高智能合约的安全性。
目前,现有相关技术针对异常状态的检测方式通过调用指令序列的行为信息,将其与预设的攻击特征进行匹配验证,判断其行为是否属于恶意行为。然而这种方式存在一个缺点:需要给出已知漏洞的指令序列,指令序列是精确的,而同一类漏洞是大同小异的,但不一定每个漏洞都会完全按照预设的指令序列执行,因此现有技术的缺点在于定义的指令序列适用范围小。
发明内容
本发明旨在提供一种恶意智能合约识别方法及装置,以解决现有技术对于异常状态的检测方式存在适用范围小的问题。
为了解决上述技术问题,本发明提供了一种恶意智能合约识别方法,包括:
获取智能合约的实时数据;
基于预设的异常状态模型,从所述实时数据中提取出特征变量,并根据所述特征变量通过预设的操作函数进行计算得到待测数据;
当判断所述待测数据落在所述异常状态模型的异常数值区间时,则将与该待测数据相对应的智能合约判定为合约状态异常。
进一步地,所述的恶意智能合约识别方法还包括:
根据预先构建的无诱饵代币蜜罐合约项目获取攻击者的攻击信息;
根据所述攻击信息对所述异常状态模型进行更新。
进一步地,所述的恶意智能合约识别方法还包括:
当判定智能合约为合约状态异常时,或当所述无诱饵代币蜜罐合约项目获取到攻击信息时,利用预先构建的判别网络识别出具有关联关系的关联智能合约,并对所述关联智能合约进行攻击测试。
进一步地,所述当判定智能合约为合约状态异常时,或当所述无诱饵代币蜜罐合约项目获取到攻击信息时,利用预先构建的判别网络识别出具有关联关系的关联智能合约,并对所述关联智能合约进行攻击测试,具体包括:
当判定智能合约为合约状态异常时,提取该智能合约的特征数据和所受到攻击的攻击特征;其中,所述特征数据包括调用关系、继承关系、业务特征、状态特征、接口特征、控制流图;
利用所述判别网络根据所述特征数据识别出具有关联关系的关联智能合约,并利用所述攻击特征对所述关联智能合约进行攻击测试。
进一步地,所述当判定智能合约为合约状态异常时,或当所述无诱饵代币蜜罐合约项目获取到攻击信息时,利用预先构建的判别网络识别出具有关联关系的关联智能合约,并对所述关联智能合约进行攻击测试,具体包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广州大学,未经广州大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110742535.6/2.html,转载请声明来源钻瓜专利网。