网络入侵检测方法、装置、节点终端及存储介质制造方法及图纸

技术编号:25406358 阅读:16 留言:0更新日期:2020-08-25 23:09
本发明专利技术实施例提供了一种网络入侵检测方法、装置、节点终端及存储介质,其中方法包括:从所述区块链网络产生的多笔交易中获取采用相同随机数的两笔交易;并根据所述两笔交易的签名信息和随机数获取所述两笔交易的签名使用的私钥;若所述私钥中携带有哈希值和编码后的网络地址,且入侵命令哈希表包括所述哈希值,则获取所述两笔交易对应的区块链账户地址,并对所述编码后的网络地址进行解码,得到攻击者服务器的网络地址,其中,所述入侵命令哈希表包括预定义的多个入侵命令中每个入侵命令的哈希值;将所述区块链账户地址和所述攻击者服务器的网络地址加入黑名单数据库中,可以有效可靠地对网络入侵进行检测,从而保证数据的安全。

【技术实现步骤摘要】
网络入侵检测方法、装置、节点终端及存储介质
本专利技术涉及计算机
,尤其涉及一种网络入侵检测方法、装置、节点终端及存储介质。
技术介绍
随着区块链技术的发展,越来越多的攻击者选择使用区块链进行网络入侵,以防止攻击行为被检测到。经研究表明,攻击者使用区块链进行网络入侵的一种方式是:利用数字签名进行CC(CommandandControl,指令和控制)攻击,即把CC服务器的控制命令编码于私钥中,而计算机客户端中的Bot程序会解析出私钥,从而得到私钥中隐藏的控制命令,并自动执行该命令从而导致计算机客户端被入侵。因此,如何检测利用上述方式进行网络入侵成为一个亟待解决的问题。
技术实现思路
本专利技术实施例提供了一种网络入侵检测方法、装置、节点终端及存储介质,可以有效可靠地对网络入侵进行检测,从而保证数据的安全。本专利技术实施例第一方面提供了一种网络入侵检测方法,应用于检测装置,所述检测装置部署于区块链网络的节点终端,包括:从所述区块链网络产生的多笔交易中获取采用相同随机数的两笔交易;根据所述两笔交易的签名信息和随机数获取所述两笔交易的签名使用的私钥;若所述私钥中携带有哈希值和编码后的网络地址,且入侵命令哈希表包括所述哈希值,则获取所述两笔交易对应的区块链账户地址,并对所述编码后的网络地址进行解码,得到攻击者服务器的网络地址,其中,所述入侵命令哈希表包括预定义的多个入侵命令中每个入侵命令的哈希值;将所述区块链账户地址和所述攻击者服务器的网络地址加入黑名单数据库中。本专利技术实施例第二方面提供了一种网络入侵检测装置,所述检测装置部署于区块链网络的节点终端,所述装置包括:获取模块,用于从所述区块链网络产生的多笔交易中获取采用相同随机数的两笔交易;所述获取模块,还用于根据所述两笔交易的签名信息和随机数获取所述两笔交易的签名使用的私钥;处理模块,用于若所述私钥中携带有哈希值和编码后的网络地址,且入侵命令哈希表包括所述哈希值,则获取所述两笔交易对应的区块链账户地址,并对所述编码后的网络地址进行解码,得到攻击者服务器的网络地址,其中,所述入侵命令哈希表包括预定义的多个入侵命令中每个入侵命令的哈希值;所述处理模块,还用于将所述区块链账户地址和所述攻击者服务器的网络地址加入黑名单数据库中。本专利技术实施例第三方面提供了一种节点终端,包括处理器和存储器,所述处理器和存储器相互连接,其中,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行上述第一方面的方法。本专利技术实施例第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行上述第一方面的方法。在本专利技术实施例中,检测装置从区块链网络产生的多笔交易中获取采用相同随机数的两笔交易,并根据两笔交易的签名信息和随机数获取两笔交易的签名使用的私钥,若私钥中携带有哈希值和编码后的网络地址,且入侵命令哈希表包括哈希值,则获取两笔交易对应的区块链账户地址,并对编码后的网络地址进行解码,得到攻击者服务器的网络地址,其中,入侵命令哈希表包括预定义的多个入侵命令中每个入侵命令的哈希值,将区块链账户地址和攻击者服务器的网络地址加入黑名单数据库中,可以有效可靠地对网络入侵进行检测,从而保证数据的安全。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术实施例提供的一种网络入侵检测方法的流程示意图;图2是本专利技术实施例提供的DER编码格式的示意图;图3是本专利技术实施例提供的另一种网络入侵检测方法的流程示意图;图4是本专利技术实施例提供的一种网络入侵检测装置的结构示意图;图5是本专利技术实施例提供的一种节点终端的结构示意图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。目前,在一些场景中,利用区块链数字签名进行CC攻击的方法如下:一、利用椭圆曲线数字签名算法的临时密钥重用攻击,泄露私钥,其原理为:椭圆曲线数字签名算法要求用户每次签名使用的随机数不能重复,如果重复,计算机客户端的Bot程序会根据两次交易的签名消息推算出签名所用的私钥,造成私钥泄露。具体方式如下:1、假设令第一次签名的消息哈希值为X1,得到的签名值为S1,第二次签名的消息哈希值为X2,得到的签名值S2,两次的随机数均为KE,私钥为d。2、由椭圆曲线数字签名算法(EllipticCurveDigitalSignatureAlgorithm,ECDSA)可得第一次签名值和第二次签名值表达式为:可得:因此,KE=(S1-S2)-1*(X1-X2)modn最后再把KE值代入S1或者S2的等式,就能计算私钥d。二、比特币区块链中的ECC(椭圆曲线密码)私钥长度为32字节,把命令和CC服务器地址隐藏于私钥中,通过重复随机数的方式泄露私钥,Bot程序从而可以从私钥中获取命令并执行命令。三、攻击者利用上述原理预先对入侵命令进行编码(通常使用MD5对命令进行Hash运算)获得唯一的hash值(Bot程序中存储着预设的入侵命令,CC服务器IP地址仅进行Base64编码(可逆)),然后生成私钥,使用此私钥生成公钥和比特币地址。使用生成的比特币地址创建两个交易,并使用相同的随机密钥对这两笔交易进行签名,并先后发布转账到安装有该Bot程序的客户端的硬编码的比特币地址。四、Bot程序监听硬编码的比特币地址,交易签名采用DER编码(Distinguishedencodingrules,可辨别编码规则)。当发现两笔交易公钥中的r相同时,保存该两笔交易,并根据两笔交易计算得到私钥d,然后进行hash值对比,如果hash值与预设的入侵命令的hash值相同,则提取出该入侵命令,然后通过Base64解码出CC服务器IP地址。提取CC服务器IP地址后,采用TCP连接的方式进行命令执行后的回连。这样数据就不必要从区块链中传输,直接执行命令后传输至CC服务器。但CC服务器不进行命令的发布,这样逃避杀毒软件的检测。针对目前没有可靠的技术来检测上述利用数字签名进行CC攻击,本专利技术实施例通过获取两笔交易的签名信息和随机数获取两笔交易的签名使用的私钥,判断私钥中的哈希值是否在入侵命令哈希表中,若在,则获取两笔交易对应的区块链账户地址,并对编码后的网络地址进行解码,得到攻击者本文档来自技高网...

【技术保护点】
1.一种网络入侵检测方法,其特征在于,应用于检测装置,所述检测装置部署于区块链网络的节点终端,所述方法包括:/n从所述区块链网络产生的多笔交易中获取采用相同随机数的两笔交易;/n根据所述两笔交易的签名信息和随机数获取所述两笔交易的签名使用的私钥;/n若所述私钥中携带有哈希值和编码后的网络地址,且入侵命令哈希表包括所述哈希值,则获取所述两笔交易对应的区块链账户地址,并对所述编码后的网络地址进行解码,得到攻击者服务器的网络地址,其中,所述入侵命令哈希表包括预定义的多个入侵命令中每个入侵命令的哈希值;/n将所述区块链账户地址和所述攻击者服务器的网络地址加入黑名单数据库中。/n

【技术特征摘要】
1.一种网络入侵检测方法,其特征在于,应用于检测装置,所述检测装置部署于区块链网络的节点终端,所述方法包括:
从所述区块链网络产生的多笔交易中获取采用相同随机数的两笔交易;
根据所述两笔交易的签名信息和随机数获取所述两笔交易的签名使用的私钥;
若所述私钥中携带有哈希值和编码后的网络地址,且入侵命令哈希表包括所述哈希值,则获取所述两笔交易对应的区块链账户地址,并对所述编码后的网络地址进行解码,得到攻击者服务器的网络地址,其中,所述入侵命令哈希表包括预定义的多个入侵命令中每个入侵命令的哈希值;
将所述区块链账户地址和所述攻击者服务器的网络地址加入黑名单数据库中。


2.根据权利要求1所述的方法,其特征在于,所述从所述区块链网络产生的多笔交易中获取采用相同随机数的两笔交易,包括:
获取所述区块链网络产生的多笔交易和所述多笔交易中每笔交易的签名信息;
根据所述每笔交易的签名信息从所述多笔交易中确定出采用相同随机数的两笔交易。


3.根据权利要求1或2所述的方法,其特征在于,所述获取所述两笔交易对应的区块链账户地址之前,所述方法还包括:
获取所述入侵命令哈希表;
判断所述入侵命令哈希表是否包括所述私钥中携带的哈希值;
若是,则执行所述获取所述两笔交易对应的区块链账户地址的步骤。


4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若所述私钥中携带有哈希值和编码后的网络地址,且所述入侵命令哈希表不包括所述哈希值,则监测是否存在与对所述编码后的网络地址解码得到的网络地址建立通信连接的节点终端;
若是,则将所述解码得到的网络地址确定为攻击者服务器的网络地址,并获取所述两笔交易对应的区块链账户地址;
将所述区块链账户地址和所述攻击者服务器的网络地址加入所述黑名单数据库中,并将所述私钥中携带的哈希值添加到所述入侵命令哈希表中。


5.根据权利要求1所述的方法,其特征在于,所述从所述区块链网络产生的多笔交易中获取采用相同随机数的两笔交易之前,所述方法还包括:
获取预定义的攻击者服务器的多个入侵命令;
利用信息摘要算法计算得到所述多个入侵命令中每个入...

【专利技术属性】
技术研发人员:张登超
申请(专利权)人:数网金融有限公司
类型:发明
国别省市:中国香港;81

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1