CN114679332A - 一种分布式系统的apt检测方法 - Google Patents

一种分布式系统的apt检测方法 Download PDF

Info

Publication number
CN114679332A
CN114679332A CN202210391517.2A CN202210391517A CN114679332A CN 114679332 A CN114679332 A CN 114679332A CN 202210391517 A CN202210391517 A CN 202210391517A CN 114679332 A CN114679332 A CN 114679332A
Authority
CN
China
Prior art keywords
apt
apt detection
node
detection model
local
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.)
Pending
Application number
CN202210391517.2A
Other languages
English (en)
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 of Technology ZJUT
Original Assignee
Zhejiang University of Technology ZJUT
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 of Technology ZJUT filed Critical Zhejiang University of Technology ZJUT
Priority to CN202210391517.2A priority Critical patent/CN114679332A/zh
Publication of CN114679332A publication Critical patent/CN114679332A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1416Event detection, e.g. attack signature detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3066Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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/3247Cryptographic 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/3252Cryptographic 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)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Algebra (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明公开了一种分布式系统的APT检测方法,分布式系统中的各客户端节点使用自己的系统日志数据迭代训练APT检测请求节点发送的全局APT检测模型,得到本地APT检测模型。这些客户端节点再通过网络将更新的本地APT检测模型发送到APT检测请求节点。APT检测请求节点收到这些更新后模型参数进行聚合得到下一次迭代的全局APT检测模型。各客户端节点和APT检测请求节点都重复上述过程,直到全局APT检测模型收敛。保证了各客户端节点数据的隐私性、安全性,在各节点数据不出本地的情况下进行模型训练,降低模型参数被修改、伪造的风险。

Description

一种分布式系统的APT检测方法
技术领域
本发明属于信息安全技术领域,具体涉及一种在分布式系统下保证各节点数据安全的APT检测方法。
背景技术
随着互联网业务量的增加,对于互联网应用系统的数据量和任务量飞速增长。分布式系统由一组通过网络通信、完成共同的任务而协调工作的计算机节点组成。网络之间的传输是存在数据安全隐患的,APT攻击手段多样而且持续时间长,长时间跨度下只会产生极少量的攻击流量,这些攻击还混杂在大量的正常流量中,现有安全检测系统(如防火墙,入侵检测系统)很难发现,而且传统的流量检测方式存在数据隐私安全问题。一旦分布式系统中的某个节点遭受攻击,很容易传播给其余节点,危害整个系统的安全。
随着基于机器学习的网络攻击检测方法的发展,基于深度学习的APT检测方法受到了广泛关注。其通过对大量正常样本与攻击样本的分析,对APT攻击建立模型,可以发现APT攻击的非线性隐藏特征,具有较高的准确率。
但是这种方式下,还是存在一些安全性问题,各个模型更新数据在网络中的传输是不安全的,如果攻击者伪造、修改这些参数,来使得全局模型对某些特定的攻击检测绕过或者使得全局模型收敛不到一个好的效果。而且各个节点本地的系统数据因为其在分布式系统中的功能、任务不同可能有非常大的差异性,各个节点如果将自己的训练数据发送给第三方进行深度学习,存在数据隐私的问题。
发明内容
本发明的目的在于提供一种分布式系统的APT检测方法,在保证各客户端节点数据安全的同时提高APT检测的准确性。
为实现上述目的,本发明所采取的技术方案为:
一种分布式系统的APT检测方法,该分布式系统中包含APT检测请求节点和参与全局APT检测模型训练的客户端节点,由所述APT检测请求节点和所述客户端节点组成基于智能合约与联邦学习的私有区块链,所述分布式系统的APT检测方法实施在APT检测请求节点,包括:
步骤1、使用基于身份认证的加解密技术将本节点在分布式系统中的唯一性ID作为公钥,使用椭圆曲线算法生成私钥,并将包含公钥的消息广播至各个客户端节点;
步骤2、将全局APT检测模型使用私钥进行签名,将签名后的全局APT检测模型广播至各个客户端节点;所述全局APT检测模型用于客户端节点验签后利用自身节点的系统日志数据进行训练,训练完成作为更新后的本地APT检测模型使用APT检测请求节点的公钥进行加密并反馈至APT检测请求节点;
步骤3、接收各个客户端节点发送的训练后的本地APT检测模型并使用私钥进行解密,利用基于质量证明的共识机制验证本地APT检测模型,对生成有效的本地APT检测模型的客户端节点进行奖励或提升信任评分;
步骤4、根据有效的本地APT检测模型使用聚合算法更新APT检测请求节点中的全局APT检测模型;
步骤5、若APT检测请求节点中的全局APT检测模型未收敛,则返回步骤2继续训练;否则利用多轮更新收敛后的全局APT检测模型对该分布式系统下的APT攻击进行检测。
以下还提供了若干可选方式,但并不作为对上述总体方案的额外限定,仅仅是进一步的增补或优选,在没有技术或逻辑矛盾的前提下,各可选方式可单独针对上述总体方案进行组合,还可以是多个可选方式之间进行组合。
作为优选,所述全局APT检测模型用于客户端节点验签后利用自身节点的系统日志数据进行训练,包括:
客户端节点对APT检测请求节点广播的全局APT检测模型进行验签;
验签通过后,根据本客户端节点系统日志数据中涉及的系统行为构建系统行为图;
对系统行为图进行随机游走采样,基于Skip-Gram算法对采样得到的大量节点序列进行学习,得到每个节点的嵌入表征向量;
针对每个节点的嵌入表征向量采用注意力机制,设置激活函数得到总体表征向量,利用总体表征向量,采用多层感知机作为分类器对全局APT检测模型进行训练。
作为优选,所述利用基于质量证明的共识机制验证本地APT检测模型,包括:
使用检测准确度偏差量化所述本地APT检测模型的性能;
将检测准确度偏差高于设定阈值的本地APT检测模型标记为无效的本地APT检测模型,反之标记为有效的本地APT检测模型。
作为优选,所述使用检测准确度偏差量化所述本地APT检测模型的性能,包括:
若私有区块链中共有N个客户端节点,APT检测请求节点每轮迭代选择Q个客户端节点进行联邦学习的聚合,Q≤N,第t个客户端节点Ct(Ct∈Q)在第i次迭代中反馈给APT检测请求节点的本地APT检测模型为
Figure BDA0003595782820000031
则该本地APT检测模型的检测准确度偏差量化如下:
Figure BDA0003595782820000032
式中,yi为本地APT检测模型
Figure BDA0003595782820000033
检测的真实值,f(xi)为本地APT检测模型
Figure BDA0003595782820000034
输出的预测值,
Figure BDA0003595782820000035
为第i次迭代中客户端节点Ct的信任评分,n为客户端节点Ct参与迭代的总次数,计算得到的检测准确度偏差
Figure BDA0003595782820000036
越高,代表客户端节点Ct反馈的全局APT检测模型
Figure BDA0003595782820000037
的检测准确度越低,训练效果越差。
作为优选,在对生成有效的本地APT检测模型的客户端节点进行奖励或提升信任评分之后,还包括:
打包出一个区块,将所述区块上链,广播通知分布式系统中所有节点,所述区块至少包括参与训练的所有客户端节点提供的本地APT检测模型的参数的哈希值和参与训练的所有客户端节点在分布式系统中的唯一性ID的哈希值。
本申请还提供一种分布式系统的APT检测方法,该分布式系统中包含APT检测请求节点和参与全局APT检测模型训练的客户端节点,由所述APT检测请求节点和所述客户端节点组成基于智能合约与联邦学习的私有区块链,所述分布式系统的APT检测方法实施在各个客户端节点,包括:
步骤1、接收APT检测请求节点广播的消息得到APT检测请求节点的公钥;所述APT检测请求节点的公钥为使用基于身份认证的加解密技术根据APT检测请求节点在分布式系统中的唯一性ID生成,对应的私钥由椭圆曲线算法生成;
步骤2、接收APT检测请求节点广播的使用私钥签名后的全局APT检测模型;
步骤3、对全局APT检测模型验签后利用自身节点的系统日志数据进行训练,训练完成作为更新后的本地APT检测模型;
步骤4、使用APT检测请求节点的公钥对更新后的本地APT检测模型进行加密并反馈至APT检测请求节点;反馈至APT检测请求节点的本地APT检测模型供APT检测请求节点解密后利用基于质量证明的共识机制验证并使用聚合算法更新APT检测请求节点中的全局APT检测模型。
作为优选,所述对全局APT检测模型验签后利用自身节点的系统日志数据进行训练,包括:
对APT检测请求节点广播的全局APT检测模型进行验签;
验签通过后,根据本客户端节点系统日志数据中涉及的系统行为构建系统行为图;
对系统行为图进行随机游走采样,基于Skip-Gram算法对采样得到的大量节点序列进行学习,得到每个节点的嵌入表征向量;
针对每个节点的嵌入表征向量采用注意力机制,设置激活函数得到总体表征向量,利用总体表征向量,采用多层感知机作为分类器对全局APT检测模型进行训练。
作为优选,所述利用基于质量证明的共识机制验证本地APT检测模型,包括:
使用检测准确度偏差量化所述本地APT检测模型的性能;
将检测准确度偏差高于设定阈值的本地APT检测模型标记为无效的本地APT检测模型,反之标记为有效的本地APT检测模型。
作为优选,所述使用检测准确度偏差量化所述本地APT检测模型的性能,包括:
若私有区块链中共有N个客户端节点,APT检测请求节点每轮迭代选择Q个客户端节点进行联邦学习的聚合,Q≤N,第t个客户端节点Ct(Ct∈Q)在第i次迭代中反馈给APT检测请求节点的本地APT检测模型为
Figure BDA0003595782820000041
则该本地APT检测模型的检测准确度偏差量化如下:
Figure BDA0003595782820000042
式中,yi为本地APT检测模型
Figure BDA0003595782820000043
检测的真实值,f(xi)为本地APT检测模型
Figure BDA0003595782820000044
输出的预测值,
Figure BDA0003595782820000045
为第i次迭代中客户端节点Ct的信任评分,n为客户端节点Ct参与迭代的总次数,计算得到的检测准确度偏差
Figure BDA0003595782820000051
越高,代表客户端节点Ct反馈的全局APT检测模型
Figure BDA0003595782820000052
的检测准确度越低,训练效果越差。
作为优选,还包括:APT检测请求节点利用基于质量证明的共识机制验证后,对生成有效的本地APT检测模型的客户端节点进行奖励或提升信任评分;
打包出一个区块,将所述区块上链,广播通知分布式系统中所有节点,所述区块至少包括参与训练的所有客户端节点提供的本地APT检测模型的参数的哈希值和参与训练的所有客户端节点在分布式系统中的唯一性ID的哈希值。
本发明提供的分布式系统的APT检测方法,对于数据隐私问题结合联邦学习的方式,分布式系统中的各客户端节点使用自己的系统日志数据迭代训练APT检测请求节点发送的全局APT检测模型,得到本地APT检测模型。这些客户端节点再通过网络将更新的本地APT检测模型发送到APT检测请求节点。APT检测请求节点收到这些更新后模型参数进行聚合得到下一次迭代的全局APT检测模型。各客户端节点和APT检测请求节点都重复上述过程,直到全局APT检测模型收敛。保证了各客户端节点数据的隐私性、安全性,在各节点数据不出本地的情况下进行模型训练,降低模型参数被修改、伪造的风险。对于网络传输不安全的问题,使用IBE(Identity-Based Encryption)基于身份认证的加解密技术,对模型参数进行加密处理。
附图说明
图1为本发明的分布式系统的APT检测方法实施在APT检测请求节点的流程图;
图2为本发明一种实施例系统行为图;
图3为本发明的分布式系统的APT检测方法实施在各个客户端节点的流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是在于限制本发明。
实施例1:
本实施例提供一种分布式系统的APT检测方法,解决现有技术中分布式系统下APT检测模型训练存在隐患的问题。
分布式系统中包含APT检测请求节点和参与全局APT检测模型训练的客户端节点。容易理解的是,分布式系统中还可以包含其余不参与全局APT检测模型训练的客户端节点,且客户端节点的数据根据分布式系统的布置需求而定,本实施例中不进行限制。
正因为分布式系统中存在参与和不参与模型训练的客户端节点,因此在模型训练之前,首先需要构建私有区块链作为训练交互空间。本实施例构建基于智能合约与联邦学习的私有区块链,私有区块链由分布式系统中的APT检测请求节点和分布式系统中参与全局APT检测模型训练的客户端节点组成,参与全局APT检测模型训练的客户端节点根据其系统日志作为训练数据。
需要说明的是,构建基于智能合约与联邦学习的私有区块链可以由APT检测请求节点和客户端节点中的任意一方发起构建,但是通常情况下是由APT检测请求节点发起构建。
具体的,如图1所示,本实施例中的分布式系统的APT检测方法,应用在APT检测请求节点,包括以下步骤:
步骤1、使用IBE基于身份认证的加解密技术将本节点在分布式系统中的唯一性ID作为公钥,使用椭圆曲线算法生成私钥,并将包含公钥的消息广播至各个客户端节点。
具体地,所有客户端节点收到APT检测请求节点想要进行APT检测的广播消息后,各个客户端节点可以判断该APT检测请求节点与本客户端节点的信任关系,如果信任度较低可以拒绝配合该APT检测请求节点的要求,直接无视这条广播消息。如果根据信任关系选择信赖该节点,就将该APT检测请求节点标记为更新全局APT检测模型请求方,等待该请求方发送加密后的全局APT检测模型。APT检测请求节点在这条广播消息中还包含了自己的公钥信息,并且已经通过PKG使用系统参数和该节点自己的分布式ID作为公钥生成对应用户身份信息的私钥,APT检测请求节点本地持有该私钥。
在生成私钥时需要一个可信第三方PKG(Private Key Generator)来负责生成APT检测请求节点的私钥,本实施例使用椭圆曲线算法密钥生成器。假设向PKG认证的APT检测请求节点的ID∈{0,1}*,APT检测请求节点建立公私钥对、加密发送全局APT检测模型的步骤如下:
GeneratePrivateKey(s,H(ID))→dID
采用系统参数s,哈希算法H(),APT检测请求节点的分布式ID,由PKG运行GeneratePrivateKey(s,H(ID))得到APT检测请求节点的私钥dID
Sign(dID,model)→Sig
PKG使用签名算法,根据需要签名的模型model和APT检测请求节点的私钥dID,输出一个签名值Sig。
步骤2、将全局APT检测模型使用私钥进行签名,将签名后的全局APT检测模型广播至各个客户端节点;所述全局APT检测模型用于客户端节点验签后利用自身节点的系统日志数据进行训练,训练完成作为更新后的本地APT检测模型使用APT检测请求节点的公钥进行加密并反馈至APT检测请求节点。
本申请采用IBE基于身份认证的加解密技术对全局APT检测模型的加解密,包括以下步骤:
客户端节点使用之前广播获得的APT检测请求节点的公钥对收到的经过APT检测请求节点签名后的全局APT检测模型进行解密,解密同时也验证了APT检测请求节点的身份。对经过训练得到更新的本地APT检测模型,再使用APT检测请求节点的公钥进行加密发送给APT检测请求节点。APT检测请求节点使用它的私钥对收到的更新后的本地APT检测模型进行解密。
其中,客户端节点对收到的全局APT检测模型验证是否属于公钥ID对应的APT检测请求节点的过程如下。
VerifyID(H(ID),model,Sig)→Valid∨Invalid
利用APT检测请求节点ID的哈希值,全局APT检测模型model,以及签名Sig进行验签,若验签输出的ID(即Valid)为发起APT检测请求的节点的ID(即Invalid),则验签通过。
验证通过后,根据本客户端节点系统日志数据中涉及的系统行为包括进程、文件、网络、节点属性等,在此基础上构建系统行为图,一个系统行为图的如图2所示。对系统行为图进行随机游走采样(例如使用cypher和gremlin进行图随机游走),基于Skip-Gram算法对采样得到的大量节点序列进行学习,得到每个节点的嵌入表征向量,采用注意力机制,设置激活函数得到总体表征向量,用总体表征向量,采用多层感知机作为分类器对全局APT检测模型进行训练,训练更新后的模型作为本地APT检测模型。
客户端节点多次训练得到收敛更新后的全局APT检测模型,将收敛更新后的全局APT检测模型作为本地APT检测模型,使用APT检测请求节点的公钥对模型参数进行加密,发送给APT检测请求节点。
Encrypt(H(ID),UpdatedModel)→CipherText
对本地APT检测模型UpdatedModel利用公钥进行加密得到密文CipherText发送给APT检测请求节点。
步骤3、接收各个客户端节点发送的训练后的本地APT检测模型并使用私钥进行解密,利用基于质量证明的共识机制验证本地APT检测模型,对生成有效的本地APT检测模型的客户端节点进行奖励或提升信任评分。
本实施例使用检测准确度偏差量化本地APT检测模型的性能,并将检测准确度偏差高于设定阈值的本地APT检测模型标记为无效的本地APT检测模型,反之标记为有效的本地APT检测模型。
APT检测请求节点接收各客户端节点发送的本地APT检测模型的密文CipherText,使用私钥dID进行解密,得到本地APT检测模型UpdateModel,即由客户端节点训练更新后的全局APT检测模型。
Decrypt(dID,CipherText)→UpdateModel
然后使用基于质量证明的共识机制(Proof of Training Quality,PoQ)对本地APT检测模型进行验证。对生成有效的本地APT检测模型的客户端节点进行奖励。
具体地,假设私有区块链中共有N个客户端节点,APT检测请求节点每轮迭代会选择部分客户端节点Q≤N来进行联邦学习的聚合,即参与全局APT检测模型训练。每个客户端节点Ct(Ct∈Q),Ct表示分布式系统中的第t个客户端节点,i表示迭代的次数。该客户端节点第i轮上传的本地APT检测模型为
Figure BDA0003595782820000081
APT检测请求节点计算训练效果的准确值偏差来筛选客户端节点提供的模型。一开始各个节点的信任评分
Figure BDA0003595782820000082
都为一个默认值,根据训练有效本地APT检测模型的次数会进行动态调整,这个信任值还会反馈影响到准确度。
Figure BDA0003595782820000083
式中,yi为本地APT检测模型
Figure BDA0003595782820000091
检测的真实值,f(xi)为本地APT检测模型
Figure BDA0003595782820000092
输出的预测值,
Figure BDA0003595782820000093
为第i次迭代中客户端节点Ct的信任评分,n为客户端节点Ct参与迭代的总次数,计算得到的检测准确度偏差
Figure BDA0003595782820000094
越高,代表客户端节点Ct反馈的全局APT检测模型
Figure BDA0003595782820000095
的检测准确度越低,训练效果越差。
Figure BDA0003595782820000096
高于某一个设定的阈值,APT检测请求节点将该更新的本地APT检测模型标记为无效模型,不进入联邦学习的聚合计算中。随着迭代次数的增加,
Figure BDA0003595782820000097
会动态下降。
本实施例对生成有效的本地APT检测模型的客户端节点可以提供一些数字加密货币奖励并且提高信任评分。其中对信任评分
Figure BDA0003595782820000098
进行动态调整时,可以根据实际情况设定调整规则,例如得到依次训练有效的本地AOT检测模型时将信任评分相应提高预设值。
更改信任评分之后还包括:打包出一个区块,将区块上链,记录该轮迭代的信息广播通知分布式系统中所有节点。其中所述区块至少包括参与训练的所有客户端节点提供的更新APT检测全局模型参数的哈希值和参与训练的所有该客户端节点在分布式系统中的唯一性ID的哈希值。
具体地,该区块可包括以下内容:区块大小为(head+TransactionNd),其中head为区块头部,包括了prevBlockHash前一个区块的哈希值、version区块头的版本号、merkleRoot区块交易的merkle树的哈希值、time区块创建的时间戳、difficultyTarget质量证明的阈值、numTransactions区块的交易数量等。Nd表示提供更新后的本地APT检测模型的客户端阶段的个数,Transaction为一个八元组(迭代次数i,分布式系统APT检测请求节点唯一性ID,该客户端节点提供的本地APT检测模型参数的哈希值h,该模型对应的
Figure BDA0003595782820000099
该模型上传的时间戳,是否为有效模型的标识符m,该客户端节点的信任评分
Figure BDA00035957828200000910
该客户端节点的奖励p)。
步骤4、根据有效的本地APT检测模型使用聚合算法更新APT检测请求节点中的全局APT检测模型。
本实例为了保护各个客户端节点的数据隐私,各个客户端节点的数据可能是高度个性化的,不是所有客户端节点都希望这些原始数据被传送到数据中心共享。所以采用一种分布式的机器学习方法来实现迭代学习任务。全局APT检测模型的训练原则就是不传输原始训练数据。本实例的聚合算法可以采用FedAvg聚合算法、Krum、Trimmed Mean、Median等方法。
本实例采用联邦平均(Federated Leanrning Averaging,FedAvg)算法来实现:联邦平均算法适用于所有目标函数关于有限个样本误差累加形式的函数,将多个使用随机梯度下降算法的深度学习模型整合成一个全局模型。
在联邦学习设定下,假设有Q个客户端节点参与训练,Pt表示存储在第t个客户端节点中的训练样本,样本的个数为nt=|Pt|,fi(w)表示第i个样本下模型的局部损失,FedAvg算法定义如下的目标函数f(w):
Figure BDA0003595782820000101
总的损失函数是各个客户端节点局部损失样本个数的加权平均,在联邦学习后样本发布不均衡是很常见的问题。APT检测请求节点只需要迭代的进行步骤2~5,直至全局APT检测模型收敛或者达到需要的APT检测准确度要求后,最终实现收集数据与全局APT检测模型训练的目的。
步骤5、若APT检测请求节点中的全局APT检测模型未收敛,则返回步骤2继续训练;否则利用多轮更新收敛后的全局APT检测模型对该分布式系统下的APT攻击进行检测。
由上述实施例可知,本申请采用了联邦学习,解决了客户端节点数据泄露的风险,进而实现客户端节点本地数据不共享情况下的全局APT检测模型训练,采用IBE的加解密算法对APT检测请求节点的身份进行验证,并且可以加密需要传输的训练模型,客服了模型训练参数的泄密。IBE加解密技术的使用,既保证了轻量化、数据传输安全,也避免了数据被伪造、篡改,保证了联邦学习的模型安全。使用基于系统行为构造数据依赖图进行深度学习的方法对APT攻击进行检测,具有良好的适配性,提高了分布式系统的APT检测成功率。使用基于训练质量证明的共识机制克服了联邦学习中可能存在的中毒攻击,达到了排除恶意节点的效果。
实施例2:
本实施例提供一种分布式系统的APT检测方法,解决现有技术中分布式系统下APT检测模型训练存在隐患的问题。
分布式系统中包含APT检测请求节点和参与全局APT检测模型训练的客户端节点。容易理解的是,分布式系统中还可以包含其余不参与全局APT检测模型训练的客户端节点,且客户端节点的数据根据分布式系统的布置需求而定,本实施例中不进行限制。
正因为分布式系统中存在参与和不参与模型训练的客户端节点,因此在模型训练之前,首先需要构建私有区块链作为训练交互空间。本实施例构建基于智能合约与联邦学习的私有区块链,私有区块链由分布式系统中的APT检测请求节点和分布式系统中参与全局APT检测模型训练的客户端节点组成,参与全局APT检测模型训练的客户端节点根据其系统日志作为训练数据。
需要说明的是,构建基于智能合约与联邦学习的私有区块链可以由APT检测请求节点和客户端节点中的任意一方发起构建,但是通常情况下是由APT检测请求节点发起构建。
具体的,如图3所示,本实施例中的分布式系统的APT检测方法,应用在各个客户端节点,包括以下步骤:
步骤1、接收APT检测请求节点广播的消息得到APT检测请求节点的公钥;所述APT检测请求节点的公钥为使用基于身份认证的加解密技术根据APT检测请求节点在分布式系统中的唯一性ID生成,对应的私钥由椭圆曲线算法生成。
步骤2、接收APT检测请求节点广播的使用私钥签名后的全局APT检测模型。
步骤3、对全局APT检测模型验签后利用自身节点的系统日志数据进行训练,训练完成作为更新后的本地APT检测模型。
步骤4、使用APT检测请求节点的公钥对更新后的本地APT检测模型进行加密并反馈至APT检测请求节点;反馈至APT检测请求节点的本地APT检测模型供APT检测请求节点解密后利用基于质量证明的共识机制验证并使用聚合算法更新APT检测请求节点中的全局APT检测模型。
具体的,所述对全局APT检测模型验签后利用自身节点的系统日志数据进行训练,包括:
对APT检测请求节点广播的全局APT检测模型进行验签。
验签通过后,根据本客户端节点系统日志数据中涉及的系统行为构建系统行为图。
对系统行为图进行随机游走采样,基于Skip-Gram算法对采样得到的大量节点序列进行学习,得到每个节点的嵌入表征向量。
针对每个节点的嵌入表征向量采用注意力机制,设置激活函数得到总体表征向量,利用总体表征向量,采用多层感知机作为分类器对全局APT检测模型进行训练。
具体的,所述利用基于质量证明的共识机制验证本地APT检测模型,包括:
使用检测准确度偏差量化所述本地APT检测模型的性能。
将检测准确度偏差高于设定阈值的本地APT检测模型标记为无效的本地APT检测模型,反之标记为有效的本地APT检测模型。
具体的,使用检测准确度偏差量化所述本地APT检测模型的性能,包括:
若私有区块链中共有N个客户端节点,APT检测请求节点每轮迭代选择Q个客户端节点进行联邦学习的聚合,Q≤N,第t个客户端节点Ct(Ct∈Q)在第i次迭代中反馈给APT检测请求节点的本地APT检测模型为
Figure BDA0003595782820000121
则该本地APT检测模型的检测准确度偏差量化如下:
Figure BDA0003595782820000122
式中,yi为本地APT检测模型
Figure BDA0003595782820000123
检测的真实值,f(xi)为本地APT检测模型
Figure BDA0003595782820000124
输出的预测值,
Figure BDA0003595782820000125
为第i次迭代中客户端节点Ct的信任评分,n为客户端节点Ct参与迭代的总次数,计算得到的检测准确度偏差
Figure BDA0003595782820000126
越高,代表客户端节点Ct反馈的全局APT检测模型
Figure BDA0003595782820000127
的检测准确度越低,训练效果越差。
具体的,还包括:APT检测请求节点利用基于质量证明的共识机制验证后,对生成有效的本地APT检测模型的客户端节点进行奖励或提升信任评分。
打包出一个区块,将所述区块上链,广播通知分布式系统中所有节点,所述区块至少包括参与训练的所有客户端节点提供的本地APT检测模型的参数的哈希值和参与训练的所有客户端节点在分布式系统中的唯一性ID的哈希值。
本实施例的分布式系统的APT检测方法其他限定可参考实施例1中对分布式系统的APT检测方法的限定,这里不再进行赘述。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明的保护范围应以所附权利要求为准。

Claims (10)

1.一种分布式系统的APT检测方法,其特征在于,该分布式系统中包含APT检测请求节点和参与全局APT检测模型训练的客户端节点,由所述APT检测请求节点和所述客户端节点组成基于智能合约与联邦学习的私有区块链,所述分布式系统的APT检测方法实施在APT检测请求节点,包括:
步骤1、使用基于身份认证的加解密技术将本节点在分布式系统中的唯一性ID作为公钥,使用椭圆曲线算法生成私钥,并将包含公钥的消息广播至各个客户端节点;
步骤2、将全局APT检测模型使用私钥进行签名,将签名后的全局APT检测模型广播至各个客户端节点;所述全局APT检测模型用于客户端节点验签后利用自身节点的系统日志数据进行训练,训练完成作为更新后的本地APT检测模型使用APT检测请求节点的公钥进行加密并反馈至APT检测请求节点;
步骤3、接收各个客户端节点发送的训练后的本地APT检测模型并使用私钥进行解密,利用基于质量证明的共识机制验证本地APT检测模型,对生成有效的本地APT检测模型的客户端节点进行奖励或提升信任评分;
步骤4、根据有效的本地APT检测模型使用聚合算法更新APT检测请求节点中的全局APT检测模型;
步骤5、若APT检测请求节点中的全局APT检测模型未收敛,则返回步骤2继续训练;否则利用多轮更新收敛后的全局APT检测模型对该分布式系统下的APT攻击进行检测。
2.如权利要求1所述的分布式系统的APT检测方法,其特征在于,所述全局APT检测模型用于客户端节点验签后利用自身节点的系统日志数据进行训练,包括:
客户端节点对APT检测请求节点广播的全局APT检测模型进行验签;
验签通过后,根据本客户端节点系统日志数据中涉及的系统行为构建系统行为图;
对系统行为图进行随机游走采样,基于Skip-Gram算法对采样得到的大量节点序列进行学习,得到每个节点的嵌入表征向量;
针对每个节点的嵌入表征向量采用注意力机制,设置激活函数得到总体表征向量,利用总体表征向量,采用多层感知机作为分类器对全局APT检测模型进行训练。
3.如权利要求1所述的分布式系统的APT检测方法,其特征在于,所述利用基于质量证明的共识机制验证本地APT检测模型,包括:
使用检测准确度偏差量化所述本地APT检测模型的性能;
将检测准确度偏差高于设定阈值的本地APT检测模型标记为无效的本地APT检测模型,反之标记为有效的本地APT检测模型。
4.如权利要求3所述的分布式系统的APT检测方法,其特征在于,所述使用检测准确度偏差量化所述本地APT检测模型的性能,包括:
若私有区块链中共有N个客户端节点,APT检测请求节点每轮迭代选择Q个客户端节点进行联邦学习的聚合,Q≤N,第t个客户端节点Ct(Ct∈Q)在第i次迭代中反馈给APT检测请求节点的本地APT检测模型为
Figure FDA0003595782810000021
则该本地APT检测模型的检测准确度偏差量化如下:
Figure FDA0003595782810000022
式中,yi为本地APT检测模型
Figure FDA0003595782810000023
检测的真实值,f(xi)为本地APT检测模型
Figure FDA0003595782810000024
输出的预测值,
Figure FDA0003595782810000025
为第i次迭代中客户端节点Ct的信任评分,n为客户端节点Ct参与迭代的总次数,计算得到的检测准确度偏差
Figure FDA0003595782810000026
越高,代表客户端节点Ct反馈的全局APT检测模型
Figure FDA0003595782810000027
的检测准确度越低,训练效果越差。
5.如权利要求1所述的分布式系统的APT检测方法,其特征在于,在对生成有效的本地APT检测模型的客户端节点进行奖励或提升信任评分之后,还包括:
打包出一个区块,将所述区块上链,广播通知分布式系统中所有节点,所述区块至少包括参与训练的所有客户端节点提供的本地APT检测模型的参数的哈希值和参与训练的所有客户端节点在分布式系统中的唯一性ID的哈希值。
6.一种分布式系统的APT检测方法,其特征在于,该分布式系统中包含APT检测请求节点和参与全局APT检测模型训练的客户端节点,由所述APT检测请求节点和所述客户端节点组成基于智能合约与联邦学习的私有区块链,所述分布式系统的APT检测方法实施在各个客户端节点,包括:
步骤1、接收APT检测请求节点广播的消息得到APT检测请求节点的公钥;所述APT检测请求节点的公钥为使用基于身份认证的加解密技术根据APT检测请求节点在分布式系统中的唯一性ID生成,对应的私钥由椭圆曲线算法生成;
步骤2、接收APT检测请求节点广播的使用私钥签名后的全局APT检测模型;
步骤3、对全局APT检测模型验签后利用自身节点的系统日志数据进行训练,训练完成作为更新后的本地APT检测模型;
步骤4、使用APT检测请求节点的公钥对更新后的本地APT检测模型进行加密并反馈至APT检测请求节点;反馈至APT检测请求节点的本地APT检测模型供APT检测请求节点解密后利用基于质量证明的共识机制验证并使用聚合算法更新APT检测请求节点中的全局APT检测模型。
7.如权利要求6所述的分布式系统的APT检测方法,其特征在于,所述对全局APT检测模型验签后利用自身节点的系统日志数据进行训练,包括:
对APT检测请求节点广播的全局APT检测模型进行验签;
验签通过后,根据本客户端节点系统日志数据中涉及的系统行为构建系统行为图;
对系统行为图进行随机游走采样,基于Skip-Gram算法对采样得到的大量节点序列进行学习,得到每个节点的嵌入表征向量;
针对每个节点的嵌入表征向量采用注意力机制,设置激活函数得到总体表征向量,利用总体表征向量,采用多层感知机作为分类器对全局APT检测模型进行训练。
8.如权利要求6所述的分布式系统的APT检测方法,其特征在于,所述利用基于质量证明的共识机制验证本地APT检测模型,包括:
使用检测准确度偏差量化所述本地APT检测模型的性能;
将检测准确度偏差高于设定阈值的本地APT检测模型标记为无效的本地APT检测模型,反之标记为有效的本地APT检测模型。
9.如权利要求8所述的分布式系统的APT检测方法,其特征在于,所述使用检测准确度偏差量化所述本地APT检测模型的性能,包括:
若私有区块链中共有N个客户端节点,APT检测请求节点每轮迭代选择Q个客户端节点进行联邦学习的聚合,Q≤N,第t个客户端节点Ct(Ct∈Q)在第i次迭代中反馈给APT检测请求节点的本地APT检测模型为
Figure FDA0003595782810000031
则该本地APT检测模型的检测准确度偏差量化如下:
Figure FDA0003595782810000032
式中,yi为本地APT检测模型
Figure FDA0003595782810000041
检测的真实值,f(xi)为本地APT检测模型
Figure FDA0003595782810000042
输出的预测值,
Figure FDA0003595782810000043
为第i次迭代中客户端节点Ct的信任评分,n为客户端节点Ct参与迭代的总次数,计算得到的检测准确度偏差
Figure FDA0003595782810000044
越高,代表客户端节点Ct反馈的全局APT检测模型
Figure FDA0003595782810000045
的检测准确度越低,训练效果越差。
10.如权利要求6所述的分布式系统的APT检测方法,其特征在于,还包括:APT检测请求节点利用基于质量证明的共识机制验证后,对生成有效的本地APT检测模型的客户端节点进行奖励或提升信任评分;
打包出一个区块,将所述区块上链,广播通知分布式系统中所有节点,所述区块至少包括参与训练的所有客户端节点提供的本地APT检测模型的参数的哈希值和参与训练的所有客户端节点在分布式系统中的唯一性ID的哈希值。
CN202210391517.2A 2022-04-14 2022-04-14 一种分布式系统的apt检测方法 Pending CN114679332A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210391517.2A CN114679332A (zh) 2022-04-14 2022-04-14 一种分布式系统的apt检测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210391517.2A CN114679332A (zh) 2022-04-14 2022-04-14 一种分布式系统的apt检测方法

Publications (1)

Publication Number Publication Date
CN114679332A true CN114679332A (zh) 2022-06-28

Family

ID=82077578

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210391517.2A Pending CN114679332A (zh) 2022-04-14 2022-04-14 一种分布式系统的apt检测方法

Country Status (1)

Country Link
CN (1) CN114679332A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115600642A (zh) * 2022-10-10 2023-01-13 南京栢拓视觉科技有限公司(Cn) 一种面向流媒体基于邻居信任聚合的去中心化联邦学习方法
CN116541831A (zh) * 2023-07-05 2023-08-04 南京信息工程大学 一种基于区块链与联邦学习的双重防御方法
CN117714217A (zh) * 2024-02-06 2024-03-15 河北数云堂智能科技有限公司 一种可信联邦智能安全计算平台的方法和装置
CN117786768A (zh) * 2024-02-23 2024-03-29 数据堂(北京)科技股份有限公司 一种联邦数据学习的安全参数交换方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101471776A (zh) * 2007-12-29 2009-07-01 航天信息股份有限公司 基于用户身份标识防止pkg伪造签名的方法
CN110442457A (zh) * 2019-08-12 2019-11-12 北京大学深圳研究生院 基于联邦学习的模型训练方法、装置及服务器
CN112528275A (zh) * 2020-11-23 2021-03-19 浙江工业大学 基于元路径学习与子图采样的apt网络攻击检测方法
CN113794675A (zh) * 2021-07-14 2021-12-14 中国人民解放军战略支援部队信息工程大学 基于区块链和联邦学习的分布式物联网入侵检测方法及系统
CN113849805A (zh) * 2021-09-23 2021-12-28 国网山东省电力公司济宁供电公司 移动用户可信认证方法及装置、电子设备、存储介质
CN114338045A (zh) * 2022-01-14 2022-04-12 中国人民解放军战略支援部队信息工程大学 基于区块链和联邦学习的情报数据可验证性安全共享方法及系统

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101471776A (zh) * 2007-12-29 2009-07-01 航天信息股份有限公司 基于用户身份标识防止pkg伪造签名的方法
CN110442457A (zh) * 2019-08-12 2019-11-12 北京大学深圳研究生院 基于联邦学习的模型训练方法、装置及服务器
CN112528275A (zh) * 2020-11-23 2021-03-19 浙江工业大学 基于元路径学习与子图采样的apt网络攻击检测方法
CN113794675A (zh) * 2021-07-14 2021-12-14 中国人民解放军战略支援部队信息工程大学 基于区块链和联邦学习的分布式物联网入侵检测方法及系统
CN113849805A (zh) * 2021-09-23 2021-12-28 国网山东省电力公司济宁供电公司 移动用户可信认证方法及装置、电子设备、存储介质
CN114338045A (zh) * 2022-01-14 2022-04-12 中国人民解放军战略支援部队信息工程大学 基于区块链和联邦学习的情报数据可验证性安全共享方法及系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
庄夏: "基于局部参数模型共享的分布式入侵检测系统", 计算机工程与设计, 16 November 2017 (2017-11-16) *

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115600642A (zh) * 2022-10-10 2023-01-13 南京栢拓视觉科技有限公司(Cn) 一种面向流媒体基于邻居信任聚合的去中心化联邦学习方法
CN115600642B (zh) * 2022-10-10 2024-02-06 南京栢拓视觉科技有限公司 一种面向流媒体基于邻居信任聚合的去中心化联邦学习方法
CN116541831A (zh) * 2023-07-05 2023-08-04 南京信息工程大学 一种基于区块链与联邦学习的双重防御方法
CN116541831B (zh) * 2023-07-05 2023-10-13 南京信息工程大学 一种基于区块链与联邦学习的双重防御方法
CN117714217A (zh) * 2024-02-06 2024-03-15 河北数云堂智能科技有限公司 一种可信联邦智能安全计算平台的方法和装置
CN117714217B (zh) * 2024-02-06 2024-05-28 河北数云堂智能科技有限公司 一种可信联邦智能安全计算平台的方法和装置
CN117786768A (zh) * 2024-02-23 2024-03-29 数据堂(北京)科技股份有限公司 一种联邦数据学习的安全参数交换方法
CN117786768B (zh) * 2024-02-23 2024-05-14 数据堂(北京)科技股份有限公司 一种联邦数据学习的安全参数交换方法

Similar Documents

Publication Publication Date Title
Cui et al. An efficient message-authentication scheme based on edge computing for vehicular ad hoc networks
Cui et al. Edge computing in VANETs-an efficient and privacy-preserving cooperative downloading scheme
Bagga et al. Blockchain-based batch authentication protocol for Internet of Vehicles
Bettayeb et al. Firmware update attacks and security for IoT devices: Survey
CN106330910B (zh) 车联网中基于节点身份和信誉的强隐私保护双重认证方法
Chai et al. CyberChain: Cybertwin empowered blockchain for lightweight and privacy-preserving authentication in Internet of Vehicles
Cheng et al. PPVF: privacy-preserving protocol for vehicle feedback in cloud-assisted VANET
Alharthi et al. A privacy-preservation framework based on biometrics blockchain (BBC) to prevent attacks in VANET
CN114679332A (zh) 一种分布式系统的apt检测方法
Feng et al. An efficient privacy-preserving authentication model based on blockchain for VANETs
Wu et al. A provably secure authentication and key exchange protocol in vehicular ad hoc networks
Satapathy et al. A secure framework for communication in internet of things application using hyperledger based blockchain
CN109359464B (zh) 一种基于区块链技术的无线安全认证方法
Mundhe et al. Ring signature-based conditional privacy-preserving authentication in VANETs
CN111711607B (zh) 一种基于区块链的流式微服务可信加载与验证方法
Li et al. Energy-efficient and secure communication toward UAV networks
Elkhalil et al. An efficient heterogeneous blockchain-based online/offline signcryption systems for internet of vehicles
Shih et al. Traceability for Vehicular Network Real-Time Messaging Based on Blockchain Technology.
Alqarni et al. Authenticated wireless links between a drone and sensors using a blockchain: Case of smart farming
Subramani et al. Blockchain-based physically secure and privacy-aware anonymous authentication scheme for fog-based vanets
Khan et al. Resource efficient authentication and session key establishment procedure for low-resource IoT devices
Dwivedi et al. Design of secured blockchain based decentralized authentication protocol for sensor networks with auditing and accountability
Duan et al. Design of anonymous authentication scheme for vehicle fog services using blockchain
Yang et al. A group key agreement protocol based on ecdh and short signature
Kumar Arora et al. Blockchain‐inspired lightweight trust‐based system in vehicular networks

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