CN111586013B - 网络入侵检测方法、装置、节点终端及存储介质 - Google Patents
网络入侵检测方法、装置、节点终端及存储介质 Download PDFInfo
- Publication number
- CN111586013B CN111586013B CN202010357236.6A CN202010357236A CN111586013B CN 111586013 B CN111586013 B CN 111586013B CN 202010357236 A CN202010357236 A CN 202010357236A CN 111586013 B CN111586013 B CN 111586013B
- Authority
- CN
- China
- Prior art keywords
- transactions
- intrusion
- network address
- network
- hash value
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1416—Event detection, e.g. attack signature detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3236—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
- H04L9/3239—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
- H04L9/3252—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures using DSA or related signature schemes, e.g. elliptic based signatures, ElGamal or Schnorr schemes
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Business, Economics & Management (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Finance (AREA)
- Accounting & Taxation (AREA)
- Development Economics (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- Technology Law (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明实施例提供了一种网络入侵检测方法、装置、节点终端及存储介质,其中方法包括:从所述区块链网络产生的多笔交易中获取采用相同随机数的两笔交易;并根据所述两笔交易的签名信息和随机数获取所述两笔交易的签名使用的私钥;若所述私钥中携带有哈希值和编码后的网络地址,且入侵命令哈希表包括所述哈希值,则获取所述两笔交易对应的区块链账户地址,并对所述编码后的网络地址进行解码,得到攻击者服务器的网络地址,其中,所述入侵命令哈希表包括预定义的多个入侵命令中每个入侵命令的哈希值;将所述区块链账户地址和所述攻击者服务器的网络地址加入黑名单数据库中,可以有效可靠地对网络入侵进行检测,从而保证数据的安全。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种网络入侵检测方法、装置、节点终端及存储介质。
背景技术
随着区块链技术的发展,越来越多的攻击者选择使用区块链进行网络入侵,以防止攻击行为被检测到。经研究表明,攻击者使用区块链进行网络入侵的一种方式是:利用数字签名进行CC(Command and Control,指令和控制)攻击,即把CC服务器的控制命令编码于私钥中,而计算机客户端中的Bot程序会解析出私钥,从而得到私钥中隐藏的控制命令,并自动执行该命令从而导致计算机客户端被入侵。因此,如何检测利用上述方式进行网络入侵成为一个亟待解决的问题。
发明内容
本发明实施例提供了一种网络入侵检测方法、装置、节点终端及存储介质,可以有效可靠地对网络入侵进行检测,从而保证数据的安全。
本发明实施例第一方面提供了一种网络入侵检测方法,应用于检测装置,所述检测装置部署于区块链网络的节点终端,包括:
从所述区块链网络产生的多笔交易中获取采用相同随机数的两笔交易;
根据所述两笔交易的签名信息和随机数获取所述两笔交易的签名使用的私钥;
若所述私钥中携带有哈希值和编码后的网络地址,且入侵命令哈希表包括所述哈希值,则获取所述两笔交易对应的区块链账户地址,并对所述编码后的网络地址进行解码,得到攻击者服务器的网络地址,其中,所述入侵命令哈希表包括预定义的多个入侵命令中每个入侵命令的哈希值;
将所述区块链账户地址和所述攻击者服务器的网络地址加入黑名单数据库中。
本发明实施例第二方面提供了一种网络入侵检测装置,所述检测装置部署于区块链网络的节点终端,所述装置包括:
获取模块,用于从所述区块链网络产生的多笔交易中获取采用相同随机数的两笔交易;
所述获取模块,还用于根据所述两笔交易的签名信息和随机数获取所述两笔交易的签名使用的私钥;
处理模块,用于若所述私钥中携带有哈希值和编码后的网络地址,且入侵命令哈希表包括所述哈希值,则获取所述两笔交易对应的区块链账户地址,并对所述编码后的网络地址进行解码,得到攻击者服务器的网络地址,其中,所述入侵命令哈希表包括预定义的多个入侵命令中每个入侵命令的哈希值;
所述处理模块,还用于将所述区块链账户地址和所述攻击者服务器的网络地址加入黑名单数据库中。
本发明实施例第三方面提供了一种节点终端,包括处理器和存储器,所述处理器和存储器相互连接,其中,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行上述第一方面的方法。
本发明实施例第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行上述第一方面的方法。
在本发明实施例中,检测装置从区块链网络产生的多笔交易中获取采用相同随机数的两笔交易,并根据两笔交易的签名信息和随机数获取两笔交易的签名使用的私钥,若私钥中携带有哈希值和编码后的网络地址,且入侵命令哈希表包括哈希值,则获取两笔交易对应的区块链账户地址,并对编码后的网络地址进行解码,得到攻击者服务器的网络地址,其中,入侵命令哈希表包括预定义的多个入侵命令中每个入侵命令的哈希值,将区块链账户地址和攻击者服务器的网络地址加入黑名单数据库中,可以有效可靠地对网络入侵进行检测,从而保证数据的安全。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种网络入侵检测方法的流程示意图;
图2是本发明实施例提供的DER编码格式的示意图;
图3是本发明实施例提供的另一种网络入侵检测方法的流程示意图;
图4是本发明实施例提供的一种网络入侵检测装置的结构示意图;
图5是本发明实施例提供的一种节点终端的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
目前,在一些场景中,利用区块链数字签名进行CC攻击的方法如下:
一、利用椭圆曲线数字签名算法的临时密钥重用攻击,泄露私钥,其原理为:椭圆曲线数字签名算法要求用户每次签名使用的随机数不能重复,如果重复,计算机客户端的Bot程序会根据两次交易的签名消息推算出签名所用的私钥,造成私钥泄露。具体方式如下:
1、假设令第一次签名的消息哈希值为X1,得到的签名值为S1,第二次签名的消息哈希值为X2,得到的签名值S2,两次的随机数均为KE,私钥为d。
2、由椭圆曲线数字签名算法(Elliptic Curve Digital Signature Algorithm,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编码(Distinguishedencoding rules,可辨别编码规则)。当发现两笔交易公钥中的r相同时,保存该两笔交易,并根据两笔交易计算得到私钥d,然后进行hash值对比,如果hash值与预设的入侵命令的hash值相同,则提取出该入侵命令,然后通过Base64解码出CC服务器IP地址。提取CC服务器IP地址后,采用TCP连接的方式进行命令执行后的回连。这样数据就不必要从区块链中传输,直接执行命令后传输至CC服务器。但CC服务器不进行命令的发布,这样逃避杀毒软件的检测。
针对目前没有可靠的技术来检测上述利用数字签名进行CC攻击,本发明实施例通过获取两笔交易的签名信息和随机数获取两笔交易的签名使用的私钥,判断私钥中的哈希值是否在入侵命令哈希表中,若在,则获取两笔交易对应的区块链账户地址,并对编码后的网络地址进行解码,得到攻击者服务器的网络地址,并将区块链账户地址和攻击者服务器的网络地址加入黑名单数据库中,实现对网络入侵的可靠检测。
请参阅图1,为本发明实施例提供的一种网络入侵检测方法的流程示意图。本实施例中所描述的网络入侵检测方法,应用于检测装置,该检测装置部署于区块链网络的节点终端,包括以下步骤:
101、检测装置从区块链网络产生的多笔交易中获取采用相同随机数的两笔交易。
其中,检测装置可以是安全检测系统,该安全检测系统分为服务器端和客户端,服务器端主要进行消息分发和黑名单数据存储,客户端主要对所管理的本地计算机进行消息接收(服务端消息)、调用杀毒软件阻断连接和病毒库提交。
具体的,检测装置通过调用交易网站API(Application Programming Interface,应用程序接口),对该交易网站中所有的交易进行监控,当检测装置发现有采用相同随机数的两笔交易时,从区块链网络中产生的多笔交易中获取该随机数相同的两笔交易。
在一种可行的实施例中,由于每笔交易签名采用DER编码(DistinguishedEncoding Rules,可辨别编码规则),从如图2所示的DER编码的格式可以看出,检测装置可以检测出两个交易是否存在相同的r(随机数)值。因此,检测装置可以获取区块链网络产生的多笔交易和多笔交易中每笔交易的签名信息,根据每笔交易的签名信息从多笔交易中确定出采用相同随机数的两笔交易。
例如,假设检测装置获取区块链中的四笔交易,分别为交易1、交易2、交易3和交易4,以及这四笔交易对应的签名信息,根据这四笔交易对应的签名信息确定出采用相同随机数的两笔交易,如果交易1的随机数为r,交易2的随机数为r,则确定出采用相同随机数这两笔交易分别为交易1和交易2。
在一种可行的实施例中,检测装置发现存在随机数相同的两笔交易,可以先获取两笔交易对应的区块链账户地址,将区块链账户地址放在待确认的数据库中。
102、检测装置根据两笔交易的签名信息和随机数获取上述两笔交易的签名使用的私钥。
具体的,检测装置根据两笔交易中的任意一笔交易的签名信息和随机数通过椭圆数字签名算法获取到两笔交易使用的私钥。其中该签名信息包括签名的哈希值和通过哈希值得到的签名值。
例如,检测装置获取到两笔交易的随机数为r,第一笔交易的消息哈希值为X1,通过消息哈希值得到签名值为S1;第二笔交易的消息哈希值为X2,通过消息哈希值得到签名值为S2,将随机数r带入S1=r-1(X1+r*d)modn或者S2=r-1(X2+r*d)modn,从而得到两笔交易的签名使用的私钥d。
103、若上述私钥中携带有哈希值和编码后的网络地址,且入侵命令哈希表包括该哈希值,则检测装置获取两笔交易对应的区块链账户地址,并对编码后的网络地址进行解码,得到攻击者服务器的网络地址,其中,该入侵命令哈希表包括预定义的多个入侵命令中每个入侵命令的哈希值。
其中,区块链账户地址具体可以是比特币钱包地址或者其他类型的数字货币钱包地址,攻击者服务器可以是CC服务器,例如CC服务器是攻击者入侵计算机后建立的被入侵计算机和服务器之间的连接,通过CC服务器可以向被入侵的计算机入侵命令。该入侵命令可以是截屏、发送文件、访问磁盘和获取用户凭证等命令。该攻击者服务器的网络地址可以是IP地址或者其他类型的地址。
其中,预定义可以理解为已知,检测装置根据已知的入侵命令生成一入侵命令哈希表,以便对后续获取的哈希值进行评估。
具体的,检测装置获得私钥后,提取出私钥中的哈希值和编码后的网络地址,并将提取出来的哈希值与检测装置中保存的入侵命令哈希表对比,若入侵命令哈希表中包括有该哈希值,则检测装置可以获取两笔交易对应的区块链账户地址,并对编码的网络地址利用base64解码,得到解码后的网络地址(即攻击者服务器的网络地址)。
在一种可行的实施例中,检测装置可以获取入侵命令哈希表,并判断入侵命令哈希表是否包括私钥中携带的哈希值,如果判断入侵命令哈希表包括私钥中携带的哈希值,则检测装置获取两笔交易对应的区块链账户地址。
104、检测装置将上述区块链账户地址和上述攻击者服务器的网络地址加入黑名单数据库中。
具体的,检测装置在判断入侵哈希表中包括私钥携带的哈希值后,将获取的区块链账户地址和攻击者服务器的网络地址(解码后的网络地址)加入黑名单数据库。其中,黑名单数据中的区块链账户地址可以用于进行监控,并及时向所有被入侵的节点终端进行预警,攻击者服务器的网络地址则可以用于监控是否已经存在数据回传和窃取的行为。
需要说明的是,本实施例是以随机相同的两笔交易进行举例说明,检测装置可以获取随机数相同的多笔交易(两笔交易以上),通过获取的多笔交易同样可以实现该网络入侵检测。
在本发明实施例中,检测装置从区块链网络产生的多笔交易中获取采用相同随机数的两笔交易,并根据两笔交易的签名信息和随机数获取两笔交易的签名使用的私钥,私钥中携带有哈希值和编码后的网络地址,且入侵命令哈希表包括该哈希值,则获取两笔交易对应的区块链账户地址,并对编码后的网络地址进行解码,得到攻击者服务器的网络地址,然后将区块链账户地址和攻击者服务器的网络地址加入黑名单数据库中,可以有效可靠地对网络入侵进行检测,从而保证数据的安全。
请参阅图3,为本发明实施例提供的另一种网络入侵检测方法的流程示意图。本实施例中所描述的网络入侵检测方法,包括:
301、检测装置获取预定义的攻击者服务器的多个入侵命令。
其中,预定义的攻击者服务器的多个入侵命令可以理解为已知的攻击者服务器的所有入侵命令。
具体的,检测装置获取已知的攻击者服务器的所有入侵命令,例如,攻击者服务器为CC服务器,检测装置可以获取已知的CC服务器的所有入侵命令,该入侵命令包括截屏命令、发送文件命令、访问磁盘命令和获取用户凭证命令等等。
302、检测装置利用信息摘要算法计算得到多个入侵命令中每个入侵命令的哈希值。
具体的,检测装置在获得多个入侵命令之后,利用摘要算法MD5对每个入侵命令计算哈希值。例如,检测装置获取到多个入侵命令,包括截屏命令、发送文件命令、访问磁盘命令和获取用户凭证命令,检测装置对截屏命令进行MD5hash计算,得到对应的哈希值为00740f40257a13bf03b40f54a9fe398c,检测装置对发送文件命令进行MD5 hash计算,得到对应的哈希值为35762e33257b13bf13b40f57a9ec420b,检测装置对访问磁盘命令进行MD5 hash计算,得到对应的哈希值为28364a72531b26ac73f40e57a9bd420b,检测装置对获取用户凭证命令进行MD5 hash计算,得到对应的哈希值为35721b23687c32fc73f40e57a9bd420b。
303、检测装置根据每个入侵命令和对应的哈希值生成入侵命令哈希表。
具体的,检测装置将每个入侵命令和对应的哈希值放入入侵命令哈希表,以便后续检测装置对获取到的私钥中携带的哈希值进行评估,即判断是否为入侵命令对应的哈希值。例如,将上述步骤302中的入侵命令以及入侵命令对应的哈希值生成入侵命令哈希表,结果如表1,其中,每个入侵命令对应一个哈希值。
表1
入侵命令 | 哈希值 |
截屏命令 | 00740f40257a13bf03b40f54a9fe398c |
发送文件命令 | 35762e33257b13bf13b40f57a9ec420b |
访问磁盘命令 | 28364a72531b26ac73f40e57a9bd420b |
获取用户凭证命令 | 35721b23687c32fc73f40e57a9bd420b |
304、检测装置从区块链网络产生的多笔交易中获取采用相同随机数的两笔交易。
305、检测装置根据两笔交易的签名信息和随机数获取两笔交易的签名使用的私钥。
其中,步骤304~305的具体实现方式可以参见上述网络入侵检测方法中步骤101~102中的相关描述,此处不再赘述。
306、若私钥中携带有哈希值和编码后的网络地址,且入侵命令哈希表不包括上述哈希值,则检测装置监测是否存在与对编码后的网络地址解码得到的网络地址建立通信连接的节点终端。
其中,节点终端可以是指平板电脑、手机等等。
具体的,检测装置在获得私钥后,可以提取私钥中携带的哈希值和编码后的网络地址,并将私钥中携带的哈希值与检测装置中保存的入侵命令哈希表对比,如果入侵命令哈希表中不包括该哈希值,检测装置对编码后的网络地址利用base64进行解码,得到解码后的网络地址,并监测是否存在节点终端主动与解码得到的网络地址建立通信连接。
进一步的,检测装置可以是监测一定时间段内(如3天)是否存在节点终端主动与解码得到的网络地址建立通信连接。
例如,检测装置生成如表1所示的入侵命令哈希表,该私钥携带的哈希值为7839ab670fd8053229e1256c7b890ac5,此时检测装置将该哈希值与入侵命令哈希表(表1)对比,发现该哈希值不在入侵命令哈希表中,检测装置对编码后的网络地址利用base64进行解码,得到解码后的网络地址,并在一段时间内(24小时)监测是否存在节点终端与解码得到的网络地址建立通信连接。
在一种可行的实施中,若私钥中携带有哈希值和编码后的网络地址,且入侵命令哈希表不包括哈希值,可以在监测是否存在节点终端主动与解码得到的网络地址建立通信连接前,将对编码后的网络地址解码得到的网络地址加入待确认的数据库,方便后续对该解码得到的网络地址进行处理。
307、若是,则检测装置将解码得到的网络地址确定为攻击者服务器的网络地址,并获取两笔交易对应的区块链账户地址。
具体的,检测装置在监测到存在有节点终端与解码后得到的网络地址建立通信连接后,将解码得到的网络地址认定为攻击者服务器的网络地址,并获取两笔交易对应的区块链账户地址。
308、检测装置将区块链账户地址和攻击者服务器的网络地址加入黑名单数据库中,并将私钥中携带的哈希值添加到上述入侵命令哈希表中。
具体的,检测装置将区块链账户地址和攻击者服务器的网络地址加入黑名单,并对私钥中携带的哈希值利用MD5解析出该哈希值对应的入侵命令,将入侵命令和对应的哈希值添加到入侵命令哈希表中,从而更新入侵命令哈希表,后续检测到该入侵命令对应的哈希值直接将其发送给节点终端进行预警。
在本发明实施例中,检测装置先获取预定义的攻击者服务器的多个入侵命令,并利用信息摘要算法计算每个入侵命令的哈希值,生成入侵命令哈希表,进一步地,检测装置根据两笔交易的签名信息和随机数获取两笔交易的签名使用的私钥,并确定获得的私钥中携带的哈希值不在入侵命令哈希表中,则监测是否存在节点终端与对解码得到的网络地址建立通信连接,若存在建立通信连接,则将解码得到的网络地址确定为攻击者服务器的网络地址,并获取两笔交易对应的区块链账户地址,将上述区块链账户地址和上述攻击者服务器的网络地址加入黑名单数据库中,并将私钥中携带的哈希值添加到入侵命令哈希表中,可以有效可靠地对网络入侵进行检测,从而保证数据的安全。
在一种可行的实施例中,当入侵命令哈希表中包含私钥中携带的哈希值时,此时检测装置确认存在通过数字签名进行命令控制,检测装置向接收到具有该相同随机数的两笔交易的目标节点终端广播预警信息,该预警信息携带有攻击者服务器的网络地址,预警信息用于指示目标节点终端检测是否与攻击者服务器的网络地址建立通信连接,并在建立通信连接的情况下,断开通信连接。
具体的,当入侵命令哈希表中包含私钥中携带的哈希值时,检测装置将编码后的网络地址解码,得到解码后的网络地址,该解码后的网络地址为攻击者服务器的网络地址,将解码后的网络地址携带在预警信息中,并向接收到具有该相同随机数的两笔交易的目标节点终端广播预警信息,目标节点终端在接收到预警信息后,检测是否与攻击者服务器的网络地址建立通信连接,如果建立了通信连接,则目标节点终端断开与该网络地址的通信连接,从而保证数据不被攻击者服务器获取。
在一种可行的实施例中,当入侵命令哈希表中不包含私钥中携带的哈希值时,检测装置监测到有节点终端主动连接对编码后的网络地址进行解码的网络地址,该解码后的网络地址为攻击者服务器的网络地址,此时检测装置确认存在通过数字签名进行命令控制,检测装置向接收到具有该相同随机数的两笔交易的目标节点终端广播预警信息,该预警信息携带有攻击者服务器的网络地址,预警信息用于指示目标节点终端检测是否与攻击者服务器的网络地址建立通信连接,并在建立通信连接的情况下,断开通信连接。
具体的,当入侵命令哈希表中不包含私钥中携带的哈希值时,当检测装置监测到有节点终端主动连接对编码后的网络地址进行解码的网络地址时,检测装置将该解码的网络地址携带在预警信息中,并向接收到具有该相同随机数的两笔交易的目标节点终端广播预警信息,目标节点终端在接收到预警信息后,检测是否与该解码的网络地址建立通信连接,如果建立了通信连接,则目标节点终端断开与该网络地址的通信连接,从而保证数据不被攻击者服务器获取。
进一步,当节点终端检测到与攻击者服务器的网络地址建立通信连接,可以调用杀毒软件对该网络连接进行阻断,并将该服务器的网络地址提交至杀毒软件病毒库中。
在一种可行的实施例中,当入侵命令哈希表中包含私钥中携带的哈希值时,则此时确认存在通过数字签名进行命令控制,检测装置向区块链网络的区块链监控程序发送根据随机数创建的交易,以使得区块链监控程序根据该交易对区块链账户地址中的资源进行转移,并使得区块链账户地址失效。
在一种可行的实施例中,当入侵命令哈希表中不包含私钥中携带的哈希值时,但检测装置监测到有节点终端主动连接对编码后的网络地址进行解码的网络地址,则此时确认存在通过数字签名进行命令控制,检测装置向区块链网络的区块链监控程序发送根据随机数创建的交易,以使得区块链监控程序根据该交易对区块链账户地址中的资源进行转移,并使得区块链账户地址失效。
其中,上述发送根据随机数创建的交易是指发送的所有与该随机数相同的交易。
具体的,当入侵命令哈希表中包含私钥中携带的哈希值时或者当入侵命令哈希表中不包含私钥中携带的哈希值,但检测装置监测到有节点终端主动连接对编码后的网络地址进行解码的网络地址时,检测装置都需要向区块链监控程序发送所有与该随机数相同的交易,然后区块链监控程序根据所有的交易将区块链账户地址中的资源进行转移,使得攻击者的区块链账户地址失效。
请参阅图4,为本发明实施例提供的一种网络入侵检测装置的结构示意图。本实施例中所描述的网络入侵检测装置,应用于检测装置,该检测装置部署于区块链网络的节点终端,包括:
获取模块401,用于从所述区块链网络产生的多笔交易中获取采用相同随机数的两笔交易;
所述获取模块401,还用于根据所述两笔交易的签名信息和随机数获取所述两笔交易的签名使用的私钥;
处理模块402,用于若所述私钥中携带有哈希值和编码后的网络地址,且入侵命令哈希表包括所述哈希值,则获取所述两笔交易对应的区块链账户地址,并对所述编码后的网络地址进行解码,得到攻击者服务器的网络地址,其中,所述入侵命令哈希表包括预定义的多个入侵命令中每个入侵命令的哈希值;
处理模块402,还用于将所述区块链账户地址和所述攻击者服务器的网络地址加入黑名单数据库中。
可选地,处理模块402,具体用于:
获取所述区块链网络产生的多笔交易和所述多笔交易中每笔交易的签名信息;
根据所述每笔交易的签名信息从所述多笔交易中确定出采用相同随机数的两笔交易。
可选地,所述处理模块402,具体用于:
获取所述入侵命令哈希表;
判断所述入侵命令哈希表是否包括所述私钥中携带的哈希值;
若是,则执行所述获取所述两笔交易对应的区块链账户地址的步骤。
可选地,所述装置还包括:监测模块403,其中:
所述监测模块403,用于若所述私钥中携带有哈希值和编码后的网络地址,且所述入侵命令哈希表不包括所述哈希值,则监测是否存在与对所述编码后的网络地址解码得到的网络地址建立通信连接的节点终端;
所述处理模块402,还用于若是,则将所述解码得到的网络地址确定为攻击者服务器的网络地址,并获取所述两笔交易对应的区块链账户地址;
所述处理模块402,还用于将所述区块链账户地址和所述攻击者服务器的网络地址加入所述黑名单数据库中,并将所述私钥中携带的哈希值添加到所述入侵命令哈希表中。
可选地,所述处理模块402,具体用于:
获取预定义的攻击者服务器的多个入侵命令;
利用信息摘要算法计算得到所述多个入侵命令中每个入侵命令的哈希值;
根据所述每个入侵命令和对应的哈希值生成入侵命令哈希表。
可选地,所述处理模块402,具体用于:
向接收到所述两笔交易的目标节点终端广播预警信息,所述预警信息携带有所述攻击者服务器的网络地址,所述预警信息用于指示所述目标节点终端检测是否与所述攻击者服务器的网络地址建立通信连接,并在建立通信连接的情况下,断开所述通信连接。
可选地,所述处理模块402,具体用于:
向所述区块链网络的区块链监控程序发送根据所述随机数创建的交易,以使得所述区块链监控程序根据所述交易对所述区块链账户地址中的资源进行转移,并使得所述区块链账户地址失效。
可以理解的是,本实施例的网络入侵检测装置的各功能模块可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。
在本发明实施例中,获取模块401从区块链网络产生的多笔交易中获取采用相同随机数的两笔交易,并根据两笔交易的签名信息和随机数获取两笔交易的签名使用的私钥,若私钥中携带有哈希值和编码后的网络地址,且入侵命令哈希表包括哈希值,处理模块402则获取两笔交易对应的区块链账户地址,并对编码后的网络地址进行解码,得到攻击者服务器的网络地址,其中,入侵命令哈希表包括预定义的多个入侵命令中每个入侵命令的哈希值,并将区块链账户地址和攻击者服务器的网络地址加入黑名单数据库中,可以有效可靠地对网络入侵进行检测,从而保证数据的安全。
请参阅图5,为本发明实施例提供了一种节点终端的结构示意图。本实施例中所描述的节点终端,包括:处理器501、存储器502以及网络接口503。上述处理器501、存储器502以及网络接口503之间可以交互数据。
上述处理器501可以是中央处理单元(Central Processing Unit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
上述存储器502可以包括只读存储器和随机存取存储器,并向处理器501提供程序指令和数据。存储器502的一部分还可以包括非易失性随机存取存储器。其中,所述处理器501调用所述程序指令时用于执行:
从所述区块链网络产生的多笔交易中获取采用相同随机数的两笔交易;
根据所述两笔交易的签名信息和随机数获取所述两笔交易的签名使用的私钥;
若所述私钥中携带有哈希值和编码后的网络地址,且入侵命令哈希表包括所述哈希值,则获取所述两笔交易对应的区块链账户地址,并对所述编码后的网络地址进行解码,得到攻击者服务器的网络地址,其中,所述入侵命令哈希表包括预定义的多个入侵命令中每个入侵命令的哈希值;
将所述区块链账户地址和所述攻击者服务器的网络地址加入黑名单数据库中。
可选地,所述处理器501,用于:
获取所述区块链网络产生的多笔交易和所述多笔交易中每笔交易的签名信息;
根据所述每笔交易的签名信息从所述多笔交易中确定出采用相同随机数的两笔交易。
可选地,所述处理器501,还用于:
获取所述入侵命令哈希表;
判断所述入侵命令哈希表是否包括所述私钥中携带的哈希值;
若是,则执行所述获取所述两笔交易对应的区块链账户地址的步骤。
可选地,所述处理器501,还用于:
若所述私钥中携带有哈希值和编码后的网络地址,且所述入侵命令哈希表不包括所述哈希值,则监测是否存在与对所述编码后的网络地址解码得到的网络地址建立通信连接的节点终端;
若是,则将所述解码得到的网络地址确定为攻击者服务器的网络地址,并获取所述两笔交易对应的区块链账户地址;
将所述区块链账户地址和所述攻击者服务器的网络地址加入所述黑名单数据库中,并将所述私钥中携带的哈希值添加到所述入侵命令哈希表中。
可选地,所述处理器501,还用于:
获取预定义的攻击者服务器的多个入侵命令;
利用信息摘要算法计算得到所述多个入侵命令中每个入侵命令的哈希值;
根据所述每个入侵命令和对应的哈希值生成入侵命令哈希表。
可选地,所述处理器501,还用于:
向接收到所述两笔交易的目标节点终端广播预警信息,所述预警信息携带有所述攻击者服务器的网络地址,所述预警信息用于指示所述目标节点终端检测是否与所述攻击者服务器的网络地址建立通信连接,并在建立通信连接的情况下,断开所述通信连接。
可选地,所述处理器501,还用于:
向所述区块链网络的区块链监控程序发送根据所述随机数创建的交易,以使得所述区块链监控程序根据所述交易对所述区块链账户地址中的资源进行转移,并使得所述区块链账户地址失效。
具体实现中,本发明实施例中所描述的处理器501、存储器502及网络接口503可执行本发明实施例提供的一种网络入侵检测方法的流程中所描述的实现方式,也可执行本发明实施例提供的一种网络入侵检测装置中所描述的实现方式,在此不再赘述。
在本发明实施例中,所述处理器501从区块链网络产生的多笔交易中获取采用相同随机数的两笔交易,并根据两笔交易的签名信息和随机数获取两笔交易的签名使用的私钥,若私钥中携带有哈希值和编码后的网络地址,且入侵命令哈希表包括哈希值,则获取两笔交易对应的区块链账户地址,并对编码后的网络地址进行解码,得到攻击者服务器的网络地址,其中,入侵命令哈希表包括预定义的多个入侵命令中每个入侵命令的哈希值,并将区块链账户地址和攻击者服务器的网络地址加入黑名单数据库中,可以有效可靠地对网络入侵进行检测,从而保证数据的安全。
本发明实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有程序指令,所述程序执行时可包括如图1或者图3对应实施例中的网络入侵检测方法的部分或全部步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所揭露的仅为本发明一种较佳实施例而已,当然不能以此来限定本发明之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本发明权利要求所作的等同变化,仍属于发明所涵盖的范围。
Claims (10)
1.一种网络入侵检测方法,其特征在于,应用于检测装置,所述检测装置部署于区块链网络的节点终端,所述方法包括:
从所述区块链网络产生的多笔交易中获取采用相同随机数的两笔交易;
根据所述两笔交易的签名信息和随机数获取所述两笔交易的签名使用的私钥;
若所述私钥中携带有哈希值和编码后的网络地址,且入侵命令哈希表包括所述哈希值,则获取所述两笔交易对应的区块链账户地址,并对所述编码后的网络地址进行解码,得到攻击者服务器的网络地址,其中,所述入侵命令哈希表包括预定义的多个入侵命令中每个入侵命令的哈希值;
将所述区块链账户地址和所述攻击者服务器的网络地址加入黑名单数据库中。
2.根据权利要求1所述的方法,其特征在于,所述从所述区块链网络产生的多笔交易中获取采用相同随机数的两笔交易,包括:
获取所述区块链网络产生的多笔交易和所述多笔交易中每笔交易的签名信息;
根据所述每笔交易的签名信息从所述多笔交易中确定出采用相同随机数的两笔交易。
3.根据权利要求1或2所述的方法,其特征在于,所述获取所述两笔交易对应的区块链账户地址之前,所述方法还包括:
获取所述入侵命令哈希表;
判断所述入侵命令哈希表是否包括所述私钥中携带的哈希值;
若是,则执行所述获取所述两笔交易对应的区块链账户地址的步骤。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若所述私钥中携带有哈希值和编码后的网络地址,且所述入侵命令哈希表不包括所述哈希值,则监测是否存在与对所述编码后的网络地址解码得到的网络地址建立通信连接的节点终端;
若是,则将所述解码得到的网络地址确定为攻击者服务器的网络地址,并获取所述两笔交易对应的区块链账户地址;
将所述区块链账户地址和所述攻击者服务器的网络地址加入所述黑名单数据库中,并将所述私钥中携带的哈希值添加到所述入侵命令哈希表中。
5.根据权利要求1所述的方法,其特征在于,所述从所述区块链网络产生的多笔交易中获取采用相同随机数的两笔交易之前,所述方法还包括:
获取预定义的攻击者服务器的多个入侵命令;
利用信息摘要算法计算得到所述多个入侵命令中每个入侵命令的哈希值;
根据所述每个入侵命令和对应的哈希值生成入侵命令哈希表。
6.根据权利要求1或4所述的方法,其特征在于,所述将所述区块链账户地址和所述攻击者服务器的网络地址加入所述黑名单数据库中之后,所述方法还包括:
向接收到所述两笔交易的目标节点终端广播预警信息,所述预警信息携带有所述攻击者服务器的网络地址,所述预警信息用于指示所述目标节点终端检测是否与所述攻击者服务器的网络地址建立通信连接,并在建立通信连接的情况下,断开所述通信连接。
7.根据权利要求1所述的方法,其特征在于,所述将所述区块链账户地址和所述攻击者服务器的网络地址加入所述黑名单数据库中之后,所述方法还包括:
向所述区块链网络的区块链监控程序发送根据所述随机数创建的交易,以使得所述区块链监控程序根据所述交易对所述区块链账户地址中的资源进行转移,并使得所述区块链账户地址失效。
8.一种网络入侵检测装置,其特征在于,所述检测装置部署于区块链网络的节点终端,所述装置包括:
获取模块,用于从所述区块链网络产生的多笔交易中获取采用相同随机数的两笔交易;
所述获取模块,还用于根据所述两笔交易的签名信息和随机数获取所述两笔交易的签名使用的私钥;
处理模块,用于若所述私钥中携带有哈希值和编码后的网络地址,且入侵命令哈希表包括所述哈希值,则获取所述两笔交易对应的区块链账户地址,并对所述编码后的网络地址进行解码,得到攻击者服务器的网络地址,其中,所述入侵命令哈希表包括预定义的多个入侵命令中每个入侵命令的哈希值;
所述处理模块,还用于将所述区块链账户地址和所述攻击者服务器的网络地址加入黑名单数据库中。
9.一种节点终端,其特征在于,包括处理器和存储器,所述处理器和存储器相互连接,其中,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行如权利要求1-7任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行如权利要求1-7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010357236.6A CN111586013B (zh) | 2020-04-29 | 2020-04-29 | 网络入侵检测方法、装置、节点终端及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010357236.6A CN111586013B (zh) | 2020-04-29 | 2020-04-29 | 网络入侵检测方法、装置、节点终端及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111586013A CN111586013A (zh) | 2020-08-25 |
CN111586013B true CN111586013B (zh) | 2022-02-22 |
Family
ID=72124966
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010357236.6A Active CN111586013B (zh) | 2020-04-29 | 2020-04-29 | 网络入侵检测方法、装置、节点终端及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111586013B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111988421B (zh) * | 2020-08-28 | 2021-04-16 | 清华大学 | 基于区块链的DDoS攻击日志摘要记录方法和系统 |
CN116405187B (zh) * | 2023-04-21 | 2024-04-09 | 石家庄铁道大学 | 基于区块链的分布式节点入侵态势感知方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108399533A (zh) * | 2018-02-07 | 2018-08-14 | 深圳壹账通智能科技有限公司 | 交易处理方法、装置、计算机设备和存储介质 |
CN109359978A (zh) * | 2018-10-08 | 2019-02-19 | 全链通有限公司 | 基于区块链网络的智能合约交易方法和系统 |
WO2019148783A1 (zh) * | 2018-01-30 | 2019-08-08 | 深圳壹账通智能科技有限公司 | 交易处理方法、装置、计算机设备和存储介质 |
CN110601819A (zh) * | 2019-09-26 | 2019-12-20 | 腾讯科技(深圳)有限公司 | 一种对随机数的处理方法及相关设备 |
-
2020
- 2020-04-29 CN CN202010357236.6A patent/CN111586013B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019148783A1 (zh) * | 2018-01-30 | 2019-08-08 | 深圳壹账通智能科技有限公司 | 交易处理方法、装置、计算机设备和存储介质 |
CN108399533A (zh) * | 2018-02-07 | 2018-08-14 | 深圳壹账通智能科技有限公司 | 交易处理方法、装置、计算机设备和存储介质 |
CN109359978A (zh) * | 2018-10-08 | 2019-02-19 | 全链通有限公司 | 基于区块链网络的智能合约交易方法和系统 |
CN110601819A (zh) * | 2019-09-26 | 2019-12-20 | 腾讯科技(深圳)有限公司 | 一种对随机数的处理方法及相关设备 |
Non-Patent Citations (1)
Title |
---|
基于区块链技术的僵尸网络命令控制信道研究;李德奇,胡大裟,刘云霞,蒋玉明;《现代计算机》;20200315(第08期);第30-36页 * |
Also Published As
Publication number | Publication date |
---|---|
CN111586013A (zh) | 2020-08-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11509685B2 (en) | Cyberattack prevention system | |
US10430586B1 (en) | Methods of identifying heap spray attacks using memory anomaly detection | |
KR100919536B1 (ko) | 복제된 디바이스를 식별하기 위해 동적 자격 증명을사용하는 시스템 및 방법 | |
US9003519B2 (en) | Verifying transactions using out-of-band devices | |
US9578004B2 (en) | Authentication of API-based endpoints | |
EP3270317B1 (en) | Dynamic security module server device and operating method thereof | |
CN108805571B (zh) | 数据保护方法、平台、区块链节点、系统和存储介质 | |
CN110247897B (zh) | 一种系统登录方法、设备、网关及计算机可读存储介质 | |
CN111586013B (zh) | 网络入侵检测方法、装置、节点终端及存储介质 | |
CN110943840B (zh) | 一种签名验证方法 | |
CN111800262A (zh) | 数字资产的处理方法、装置和电子设备 | |
CN111901124B (zh) | 一种通信安全防护方法、装置及电子设备 | |
US10122755B2 (en) | Method and apparatus for detecting that an attacker has sent one or more messages to a receiver node | |
CN113225324A (zh) | 区块链匿名账户创建方法、系统、设备及存储介质 | |
CN112968910A (zh) | 一种防重放攻击方法和装置 | |
CN115118504B (zh) | 知识库更新方法、装置、电子设备及存储介质 | |
CN113132310A (zh) | 一种配电终端与配电主站的安全接入方法及系统 | |
CN116132149A (zh) | 防篡改通信方法、装置、服务器、智能家居及终端设备 | |
CN115396154A (zh) | 访问鉴权方法、装置、电子设备和存储介质 | |
CN110933028B (zh) | 报文传输方法、装置、网络设备及存储介质 | |
CN113225348A (zh) | 请求防重放校验方法和装置 | |
CN115412271A (zh) | 数据水印添加方法及数据安全分析方法、装置 | |
US7584366B2 (en) | Methods, systems and computer program products for detecting tampering of electronic equipment based on constrained time to obtain computational result | |
CN114245183B (zh) | 推流数据鉴权方法及装置 | |
CN113824693B (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 |