网络攻击信息处理方法、装置、电子设备及存储介质转让专利

申请号 : CN202010671834.0

文献号 : CN111565199B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 贺家成董志强李滨张壮

申请人 : 腾讯科技(深圳)有限公司

摘要 :

本发明提供了一种网络攻击信息处理方法,包括:获取对目标系统进行攻击的攻击流量;响应于所获取的攻击流量,触发端口复用进程,以实现对目标端口所转发的攻击流量进行监听;触发攻击信息分类模型,对所述攻击流量的类别进行识别;基于所述攻击信息分类模型的识别结果,触发端口转发进程,对所述攻击流量进行转发。本发明还提供了网络攻击信息处理装置、电子设备及存储介质。本发明能够实现将攻击流量转发至对应的不同类型的蜜罐系统,提升蜜罐系统的网络攻击信息处理效率,减少所部署的服务器数量,节省用户的成本,实现蜜罐系统的大规模部署。

权利要求 :

1.一种网络攻击信息处理方法,其特征在于,所述方法包括:获取对目标系统进行攻击的攻击流量;

响应于所获取的攻击流量,触发端口复用进程,并基于所述端口复用进程,确定目标端口;

根据所述目标端口,配置与所述目标端口相匹配的套接字以及套接口函数;

基于与所述目标端口相匹配的套接字以及套接口函数,对目标端口所转发的攻击流量进行监听;

通过攻击信息分类模型,对所述攻击流量进行特征化处理;

对所述攻击流量特征化处理结果进行标准化处理,形成标准化处理后的攻击流量特征;

基于对应的敏感字、敏感字符以及字符串长度,通过所述攻击信息分类模型对所述标准化处理后的攻击流量特征进行识别处理,确定所述攻击流量的类别,其中,所述攻击流量的类别与部署在同一服务器中的不同类型的蜜罐系统相适配;

基于所述攻击信息分类模型所确定的攻击流量的类别,触发端口转发进程,对所述攻击流量进行转发,以实现通过不同类型的蜜罐系统获取对应的攻击流量;

其中,在通过攻击信息分类模型,对所述攻击流量进行特征化处理之前,所述方法还包括:

获取与所述攻击信息分类模型的使用环境相匹配的训练样本,其中,所述训练样本中包括相应目标系统托管平台所获取的历史攻击流量,其中,所述目标系统托管平台保存有历史攻击流量中的攻击类型、攻击目标以及对应的标识;

通过所述攻击信息分类模型提取与所述训练样本相匹配的训练数据集合以及测试数据集合;

根据与所述训练样本相匹配的训练数据集合以及测试数据集合对所述攻击信息分类模型进行训练,以实现确定与所述攻击信息分类模型相适配的模型参数。

2.根据权利要求1所述的方法,其特征在于,所述通过所述攻击信息分类模型提取与所述训练样本相匹配的训练数据集合以及测试数据集合,包括:对所述训练样本进行分类,确定不同的攻击流量类型;

基于所述攻击流量的不同类型,对所述训练样本进行特征化处理,提取相匹配的差异特征;

对所提取的差异特征进行标准化处理,形成标准化差异特征,并按照相应分配比例对所述标准化差异特征进行数据拆分处理,形成与所述训练样本相匹配的训练数据集合以及测试数据集合。

3.根据权利要求1所述的方法,其特征在于,所述根据与所述训练样本相匹配的训练数据集合以及测试数据集合对所述攻击信息分类模型进行训练,以实现确定与所述攻击信息分类模型相适配的模型参数,包括:对与所述训练样本相匹配的测试数据集合中的攻击流量类型进行标记;

通过所述训练数据集合,对所述攻击信息分类模型进行训练,确定所述攻击信息分类模型的参数;

保持所述攻击信息分类模型的参数不变,对所述测试数据集合中的攻击流量类型进行分类;

将所述测试数据集合中的攻击流量类型的分类结果与标记的攻击流量类型进行比较;

当所述测试数据集合中的攻击流量类型的分类结果与标记的攻击流量类型的一致比例超过阈值时,确定与所述攻击信息分类模型相适配的模型参数。

4.根据权利要求1所述的方法,其特征在于,所述方法还包括:根据所述目标系统的使用环境,确定对应的固件配置信息;

根据固件配置信息,从蜜罐镜像云服务器中获取相匹配的蜜罐镜像,其中,蜜罐镜像支持不同组织架构的蜜罐结构;

在目标系统中创建容器,并通过所述容器创建支持不同组织架构的蜜罐系统,以实现通过所部署的蜜罐系统捕获对所述目标系统的攻击流量。

5.根据权利要求1‑4任一所述的方法,其特征在于,所述方法还包括:将蜜罐系统配置信息、攻击信息分类模型以及所述攻击信息分类模型对攻击流量的分类记录送至区块链网络,以使

所述区块链网络的节点将所述蜜罐系统配置信息、攻击信息分类模型以及所述攻击信息分类模型对攻击流量的分类记录填充至新区块,且当对所述新区块共识一致时,将所述新区块追加至区块链的尾部。

6.根据权利要求5所述的方法,其特征在于,所述方法还包括:接收所述区块链网络中的其他节点的数据同步请求;

响应于所述数据同步请求,对所述其他节点的权限进行验证;

当所述其他节点的权限通过验证时,控制当前节点与所述其他节点之间进行数据同步,以实现所述其他节点获取蜜罐系统配置信息、攻击信息分类模型以及所述攻击信息分类模型对攻击流量的分类记录。

7.根据权利要求5所述的方法,其特征在于,所述方法还包括:响应于查询请求,解析所述查询请求以获取对应的对象标识;

根据所述对象标识,获取区块链网络中的目标区块内的权限信息;

对所述权限信息与所述对象标识的匹配性进行校验;

当所述权限信息与所述对象标识相匹配时,在所述区块链网络中获取相应的蜜罐系统配置信息、攻击信息分类模型以及所述攻击信息分类模型对攻击流量的分类记录;

响应于查询指令,将所获取的相应的蜜罐系统配置信息、攻击信息分类模型以及所述攻击信息分类模型对攻击流量的分类记录向相应的客户端进行推送。

8.一种网络攻击信息处理装置,其特征在于,所述装置包括:信息传输模块,用于获取对目标系统进行攻击的攻击流量;

信息处理模块,用于响应于所获取的攻击流量,触发端口复用进程,并基于所述端口复用进程,确定目标端口;根据所述目标端口,配置与所述目标端口相匹配的套接字以及套接口函数;基于与所述目标端口相匹配的套接字以及套接口函数,对目标端口所转发的攻击流量进行监听;

所述信息处理模块,用于通过攻击信息分类模型,对所述攻击流量进行特征化处理;

所述信息处理模块,用于对所述攻击流量特征化处理结果进行标准化处理,形成标准化处理后的攻击流量特征;

所述信息处理模块,用于基于对应的敏感字、敏感字符以及字符串长度,通过攻击信息分类模型对所述标准化处理后的攻击流量特征进行识别处理,确定所述攻击流量的类别,其中,所述攻击流量的类别与部署在同一服务器中的不同类型的蜜罐系统相适配;

所述信息处理模块,用于基于所述攻击信息分类模型所确定的攻击流量的类别,触发端口转发进程,对所述攻击流量进行转发,以实现通过不同类型的蜜罐系统获取对应的攻击流量;

所述信息处理模块,进一步用于获取与所述攻击信息分类模型的使用环境相匹配的训练样本,其中,所述训练样本中包括相应目标系统托管平台所获取的历史攻击流量,其中,所述目标系统托管平台保存有历史攻击流量中的攻击类型、攻击目标以及对应的标识;通过所述攻击信息分类模型提取与所述训练样本相匹配的训练数据集合以及测试数据集合;

根据与所述训练样本相匹配的训练数据集合以及测试数据集合对所述攻击信息分类模型进行训练,以实现确定与所述攻击信息分类模型相适配的模型参数。

9.一种电子设备,其特征在于,所述电子设备包括:存储器,用于存储可执行指令;

处理器,用于运行所述存储器存储的可执行指令时,实现权利要求1至7任一项所述的网络攻击信息处理方法。

10.一种计算机可读存储介质,存储有可执行指令,其特征在于,所述可执行指令被处理器执行时实现权利要求1至7任一项所述的网络攻击信息处理方法。

说明书 :

网络攻击信息处理方法、装置、电子设备及存储介质

技术领域

[0001] 本发明涉及网络攻击信息处理技术,尤其涉及网络攻击信息处理方法、装置、系统、设备及存储介质。

背景技术

[0002] 相关技术中,蜜罐技术是一种对攻击者(也可称为黑客)进行欺骗的主动安全技术。在蜜罐技术中,技术人员可以部署一个模拟真实工作系统的虚假系统作为诱饵,并引诱
攻击者对该虚假系统进行攻击,其中,该虚假系统通常可以被称为蜜罐系统。在攻击者被引
诱而对蜜罐系统展开攻击时,该蜜罐系统可以捕获攻击者的攻击数据。通过对捕获的攻击
数据进行分析,可以给实际生产工作中对攻击行为进行识别以及后续的安全防御措施提供
依据。传统的蜜罐系统在部署过程中,不但需要部署数量众多的服务器,配置大量的IP地
址,而且攻击流量是与攻击目标不匹配,造成蜜罐系统对攻击信息的处理效率较低。

发明内容

[0003] 有鉴于此,本发明实施例提供一种网络攻击信息处理方法、装置、电子设备及存储介质,能够实现通过攻击信息分类模型,对攻击流量的类别进行识别,对攻击流量进行转
发,通过不同类型的蜜罐系统获取对应的攻击流量,提升蜜罐系统的网络攻击信息处理效
率,减少所部署的服务器数量,节省用户的成本,实现蜜罐系统的大规模部署。
[0004] 本发明实施例的技术方案是这样实现的:
[0005] 本发明实施例提供了一种网络攻击信息处理方法包括:
[0006] 获取对目标系统进行攻击的攻击流量;
[0007] 响应于所获取的攻击流量,触发端口复用进程,以实现对目标端口所转发的攻击流量进行监听;
[0008] 触发攻击信息分类模型,对所述攻击流量的类别进行识别;
[0009] 基于所述攻击信息分类模型的识别结果,触发端口转发进程,对所述攻击流量进行转发,以实现通过不同类型的蜜罐系统获取对应的攻击流量。
[0010] 本发明实施例还提供了一种网络攻击信息处理装置,包括:
[0011] 信息传输模块,用于获取对目标系统进行攻击的攻击流量;
[0012] 信息处理模块,用于响应于所获取的攻击流量,触发端口复用进程,以实现对目标端口所转发的攻击流量进行监听;
[0013] 所述信息处理模块,用于触发攻击信息分类模型,对所述攻击流量的类别进行识别;
[0014] 所述信息处理模块,用于基于所述攻击信息分类模型的识别结果,触发端口转发进程,对所述攻击流量进行转发,以实现通过不同类型的蜜罐系统获取对应的攻击流量。
[0015] 上述方案中,
[0016] 所述信息处理模块,用于响应于所获取的攻击流量,基于所述端口复用进程,确定目标端口;
[0017] 所述信息处理模块,用于根据所述目标端口,配置与所述目标端口相匹配的套接字以及套接口函数;
[0018] 所述信息处理模块,用于基于与所述目标端口相匹配的套接字以及套接口函数,对目标端口所转发的攻击流量进行监听。
[0019] 上述方案中,
[0020] 所述信息处理模块,用于通过所述攻击信息分类模型,对所述攻击流量进行特征化处理;
[0021] 所述信息处理模块,用于根据攻击流量特征化处理的结果,对所述攻击流量特征化处理结果进行标准化处理,形成攻击流量特征;
[0022] 所述信息处理模块,用于基于攻击信息分类模型对所述攻击流量特征进行处理,确定所述攻击流量的类别。
[0023] 上述方案中,
[0024] 所述信息处理模块,用于获取与所述攻击信息分类模型的使用环境相匹配的训练样本,其中,所述训练样本中包括相应目标系统托管平台所获取的历史攻击流量;
[0025] 所述信息处理模块,用于通过所述攻击信息分类模型的提取与所述训练样本相匹配的训练数据集合以及测试数据集合;
[0026] 所述信息处理模块,用于根据与所述训练样本相匹配的训练数据集合以及测试数据集合对所述攻击信息分类模型进行训练,以实现确定与所述攻击信息分类模型相适配的
模型参数。
[0027] 上述方案中,
[0028] 所述信息处理模块,用于对所述训练样本进行分类,确定不同的攻击流量类型;
[0029] 所述信息处理模块,用于基于所述攻击流量的不同类型,对所述训练样本进行特征化处理,提取相匹配的差异特征;
[0030] 所述信息处理模块,用于对所提取的差异特征进行标准化处理,形成标准化差异特征,并按照相应分配比例对所述标准化差异特征进行数据拆分处理,形成与所述训练样
本相匹配的训练数据集合以及测试数据集合。
[0031] 上述方案中,
[0032] 所述信息处理模块,用于对与所述训练样本相匹配的测试数据集合中的攻击流量类型进行标记;
[0033] 所述信息处理模块,用于通过所述训练数据集合,对所述攻击信息分类模型进行训练,确定所述攻击信息分类模型的参数;
[0034] 所述信息处理模块,用于保持所述攻击信息分类模型的参数不变,对所述测试数据集合中的攻击流量类型进行分类;
[0035] 所述信息处理模块,用于将所述测试数据集合中的攻击流量类型的分类结果与标记的攻击流量类型进行比较;
[0036] 所述信息处理模块,用于当所述测试数据集合中的攻击流量类型的分类结果与标记的攻击流量类型的一致比例超过阈值时,确定与所述攻击信息分类模型相适配的模型参
数。
[0037] 上述方案中,
[0038] 所述信息处理模块,用于当不同类型的蜜罐系统获取对应的攻击流量时,基于所述攻击流量,捕获所述攻击流量的访问服务的记录;
[0039] 所述信息处理模块,用于基于所述攻击流量的访问服务的记录,获取并解析攻击流量所携带的网络数据包;
[0040] 所述信息处理模块,用于基于所述网络数据包,确定并监控所述攻击流量入侵蜜罐系统后的蜜罐系统连接行为。
[0041] 上述方案中,
[0042] 所述信息处理模块,用于根据所述目标系统的使用环境,确定对应的固件配置信息;
[0043] 所述信息处理模块,用于根据固件配置信息,从蜜罐镜像云服务器中获取相匹配的蜜罐镜像,其中,蜜罐镜像支持不同组织架构的蜜罐结构;
[0044] 所述信息处理模块,用于在目标系统中创建容器,并通过所述容器创建支持不同组织架构的蜜罐系统,以实现通过所部署的蜜罐系统捕获对所述目标系统的攻击流量。
[0045] 上述方案中,
[0046] 所述信息处理模块,用于将蜜罐系统配置信息、攻击信息分类模型以及所述攻击信息分类模型对攻击流量的分类记录送至区块链网络,以使
[0047] 所述区块链网络的节点将所述蜜罐系统配置信息、攻击信息分类模型以及所述攻击信息分类模型对攻击流量的分类记录填充至新区块,且当对所述新区块共识一致时,将
所述新区块追加至区块链的尾部。
[0048] 上述方案中,
[0049] 所述信息处理模块,用于接收所述区块链网络中的其他节点的数据同步请求;
[0050] 所述信息处理模块,用于响应于所述数据同步请求,对所述其他节点的权限进行验证;
[0051] 所述信息处理模块,用于当所述其他节点的权限通过验证时,控制当前节点与所述其他节点之间进行数据同步,以实现所述其他节点获取蜜罐系统配置信息、攻击信息分
类模型以及所述攻击信息分类模型对攻击流量的分类记录。
[0052] 上述方案中,
[0053] 所述信息处理模块,用于响应于查询请求,解析所述查询请求以获取对应的对象标识;
[0054] 所述信息处理模块,用于根据所述对象标识,获取区块链网络中的目标区块内的权限信息;
[0055] 所述信息处理模块,用于对所述权限信息与所述对象标识的匹配性进行校验;
[0056] 所述信息处理模块,用于当所述权限信息与所述对象标识相匹配时,在所述区块链网络中获取相应的蜜罐系统配置信息、攻击信息分类模型以及所述攻击信息分类模型对
攻击流量的分类记录;
[0057] 所述信息处理模块,用于响应于所述查询指令,将所获取的相应的蜜罐系统配置信息、攻击信息分类模型以及所述攻击信息分类模型对攻击流量的分类记录向相应的客户
端进行推送。
[0058] 本发明实施例还提供了一种电子设备,所述电子设备包括:
[0059] 存储器,用于存储可执行指令;
[0060] 处理器,用于运行所述存储器存储的可执行指令时,实现前述的网络攻击信息处理方法。
[0061] 本发明实施例还提供了一种计算机可读存储介质,存储有可执行指令,所述可执行指令被处理器执行时实现前述的网络攻击信息处理方法。
[0062] 本发明实施例具有以下有益效果:
[0063] 本发明通过获取对目标系统进行攻击的攻击流量;响应于所获取的攻击流量,触发端口复用进程,以实现对目标端口所转发的攻击流量进行监听;触发攻击信息分类模型,
对所述攻击流量的类别进行识别;基于所述攻击信息分类模型的识别结果,触发端口转发
进程,对所述攻击流量进行转发,由此,可以实现通过不同类型的蜜罐系统获取对应的攻击
流量,提升蜜罐系统的网络攻击信息处理效率,减少所部署的服务器数量,节省用户的成
本,实现蜜罐系统的大规模部署。

附图说明

[0064] 图1是本发明实施例提供的网络攻击信息处理方法的使用环境示意图;
[0065] 图2为本发明实施例提供的网络攻击信息处理装置的组成结构示意图;
[0066] 图3为本发明实施例中传统的蜜罐系统对攻击流量的处理示意图;
[0067] 图4为本发明实施例提供的网络攻击信息处理方法一个可选的流程示意图;
[0068] 图5为本发明实施例中端口复用进程处理过程示意图;
[0069] 图6为本发明实施例提供的网络攻击信息处理方法一个可选的流程示意图;
[0070] 图7是本发明实施例提供的目标对象确定装置100的架构示意图;
[0071] 图8是本发明实施例提供的区块链网络200中区块链的结构示意图;
[0072] 图9是本发明实施例提供的区块链网络200的功能架构示意图;
[0073] 图10为本申请实施例所提供的网络攻击信息处理方法一个可选的流程示意图;
[0074] 图11为本申请实施例中攻击信息分类模型的训练过程的流程示意图;
[0075] 图12为本申请实施例中网络攻击信息处理方法对web攻击处理示意图;
[0076] 图13为本申请实施例中网络攻击信息处理方法对异常端口随机攻击处理示意图。

具体实施方式

[0077] 为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,所描述的实施例不应视为对本发明的限制,本领域普通技术人员在没有
做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
[0078] 在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解, “一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突
的情况下相互结合。
[0079] 对本发明实施例进行进一步详细说明之前,对本发明实施例中涉及的名词和术语进行说明,本发明实施例中涉及的名词和术语适用于如下的解释。
[0080] 1)蜜罐技术,蜜罐技术本质上是一种对攻击方进行欺骗的技术,通过布置诱饵主机、网络服务或者信息,诱使攻击方对它们实施攻击,从而可以对攻击行为进行捕获和分
析,了解攻击方所使用的工具与方法,推测攻击意图和动机,能够让防御方清晰地了解他们
所面对的安全威胁,并通过技术和管理手段来增强实际系统的安全防护能力。
[0081] 2)终端,包括但不限于:普通终端、专用终端,其中所述普通终端与发送通道保持长连接和/或短连接,所述专用终端与所述发送通道保持长连接。
[0082] 3)客户端,终端中实现特定功能的载体,例如移动客户端(APP)是移动终端中特定功能的载体,例如执行线上直播的功能或者是在线视频的播放功能。
[0083] 4)响应于,用于表示所执行的操作所依赖的条件或者状态,当满足所依赖的条件或状态时,所执行的一个或多个操作可以是实时的,也可以具有设定的延迟;在没有特别说
明的情况下,所执行的多个操作不存在执行先后顺序的限制。
[0084] 5)运行环境,用于解释和执行代码的引擎,例如对于小程序的运行环境而言,可以是iOS平台的JavaScript Core、安卓平台的X5 JS Core。
[0085] 6)0day漏洞,在系统商在知晓并发布相关补丁前就被掌握或者公开的漏洞信息。
[0086] 7)Docker,一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows 机器上,也可以实现虚
拟化。
[0087] 8)交易(Transaction),等同于计算机术语“事务”,交易包括了需要提交到区块链网络执行的操作,并非单指商业语境中的交易,鉴于在区块链技术中约定俗成地使用了“交
易”这一术语,本发明实施例遵循了这一习惯。
[0088] 例如,部署(Deploy)交易用于向区块链网络中的节点安装指定的智能合约并准备好被调用;调用(Invoke)交易用于通过调用智能合约在区块链中追加交易的记录,并对区
块链的状态数据库进行操作,包括更新操作(包括增加、删除和修改状态数据库中的键值
对)和查询操作(即查询状态数据库中的键值对)。
[0089] 9)区块链(Block chain),是由区块(Block)形成的加密的、链式的交易的存储结构。
[0090] 例如,每个区块的头部既可以包括区块中所有交易的哈希值,同时也包含前一个区块中所有交易的哈希值,从而基于哈希值实现区块中交易的防篡改和防伪造;新产生的
交易被填充到区块并经过区块链网络中节点的共识后,会被追加到区块链的尾部从而形成
链式的增长。
[0091] 10)区块链网络(Block chain Network),通过共识的方式将新区块纳入区块链的一系列的节点的集合。
[0092] 11)账本(Ledger),是区块链(也称为账本数据)和与区块链同步的状态数据库的统称。
[0093] 其中,区块链是以文件系统中的文件的形式来记录交易;状态数据库是以不同类型的键(Key)值(Value)对的形式来记录区块链中的交易,用于支持对区块链中交易的快速
查询。
[0094] 12)智能合约(Smart Contracts),也称为链码(Chain code)或应用代码,部署在区块链网络的节点中的程序,节点执行接收的交易中所调用的智能合约,来对账本数据库
的键值对数据进行更新或查询的操作。
[0095] 13)共识(Consensus),是区块链网络中的一个过程,用于在涉及的多个节点之间对区块中的交易达成一致,达成一致的区块将被追加到区块链的尾部,实现共识的机制包
括工作量证明(Po W,Proof of Work)、权益证明(PoS,Proof of Stake)、股份授权证明(D 
Po S,Delegated Proof‑of‑Stake)、消逝时间量证明(Po ET,Proof of Elapsed Time)等。
[0096] 图1为本发明实施例提供的电子设备唤醒方法的使用场景示意图,参见图1,终端(包括终端10‑1和终端10‑2)上设置有能够执行不同功能相应客户端其中,所属客户端为终
端(包括终端10‑1和终端10‑2)通过网络300从相应的服务器200中获取不同的相应信息进
行浏览,终端通过网络300连接服务器200,网络300可以是广域网或者局域网,又或者是二
者的组合,使用无线链路实现数据传输,其中,终端与网络进行信息交互的过程中,有可能
遭受网络攻击,因此,可以部署蜜罐系统。具体来说,蜜罐技术是一种对攻击者进行欺骗的
主动安全技术。在蜜罐技术中,技术人员可以部署一个模拟真实工作系统的虚假系统作为
诱饵,并引诱攻击者对该虚假系统进行攻击,其中,该虚假系统通常可以被称为蜜罐系统。
在攻击者被引诱而对蜜罐系统展开攻击时,该蜜罐系统可以捕获攻击者的攻击数据。通过
对捕获的攻击数据进行分析,可以给实际生产工作中对攻击行为进行识别以及后续的安全
防御措施提供依据。
[0097] 作为一个示例,服务器200用于布设网络攻击信息处理处理装置以实现本发明所提供的网络攻击信息处理方法,以通过获取对目标系统进行攻击的攻击流量;响应于所获
取的攻击流量,触发端口复用进程,以实现对目标端口所转发的攻击流量进行监听;触发攻
击信息分类模型,对所述攻击流量的类别进行识别;基于所述攻击信息分类模型的识别结
果,触发端口转发进程,对所述攻击流量进行转发,以实现通过不同类型的蜜罐系统获取对
应的攻击流量。
[0098] 下面对本发明实施例的网络攻击信息处理装置的结构做详细说明,网络攻击信息处理装置可以各种形式来实施,如带有网络攻击信息处理装置处理功能的专用终端,也可
以为设置有网络攻击信息处理装置处理功能的服务器或者服务器群组,例如部署于目标系
统中的蜜罐系统,例如前序图1中的服务器200。图2为本发明实施例提供的网络攻击信息处
理装置的组成结构示意图,可以理解,图2仅仅示出了网络攻击信息处理装置的示例性结构
而非全部结构,根据需要可以实施图2示出的部分结构或全部结构。
[0099] 本发明实施例提供的网络攻击信息处理装置包括:至少一个处理器201、存储器202、用户接口203和至少一个网络接口204。网络攻击信息处理装置中的各个组件通过总线
系统205耦合在一起。可以理解,总线系统205用于实现这些组件之间的连接通信。总线系统
205除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明
起见,在图2中将各种总线都标为总线系统205。
[0100] 其中,用户接口203可以包括显示器、键盘、鼠标、轨迹球、点击轮、按键、按钮、触感板或者触摸屏等。
[0101] 可以理解,存储器202可以是易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。本发明实施例中的存储器202能够存储数据以支持终端(如10‑1)的
操作。这些数据的示例包括:用于在终端(如10‑1)上操作的任何计算机程序,如操作系统和
应用程序。其中,操作系统包含各种系统程序,例如框架层、核心库层、驱动层等,用于实现
各种基础业务以及处理基于硬件的任务。应用程序可以包含各种应用程序。
[0102] 在一些实施例中,本发明实施例提供的网络攻击信息处理装置可以采用软硬件结合的方式实现,作为示例,本发明实施例提供的网络攻击信息处理装置可以是采用硬件译
码处理器形式的处理器,其被编程以执行本发明实施例提供的网络攻击信息处理方法。例
如,硬件译码处理器形式的处理器可以采用一个或多个应用专用集成电路(ASIC,
Application Specific Integrated Circuit)、DSP、可编程逻辑器件(PLD,Programmable 
Logic Device)、复杂可编程逻辑器件(CPLD,Complex Programmable Logic Device)、现场
可编程门阵列(FPGA,Field‑Programmable Gate Array)或其他电子元件。
[0103] 作为本发明实施例提供的网络攻击信息处理装置采用软硬件结合实施的示例,本发明实施例所提供的网络攻击信息处理装置可以直接体现为由处理器201执行的软件模块
组合,软件模块可以位于存储介质中,存储介质位于存储器202,处理器201读取存储器202
中软件模块包括的可执行指令,结合必要的硬件(例如,包括处理器201以及连接到总线205
的其他组件)完成本发明实施例提供的网络攻击信息处理方法。
[0104] 作为示例,处理器201可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、数字信号处理器(DSP,Digital Signal Processor),或者其他可编程逻辑器件、分
立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常
规的处理器等。
[0105] 作为本发明实施例提供的网络攻击信息处理装置采用硬件实施的示例,本发明实施例所提供的装置可以直接采用硬件译码处理器形式的处理器201来执行完成,例如,被一
个或多个应用专用集成电路(ASIC,Application Specific Integrated Circuit)、DSP、可
编程逻辑器件(PLD,Programmable Logic Device)、复杂可编程逻辑器件(CPLD,Complex 
Programmable Logic Device)、现场可编程门阵列(FPGA,Field‑Programmable Gate 
Array)或其他电子元件执行实现本发明实施例提供的网络攻击信息处理方法。
[0106] 本发明实施例中的存储器202用于存储各种类型的数据以支持网络攻击信息处理装置的操作。这些数据的示例包括:用于在网络攻击信息处理装置上操作的任何可执行指
令,如可执行指令,实现本发明实施例的从网络攻击信息处理方法的程序可以包含在可执
行指令中。
[0107] 在另一些实施例中,本发明实施例提供的网络攻击信息处理装置可以采用软件方式实现,图2示出了存储在存储器202中的网络攻击信息处理装置,其可以是程序和插件等
形式的软件,并包括一系列的模块,作为存储器202中存储的程序的示例,可以包括网络攻
击信息处理装置,网络攻击信息处理装置中包括以下的软件模块信息传输模块2081和信息
处理模块2082。当网络攻击信息处理装置中的软件模块被处理器201读取到RAM中并执行
时,将实现本发明实施例提供的网络攻击信息处理方法,其中,网络攻击信息处理装置中各
个软件模块的功能,包括:
[0108] 信息传输模块2081,用于获取对目标系统进行攻击的攻击流量;
[0109] 信息处理模块2082,用于响应于所获取的攻击流量,触发端口复用进程,以实现对目标端口所转发的攻击流量进行监听;
[0110] 所述信息处理模块2082,用于触发攻击信息分类模型,对所述攻击流量的类别进行识别;
[0111] 所述信息处理模块2082,用于基于所述攻击信息分类模型的识别结果,触发端口转发进程,对所述攻击流量进行转发,以实现通过不同类型的蜜罐系统获取对应的攻击流
量。
[0112] 结合图2示出的网络攻击信息处理装置说明本发明实施例提供的网络攻击信息处理方法,在介绍本发明所提供的网络攻击信息处理方法之前,首先对传统技术中蜜罐系统
对于攻击流量的处理过程进行介绍,其中,参考图3,图3为本发明实施例中传统的蜜罐系统
对攻击流量的处理示意图,其中,在传统的蜜罐系统的使用过程中,常见的WEB攻击目标达
几百种,按传统的蜜罐布置需要几百台服务器分布式实现,并且需要几百个IP地址(作为示
例,图3中示出了4台服务器以及4个独立IP),同时这一过程中超过80%以上的攻击流量是与
攻击目标不匹配的,也就是说变成无效流量,造成巨大的资源浪费,(例如图3只有实线的攻
击流量的匹配过程才是有效的,虚线都是不匹配的流量,造成效率蜜罐系统较低,影响用户
的使用体验)。
[0113] 为解决上述缺陷,参见图4,图4为本发明实施例提供的网络攻击信息处理方法一个可选的流程示意图,可以理解地,图4所示的步骤可以由运行网络攻击信息处理装置的各
种电子设备执行,例如可以是可以部署蜜罐系统的服务器或服务器群组。具体包括:
[0114] 步骤401:获取对目标系统进行攻击的攻击流量。
[0115] 其中,在目标系统的使用过程中,为了避免目标系统遭受网络攻击,可以在服务器或者服务器群组中部署蜜罐系统,具体来说,可以根据目标系统的使用环境,确定对应的固
件配置信息;根据固件配置信息,从蜜罐镜像云服务器中获取相匹配的蜜罐镜像,其中,蜜
罐镜像支持不同组织架构的蜜罐结构;而云服务器中存储有不同类型的蜜罐镜像,进一步
地,在目标系统中创建容器,并通过所述容器创建支持不同组织架构的蜜罐系统,可以实现
通过所部署的蜜罐系统捕获对目标系统的攻击流量,其中,攻击流量是指攻击者通过互联
网发起的攻击行为,一个攻击行为对应一个攻击流量。
[0116] 步骤402:响应于所获取的攻击流量,触发端口复用进程,以实现对目标端口所转发的攻击流量进行监听。
[0117] 在本发明的一些实施例中,响应于所获取的攻击流量,触发端口复用进程,以实现对目标端口所转发的攻击流量进行监听,可以通过以下方式实现:
[0118] 响应于所获取的攻击流量,基于所述端口复用进程,确定目标端口;根据所述目标端口,配置与所述目标端口相匹配的套接字以及套接口函数;基于与所述目标端口相匹配
的套接字以及套接口函数,对目标端口所转发的攻击流量进行监听。其中,参考图5,图5为
本发明实施例中端口复用进程处理过程示意图,其中,通过端口复用进程可以建立特殊套
接字:绑定任意端口,比如80端口,例如使所有攻击流量从80端口进入;设置套接口
setsockopt:用于任意类型、任意状态套接口的设置选项值。尽管在不同协议层上存在选
项,但本申请所使用的函数仅定义了最高的“套接口”层次上的选项通过流量分类后,可以
使用经过训练的svm模型进行类型判断,进一步地,判断请求流量所属类型,再通过端口转
发进程与该类型对应的目标建立套接字通讯,例如当存在不同的蜜罐服务进程时,可以分
别作为目标1和目标2,并通过端口转发进程建立不同的套接字并分别与目标1和目标2进行
通讯。
[0119] 当然,在使用部署于服务器或者云端的攻击信息分类模型之前还需要对攻击信息分类模型进行训练,以确定对应的模型参数,具体来说,继续结合图2示出的网络攻击信息
处理装置说明本发明实施例提供的网络攻击信息处理方法,参见图6,图6为本发明实施例
提供的网络攻击信息处理方法一个可选的流程示意图,可以理解地,图6所示的步骤可以由
运行网络攻击信息处理装置的各种电子设备执行,例如可以是如带有网络攻击信息处理功
能的服务器或者服务器群组。下面针对图6示出的步骤进行说明。
[0120] 步骤601:获取与所述攻击信息分类模型的使用环境相匹配的训练样本。
[0121] 其中,所述训练样本中包括相应目标系统托管平台所获取的历史攻击流量。
[0122] 步骤602:通过所述攻击信息分类模型的提取与所述训练样本相匹配的训练数据集合以及测试数据集合。
[0123] 在本发明的一些实施例中,通过所述攻击信息分类模型的提取与所述训练样本相匹配的训练数据集合以及测试数据集合,可以通过以下方式实现:
[0124] 对所述训练样本进行分类,确定不同的攻击流量类型;基于所述攻击流量的不同类型,对所述训练样本进行特征化处理,提取相匹配的差异特征;对所提取的差异特征进行
标准化处理,形成标准化差异特征,并按照相应分配比例对所述标准化差异特征进行数据
拆分处理,形成与所述训练样本相匹配的训练数据集合以及测试数据集合。具体来说,参考
表1训练样本的获取可以从蜜罐系统的托管服务器github收集得来,其中,托管服务器保存
有历史攻击流量中的攻击类型、攻击目标以及对应的标识或者标记。
[0125]
[0126] 继续参考表2,可以用敏感字、敏感字符、字符串长度等作为权重来衡量攻击类型。并在标准化进程中将把以上敏感字、字符串长度等特征转换成0‑1之间的值,具体来说,当
攻击流量的信息长度小于100字节,同时数据包中携带“php、phpinfo、think”等敏感字时,
可以确定对应的攻击流量的类型为Thinkphp攻击;或者,攻击流量的信息长度大于100字
节,同时数据包中携带“java.io、action”等敏感字时,可以确定对应的攻击流量的类型为
Struts2 攻击攻击。
[0127]
[0128] 进一步地,把Thinkphp漏洞利用exp与Struts2漏洞利用exp的随机混合数据分别按40%和60%的比例分为测试样本和测试样本。当完成模型训练时,可以通过该模型对所接
收的攻击流量进行智能识别,例如,参考表3,通过所部署的模型,可以识别恶意流量攻击的
蜜罐目标类型。
[0129]
[0130] 步骤603:根据与所述训练样本相匹配的训练数据集合以及测试数据集合对所述攻击信息分类模型进行训练。
[0131] 其中,具体来说,可以对与所述训练样本相匹配的测试数据集合中的攻击流量类型进行标记;通过所述训练数据集合,对所述攻击信息分类模型进行训练,确定所述攻击信
息分类模型的参数;保持所述攻击信息分类模型的参数不变,对所述测试数据集合中的攻
击流量类型进行分类;将所述测试数据集合中的攻击流量类型的分类结果与标记的攻击流
量类型进行比较;当所述测试数据集合中的攻击流量类型的分类结果与标记的攻击流量类
型的一致比例超过阈值时,确定与所述攻击信息分类模型相适配的模型参数。
[0132] 由此,可以实现确定与所述攻击信息分类模型相适配的模型参数。进一步地,将训练完成的攻击信息分类模型部署在相应的服务器中,在接收到攻击流量后,对所接收的攻
击流量的类型进行分类,以便于蜜罐系统根据不同的攻击流量类型进行获取对应的攻击流
量。
[0133] 当经过训练的攻击信息分类模型部署在相应服务器或者服务器群组中,即可以对目标系统所接收的攻击流量进行处理,具体来说:
[0134] 步骤403:触发攻击信息分类模型,对所述攻击流量的类别进行识别。
[0135] 在本发明的一些实施例中,触发攻击信息分类模型,对所述攻击流量的类别进行识别,可以通过以下方式实现:
[0136] 通过所述攻击信息分类模型,对所述攻击流量进行特征化处理;根据攻击流量特征化处理的结果,对所述攻击流量特征化处理结果进行标准化处理,形成攻击流量特征;基
于攻击信息分类模型对所述攻击流量特征进行处理,确定所述攻击流量的类别。
[0137] 步骤404:基于所述攻击信息分类模型的识别结果,触发端口转发进程,对所述攻击流量进行转发,以实现通过不同类型的蜜罐系统获取对应的攻击流量。
[0138] 进一步地,当不同类型的蜜罐系统获取对应的攻击流量时,网络攻击信息处理装置还能够基于所述攻击流量,捕获所述攻击流量的访问服务的记录;基于所述攻击流量的
访问服务的记录,获取并解析攻击流量所携带的网络数据包;基于所述网络数据包,确定并
监控所述攻击流量入侵蜜罐系统后的蜜罐系统连接行为。进一步地,还可以对网络攻击行
为进行记录,例如记录网络攻击行为的源网际互连协议地址(即IP地址)、网络攻击行为的
时间与次数、网络攻击行为的类型、攻击流量发起源等。此外,计算机设备捕获到网络攻击
行为时,可以对网络攻击行为进行响应,将回复报文返回给网络攻击行为的攻击方,从而通
过和攻击方进行交互,避免被攻击方识别出入侵了蜜罐环境。此外,计算机设备可以隐藏自
身的IP地址,以免泄露真实的IP地址。
[0139] 在本发明的一些实施例中,当目标系统的用户对系统进行迁移或重新配置时,可以通过购买区块链网络服务获取,以获取区块链网络中所存储的信息,实现快速配置蜜罐
系统以及网络攻击信息处理装置,其中,可以将蜜罐系统配置信息、攻击信息分类模型以及
所述攻击信息分类模型对攻击流量的分类记录送至区块链网络,以使所述区块链网络的节
点将所述蜜罐系统配置信息、攻击信息分类模型以及所述攻击信息分类模型对攻击流量的
分类记录填充至新区块,且当对所述新区块共识一致时,将所述新区块追加至区块链的尾
部。
[0140] 其中,本发明实施例可结合云技术实现,云技术(Cloud technology)是指在广域网或局域网内将硬件、软件及网络等系列资源统一起来,实现数据的计算、储存、处理和共
享的一种托管技术,也可理解为基于云计算商业模式应用的网络技术、信息技术、整合技
术、管理平台技术及应用技术等的总称。技术网络系统的后台服务需要大量的计算、存储资
源,如视频网站、图片类网站和更多的门户网站,因此云技术需要以云计算作为支撑。
[0141] 需要说明的是,云计算是一种计算模式,它将计算任务分布在大量计算机构成的资源池上,使各种应用系统能够根据需要获取计算力、存储空间和信息服务。提供资源的网
络被称为“云”。“云”中的资源在使用者看来是可以无限扩展的,并且可以随时获取,按需使
用,随时扩展,按使用付费。作为云计算的基础能力提供商,会建立云计算资源池平台,简称
云平台,一般称为基础设施即服务(IaaS,Infrastructure as a Service),在资源池中部
署多种类型的虚拟资源,供外部客户选择使用。云计算资源池中主要包括:计算设备(可为
虚拟化机器,包含操作系统)、存储设备和网络设备。
[0142] 结合前序图1所示,本发明实施例所提供的数据处理方法可以通过相应的云端设备实现,例如:终端(包括终端10‑1和终端10‑2)通过网络300连接位于云端的服务器200,网
络300可以是广域网或者局域网,又或者是二者的组合。值得说明的是,服务器200可为实体
设备,也可为虚拟化设备。
[0143] 在本发明的一些实施例中,当接收所述区块链网络中的其他节点的数据同步请求时,可以响应于所述数据同步请求,对所述其他节点的权限进行验证;
[0144] 当所述其他节点的权限通过验证时,控制当前节点与所述其他节点之间进行数据同步,以实现所述其他节点获取蜜罐系统配置信息、攻击信息分类模型以及所述攻击信息
分类模型对攻击流量的分类记录。
[0145] 在本发明的一些实施例中,还可以响应于查询请求,解析所述查询请求以获取对应的对象标识;根据所述对象标识,获取区块链网络中的目标区块内的权限信息;对所述权
限信息与所述对象标识的匹配性进行校验;当所述权限信息与所述对象标识相匹配时,在
所述区块链网络中获取相应的蜜罐系统配置信息、攻击信息分类模型以及所述攻击信息分
类模型对攻击流量的分类记录;响应于所述查询指令,将所获取的相应的蜜罐系统配置信
息、攻击信息分类模型以及所述攻击信息分类模型对攻击流量的分类记录向相应的客户端
进行推送。
[0146] 参见图7,图7是本发明实施例提供的目标对象确定装置100的架构示意图,包括区块链网络200(示例性示出了共识节点210‑1、共识节点210‑2和共识节点210‑3)、认证中心
300、业务主体400和业务主体500,下面分别进行说明。
[0147] 区块链网络200的类型是灵活多样的,例如可以为公有链、私有链或联盟链中的任意一种。以公有链为例,任何业务主体的电子设备例如用户终端和服务器,都可以在不需要
授权的情况下接入区块链网络200;以联盟链为例,业务主体在获得授权后其下辖的电子设
备(例如终端/服务器)可以接入区块链网络200,此时,成为区块链网络200中的客户端节
点。
[0148] 在一些实施例中,客户端节点可以只作为区块链网络200的观察者,即提供支持业务主体发起交易(例如,用于上链存储数据或查询链上数据)功能,对于区块链网络200的共
识节点210的功能,例如排序功能、共识服务和账本功能等,客户端节点可以缺省或者有选
择性(例如,取决于业务主体的具体业务需求)地实施。从而,可以将业务主体的数据和业务
处理逻辑最大程度迁移到区块链网络200中,通过区块链网络200实现数据和业务处理过程
的可信和可追溯。
[0149] 区块链网络200中的共识节点接收来自不同业务主体(例如图7中示出的业务主体400和业务主体500)的客户端节点(例如,图7中示出的归属于业务主体400的客户端节点
410、以及归属于业务主体500的客户端节点510)提交的交易,执行交易以更新账本或者查
询账本,执行交易的各种中间结果或最终结果可以返回业务主体的客户端节点中显示。
[0150] 例如,客户端节点410/510可以订阅区块链网络200中感兴趣的事件,例如区块链网络200中特定的组织/通道中发生的交易,由共识节点210推送相应的交易通知到客户端
节点410/510,从而触发客户端节点410/510中相应的业务逻辑。
[0151] 下面以多个业务主体接入区块链网络以实现目标对象确定结果的管理为例,说明区块链网络的示例性应用。
[0152] 参见图7,管理环节涉及的多个业务主体,如业务主体400可以是基于人工智能的目标对象确定装置,业务主体500可以是带有目标对象确定功能的显示系统,从认证中心
300进行登记注册获得各自的数字证书,数字证书中包括业务主体的公钥、以及认证中心
300对业务主体的公钥和身份信息签署的数字签名,用来与业务主体针对交易的数字签名
一起附加到交易中,并被发送到区块链网络,以供区块链网络从交易中取出数字证书和签
名,验证消息的可靠性(即是否未经篡改)和发送消息的业务主体的身份信息, 区块链网络
会根据身份进行验证,例如是否具有发起交易的权限。业务主体下辖的电子设备(例如终端
或者服务器)运行的客户端都可以向区块链网络200请求接入而成为客户端节点。
[0153] 业务主体400的客户端节点410用于获取对目标系统进行攻击的攻击流量;响应于所获取的攻击流量,触发端口复用进程,以实现对目标端口所转发的攻击流量进行监听;触
发攻击信息分类模型,对所述攻击流量的类别进行识别;基于所述攻击信息分类模型的识
别结果,触发端口转发进程,对所述攻击流量进行转发,以实现通过不同类型的蜜罐系统获
取对应的攻击流量;将蜜罐系统配置信息、攻击信息分类模型以及所述攻击信息分类模型
对攻击流量的分类记录发送至区块链网络200。
[0154] 其中,将蜜罐系统配置信息、攻击信息分类模型以及所述攻击信息分类模型对攻击流量的分类记录发送至区块链网络200,可以预先在客户端节点410设置业务逻辑,当形
成相应的目标对象确定结果时,客户端节点410将蜜罐系统配置信息、攻击信息分类模型以
及所述攻击信息分类模型对攻击流量的分类记录自动发送至区块链网络200,也可以由业
务主体400的业务人员在客户端节点410中登录,手动打包将蜜罐系统配置信息、攻击信息
分类模型以及所述攻击信息分类模型对攻击流量的分类记录,并将其发送至区块链网络
200。在发送时,客户端节点410根据将蜜罐系统配置信息、攻击信息分类模型以及所述攻击
信息分类模型对攻击流量的分类记录生成对应更新操作的交易,在交易中指定了实现更新
操作需要调用的智能合约、以及向智能合约传递的参数,交易还携带了客户端节点410的数
字证书、签署的数字签名(例如,使用客户端节点410的数字证书中的私钥,对交易的摘要进
行加密得到),并将交易广播到区块链网络200中的共识节点210。
[0155] 区块链网络200中的共识节点210中接收到交易时,对交易携带的数字证书和数字签名进行验证,验证成功后,根据交易中携带的业务主体400的身份,确认业务主体400是否
是具有交易权限,数字签名和权限验证中的任何一个验证判断都将导致交易失败。验证成
功后签署节点210自己的数字签名(例如,使用节点210‑1的私钥对交易的摘要进行加密得
到),并继续在区块链网络200中广播。
[0156] 区块链网络200中的共识节点210接收到验证成功的交易后,将交易填充到新的区块中,并进行广播。区块链网络200中的共识节点210广播的新区块时,会对新区块进行共识
过程,如果共识成功,则将新区块追加到自身所存储的区块链的尾部,并根据交易的结果更
新状态数据库,执行新区块中的交易:对于提交更新将蜜罐系统配置信息、攻击信息分类模
型以及所述攻击信息分类模型对攻击流量的分类记录的交易,在状态数据库中添加包括将
蜜罐系统配置信息、攻击信息分类模型以及所述攻击信息分类模型对攻击流量的分类记录
的键值对。
[0157] 业务主体500的业务人员在客户端节点510中登录,输入目标对象确定结果或者目标对象查询请求,客户端节点510根据目标对象确定结果或者目标对象查询请求生成对应
更新操作/查询操作的交易,在交易中指定了实现更新操作/查询操作需要调用的智能合
约、以及向智能合约传递的参数,交易还携带了客户端节点510的数字证书、签署的数字签
名(例如,使用客户端节点510的数字证书中的私钥,对交易的摘要进行加密得到),并将交
易广播到区块链网络200中的共识节点210。
[0158] 区块链网络200中的共识节点210中接收到交易,对交易进行验证、区块填充及共识一致后,将填充的新区块追加到自身所存储的区块链的尾部,并根据交易的结果更新状
态数据库,执行新区块中的交易:对于提交的更新某一将蜜罐系统配置信息、攻击信息分类
模型以及所述攻击信息分类模型对攻击流量的分类记录的交易,根据人工识别结果更新状
态数据库中该目标对象确定结果对应的键值对;对于提交的查询某个目标对象确定结果的
交易,从状态数据库中查询目标对象确定结果对应的键值对,并返回交易结果。
[0159] 值得说明的是,在图7中示例性地示出了将蜜罐系统配置信息、攻击信息分类模型以及所述攻击信息分类模型对攻击流量的分类记录直接上链的过程,但在另一些实施例
中,对于目标对象确定结果的数据量较大的情况,客户端节点410可将目标对象确定结果的
哈希以及相应的目标对象确定结果的哈希成对上链,将原始的目标对象确定结果以及相应
的目标对象确定结果存储于分布式文件系统或数据库。客户端节点510从分布式文件系统
或数据库获取到目标对象确定结果以及相应的目标对象确定结果后,可结合区块链网络
200中对应的哈希进行校验,从而减少上链操作的工作量。
[0160] 作为区块链的示例,参见图8,图8是本发明实施例提供的区块链网络200中区块链的结构示意图,每个区块的头部既可以包括区块中所有交易的哈希值,同时也包含前一个
区块中所有交易的哈希值,新产生的交易的记录被填充到区块并经过区块链网络中节点的
共识后,会被追加到区块链的尾部从而形成链式的增长,区块之间基于哈希值的链式结构
保证了区块中交易的防篡改和防伪造。
[0161] 下面说明本发明实施例提供的区块链网络的示例性的功能架构,参见图9,图9是本发明实施例提供的区块链网络200的功能架构示意图,包括应用层201、共识层202、网络
层203、数据层204和资源层205,下面分别进行说明。
[0162] 资源层205封装了实现区块链网路200中的各个节点210的计算资源、存储资源和通信资源。
[0163] 数据层204封装了实现账本的各种数据结构,包括以文件系统中的文件实现的区块链,键值型的状态数据库和存在性证明(例如区块中交易的哈希树)。
[0164] 网络层203 封装了点对点(P2P,Point to Point)网络协议、数据传播机制和数据验证机制、接入认证机制和业务主体身份管理的功能。
[0165] 其中,P2P网络协议实现区块链网络200中节点210之间的通信,数据传播机制保证了交易在区块链网络200中的传播,数据验证机制用于基于加密学方法(例如数字证书、数
字签名、公/私钥对)实现节点210之间传输数据的可靠性;接入认证机制用于根据实际的业
务场景对加入区块链网络200的业务主体的身份进行认证,并在认证通过时赋予业务主体
接入区块链网络200的权限;业务主体身份管理用于存储允许接入区块链网络200的业务主
体的身份、以及权限(例如能够发起的交易的类型)。
[0166] 共识层202封装了区块链网络200中的节点210对区块达成一致性的机制(即共识机制)、交易管理和账本管理的功能。共识机制包括POS、POW和DPOS等共识算法,支持共识算
法的可插拔。
[0167] 交易管理用于验证节点210接收到的交易中携带的数字签名,验证业务主体的身份信息,并根据身份信息判断确认其是否具有权限进行交易(从业务主体身份管理读取相
关信息);对于获得接入区块链网络200的授权的业务主体而言,均拥有认证中心颁发的数
字证书,业务主体利用自己的数字证书中的私钥对提交的交易进行签名,从而声明自己的
合法身份。
[0168] 账本管理用于维护区块链和状态数据库。对于取得共识的区块,追加到区块链的尾部;执行取得共识的区块中的交易,当交易包括更新操作时更新状态数据库中的键值对,
当交易包括查询操作时查询状态数据库中的键值对并向业务主体的客户端节点返回查询
结果。支持对状态数据库的多种维度的查询操作,包括:根据区块向量号(例如交易的哈希
值)查询区块;根据区块哈希值查询区块;根据交易向量号查询区块;根据交易向量号查询
交易;根据业务主体的账号(向量号)查询业务主体的账号数据;根据通道名称查询通道中
的区块链。
[0169] 应用层201 封装了区块链网络能够实现的各种业务,包括交易的溯源、存证和验证等。
[0170] 下面以互联网信息交互过程中的web攻击和异常端口随机攻击为例,继续对本申请所提供的网络攻击信息处理方法进行说明,其中,参考图10,图10为本申请实施例所提供
的网络攻击信息处理方法一个可选的流程示意图,其中,由于WEB中间件的多样性、应用服
务的多样性,web攻击是目前最流行的攻击之一;而蜜罐监听端口十分有限,通常只有80、
8080、8081等常见的端口,因此可以使用攻击流量发起web攻击,同时对于异常端口(例如修
改了端口名称的端口),攻击流量还可以发起异常端口随机攻击。具体来说,包括以下步骤:
[0171] 步骤1001:通过端口复用进程确定初始套接字。
[0172] 其中,可以根据目标端口的端口类型配置与目标端口相匹配的套接字以及套接口函数,其中,所确定的初始套接字可以支持TCP/IP协议的路通信的基本操作,提供了应用层
进程利用网络协议交换数据的机制,是应用程序通过网络协议进行通信的接口,也是应用
程序与网络协议根进行交互的接口。
[0173] 步骤1002:设置端口复用进程的套接口。
[0174] 其中,套接口可以包括:流套接口和数据报套接口,具体的,流套接口提供了双向的,有序的,无重复并且无记录边界的数据流服务。数据报套接口支持双向的数据流。
[0175] 步骤1003:绑定并监听80端口。
[0176] 其中通过端口复用进程所绑定的端口,可以根据蜜罐系统的类型进行调整。
[0177] 步骤1004:接收网络中的攻击流量。
[0178] 其中,网络中的攻击流量是指攻击者通过互联网发起的攻击行为,一个攻击行为对应一个攻击流量,攻击者指任何针对蜜罐系统发起攻击行为的实体,通过在蜜罐系统设
置接入服务器,由接入服务器将不同攻击流量导入指定蜜罐终端中,便于蜜罐系统能够捕
获并分析攻击流量中的恶意代码。
[0179] 步骤1005:对所接收的攻击流量进行解析。
[0180] 其中,可以将对攻击流量的解析结果存储起来,进行分析和关联,使得管理员可以在系统的历史攻击事件中查找所有类似的攻击,从而获得关于攻击者的更多信息。通过对
蜜罐系统捕获到的攻击流量进行存储、统计和展示,用户可以直观地看到蜜罐系统受到攻
击的状况,同时可以根据数据进一步对攻击进行溯源。
[0181] 步骤1006:获取训练数据,并对攻击信息分类模型进行训练。
[0182] 步骤1007:通过测试数据,对攻击信息分类模型进行检测。
[0183] 其中,当检测通过时,将经过训练的攻击信息分类模型部署在本地服务器或者云端,以适配不同的蜜罐系统的使用环境。
[0184] 步骤1008:通过攻击信息分类模型对攻击流量进行智能判断。
[0185] 由此,可以实现对攻击流量的类型进行分类。
[0186] 步骤1009:根据分类结果,通过端口转发进程对攻击流量进行转发。
[0187] 其中,智能识别进程中可以部署经过训练的识别模型,对攻击流量进行识别,具体来说,实现智能识别的算法的种类本申请不做限制,例如使用支持向量机(Support Vector 
Machine ,SVM)分类器对目标进行模型建立,以便智能识别thinkphp与struts2的攻击。
[0188] 其中,参考图11,图11为本申请实施例中攻击信息分类模型的训练过程的流程示意图,具体包括以下步骤:
[0189] 步骤1101:对训练样本进行数据分类。
[0190] 其中,训练样本可以来自于蜜罐系统已经保存的攻击流量的分析结果,具体来说已经部署的蜜罐系统在相应的运行环境中可以捕获的大量攻击流量,通过识别与分类,形
成不同的训练样本。
[0191] 步骤1102:基于分类结果,进行特征化处理。
[0192] 其中,对漏洞攻击exp进行转义,提取出差异特征,比如敏感字、长度信息等。
[0193] 步骤1103:进行数据标准化处理。
[0194] 其中,原始数据特征参差不齐,需要做一个统一的标准,比如把特征统统转义为0‑1之间的数值,方便svm识别。
[0195] 步骤1104:对训练数据进行拆分,形成训练数据和测试数据。
[0196] 其中,训练数据可以应用于对攻击信息分类模型进行训练,实现调整攻击信息分类模型的模型参数,测试数据用于检测攻击信息分类模型的处理效果是否达到预期,便于
及时地调整攻击信息分类模型的参数,以适应蜜罐系统不同的使用环境。
[0197] 步骤1105:判断模型验证结果是否达到预期,如果是执行步骤1106,否则没执行步骤1107。
[0198] 步骤1106:确定模型参数,完成模型训练。
[0199] 步骤1107:对模型参数进行调整。
[0200] 由此,本申请所提供的网络攻击信息处理方法可以通过部署的模型,使用智能的交互方式应对攻击流量,提前识别攻击流量的目标,然后转发给对应的中间件或应用系统
处理交互,可以使一台服务器处理各种类型的攻击流量的交互;节约大量蜜罐ip和服务器
资源、并且大大提高蜜罐交互命中率,实现高准度的交互,提升蜜罐系统捕获未知0day漏洞
的能力,提升用户的使用体验。具体来说,参考图12和图13,图12为本申请实施例中网络攻
击信息处理方法对web攻击处理示意图;图13为本申请实施例中网络攻击信息处理方法对
异常端口随机攻击处理示意图;其中,参考图12,对于web攻击的使用场景,由于蜜罐监听端
口十分有限,通常只有80、8080、8081等常见的端口,通过本申请的方案,可以提前智能判断
各种攻击流量的类型,并交给对应类型的蜜罐实现交互,提升处理效率,相比于传统技术中
的网络攻击信息处理方法能够实现蜜罐系统通过80、8080、8081等经过配置的端口。
[0201] 进一步地,参考图13,对于异常端口随机攻击的使用场景,对于经过修改的端口使用环境,本申请的所提供的网络攻击信息处理方法可以修正异常端口的攻击,并通过攻击
信息分类模型判断攻击流量协议所属的服务类型,转发给相应服务的蜜罐处理,最终实现
执行交互,提升处理效率,同时不同类型的蜜罐系统以及攻击信息分类模型装置可以部署
于一台服务器中,有效减少了硬件成本。
[0202] 有益技术效果:
[0203] 本申请通过获取对目标系统进行攻击的攻击流量;响应于所获取的攻击流量,触发端口复用进程,以实现对目标端口所转发的攻击流量进行监听;触发攻击信息分类模型,
对所述攻击流量的类别进行识别;基于所述攻击信息分类模型的识别结果,触发端口转发
进程,对所述攻击流量进行转发,由此能够实现通过攻击信息分类模型,对攻击流量的类别
进行识别,对攻击流量进行转发,通过不同类型的蜜罐系统获取对应的攻击流量,提升蜜罐
系统的网络攻击信息处理效率,减少所部署的服务器数量,节省用户的成本,实现蜜罐系统
的大规模部署。
[0204] 以上所述,仅为本发明的实施例而已,并非用于限定本发明的保护范围,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围
之内。