一种异常邮件检测方法、装置、电子设备及存储介质与流程

文档序号:27207334发布日期:2021-11-03 14:28阅读:192来源:国知局
一种异常邮件检测方法、装置、电子设备及存储介质与流程

1.本发明涉及计算机技术领域,尤其涉及一种异常邮件检测方法、装置、电子设备及存储介质。


背景技术:

2.钓鱼邮件是异常邮件的一种,钓鱼邮件指利用伪装的电子邮件,诱导收件人将账号、口令等信息回复给指定的接收者,从而造成收件人的财产损失。相关技术基于规则、机器学习和深度学习等方法检测钓鱼邮件,相关技术在检测钓鱼邮件时,很多钓鱼邮件都会漏检,钓鱼邮件检测准确率不高。


技术实现要素:

3.为了解决上述问题,本发明实施例提供了一种异常邮件检测方法、装置、电子设备及存储介质,以至少解决相关技术异常邮件检测准确率不高的问题。
4.本发明的技术方案是这样实现的:
5.第一方面,本发明实施例提供了一种异常邮件检测方法,该方法包括:
6.获取至少两封电子邮件中的每封电子邮件的至少两个第一数据;所述第一数据表征对应的电子邮件的邮件信息;
7.基于获取到的第一数据构建关于所述至少两封电子邮件的知识图谱;所述知识图谱表征所述至少两封电子邮件之间的关联关系;
8.识别所述知识图谱的至少两个子图中的异常子图;
9.基于识别出的异常子图确定所述至少两封电子邮件中的异常邮件。
10.上述方案中,所述识别所述知识图谱的至少两个子图中的异常子图,包括:
11.基于所述至少两个子图中每个子图的特征参数确定对应的子图的向量;
12.将所述向量输入设定的分类模型,得到所述设定的分类模型输出的预测值;所述设定的分类模型用于基于对应的超球面输出所述预测值;所述预测值表征所述向量对应的子图是否为异常子图。
13.上述方案中,其特征在于,所述设定的分类模型确定所述向量是否在所述超球面内,
14.在所述向量在所述超球面内的情况下,所述设定的分类模型输出第一预测值;所述第一预测值表征所述向量对应的子图为正常子图;
15.在所述向量不在所述超球面内的情况下,所述设定的分类模型输出第二预测值;所述第二预测值表征所述向量对应的子图为异常子图。
16.上述方案中,所述基于识别出的异常子图确定所述至少两封电子邮件中的异常邮件,包括:
17.将所述异常子图对应的所有电子邮件确定为异常邮件。
18.上述方案中,所述识别所述知识图谱的至少两个子图中的异常子图,包括:
19.确定所述知识图谱的至少两个子图中每个子图的第一节点的数量;所述第一节点表征电子邮件的发件人身份字段;
20.在所述第一节点的数量大于1的情况下,识别对应的子图为异常子图。
21.上述方案中,所述基于识别出的异常子图确定所述至少两封电子邮件中的异常邮件,包括:
22.在识别出的异常子图的所有第二节点中确定出第三节点;所述第二节点表征电子邮件的id;所述第三节点表征相连的第一节点未在设定白名单中的第二节点;
23.将确定出的第三节点对应的电子邮件确定为异常邮件。
24.上述方案中,所述识别所述知识图谱的至少两个子图中的异常子图,包括:
25.在所述知识图谱中与第四节点相连的第二节点的数量大于1的情况下,确定与所述第二节点相连的第五节点的数量是否大于1;所述第二节点表征电子邮件的id;所述第四节点表征电子邮件的url中的一级域名;所述第五节点表征电子邮件的源ip地址或电子邮件的发件人地址中的一级域名;
26.在所述第五节点的数量大于1的情况下,识别对应的子图为异常子图。
27.上述方案中,所述基于所述异常子图确定所述至少两封电子邮件中的异常邮件,包括:
28.将所述异常子图中与所述第四节点相连的第二节点对应的电子邮件确定为异常邮件。
29.上述方案中,所述基于获取到的第一数据构建关于所述至少两封电子邮件的知识图谱时,所述方法包括:
30.基于所述至少两封电子邮件中的每封电子邮件的至少两个第一数据生成所述知识图谱的节点;其中,相同的第一数据在所述知识图谱中对应同一节点;
31.将属于同一封电子邮件的第一数据对应的节点相连,以构成所述知识图谱。
32.上述方案中,所述至少两个第一数据至少包括以下任意两项:
33.电子邮件的发件人地址中的一级域名;
34.电子邮件的标识id;
35.电子邮件的源网际互连协议ip地址;
36.电子邮件的统一资源定位系统url中的一级域名;
37.电子邮件的发件人身份字段。
38.第二方面,本发明实施例提供了一种异常邮件检测装置,该装置包括:
39.获取模块,用于获取至少两封电子邮件中的每封电子邮件的至少两个第一数据;所述第一数据表征对应的电子邮件的邮件信息;
40.构建模块,用于基于获取到的第一数据构建关于所述至少两封电子邮件的知识图谱;所述知识图谱表征所述至少两封电子邮件之间的关联关系;
41.识别模块,用于识别所述知识图谱的至少两个子图中的异常子图;
42.确定模块,用于基于识别出的异常子图确定所述至少两封电子邮件中的异常邮件。
43.第三方面,本发明实施例提供了一种电子设备,包括处理器和存储器,所述处理器和存储器相互连接,其中,所述存储器用于存储计算机程序,所述计算机程序包括程序指
令,所述处理器被配置用于调用所述程序指令,执行本发明实施例第一方面提供的异常邮件检测方法的步骤。
44.第四方面,本发明实施例提供了一种计算机可读存储介质,包括:所述计算机可读存储介质存储有计算机程序。所述计算机程序被处理器执行时实现如本发明实施例第一方面提供的异常邮件检测方法的步骤。
45.本发明实施例通过获取至少两封电子邮件中的每封电子邮件的至少两个第一数据,第一数据表征对应的电子邮件的邮件信息。基于获取到的第一数据构建关于至少两封电子邮件的知识图谱,知识图谱表征至少两封电子邮件之间的关联关系,识别知识图谱的至少两个子图中的异常子图,基于识别出的异常子图确定至少两封电子邮件中的异常邮件。本发明实施例通过构建电子邮件的知识图谱,知识图谱能够体现电子邮件之间的关联关系,通过知识图谱中的异常子图确定电子邮件中的异常邮件,可以提高异常邮件检测的准确率。
附图说明
46.图1是本发明实施例提供的一种异常邮件检测方法的实现流程示意图;
47.图2是本发明实施例提供的一种知识图谱的示意图;
48.图3是本发明实施例提供的另一种异常邮件检测方法的实现流程示意图;
49.图4是本发明实施例提供的一种知识图谱的示意图;
50.图5是本发明实施例提供的一种知识图谱中的子图的示意图;
51.图6是本发明实施例提供的另一种异常邮件检测方法的实现流程示意图;
52.图7是本发明实施例提供的另一种异常邮件检测方法的实现流程示意图;
53.图8是本发明实施例提供的另一种知识图谱的示意图;
54.图9是本发明实施例提供的另一种异常邮件检测方法的实现流程示意图;
55.图10是本发明实施例提供的另一种异常邮件检测方法的实现流程示意图;
56.图11是本发明实施例提供的另一种异常邮件检测方法的实现流程示意图;
57.图12为本发明应用实施例提供的一种超球面分类的示意图;
58.图13是本发明应用实施例提供的一种异常邮件检测流程的示意图;
59.图14是本发明实施例提供的一种异常邮件检测装置的示意图;
60.图15是本发明一实施例提供的电子设备的示意图。
具体实施方式
61.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
62.钓鱼邮件是异常邮件的一种,钓鱼邮件指利用伪装的电子邮件,诱导收件人将账号、口令等信息回复给指定的接收者;或引导收件人连接到特定的网页,这些网页通常会伪装成和真实网站一样,如银行或理财的网页,令收件人信以为真,从而输入信用卡或银行卡的号码和密码,造成收件人的财产损失。
63.相关技术中,钓鱼邮件检测技术都是基于规则、机器学习和深度学习等方法,这些方法不能利用邮件数据之间的关联信息,所以很多钓鱼邮件都会漏检。
64.钓鱼邮件之间是存在关联的,正常邮件与钓鱼邮件也存在关联,根据这些关联关系,可以提高钓鱼邮件的检测准确率。
65.针对上述相关技术的缺点,本发明实施例提供了一种异常邮件检测方法,至少能够提高提高获取异常邮件的检测准确率。为了说明本发明所述的技术方案,下面通过具体实施例来进行说明。
66.图1是本发明实施例提供的一种异常邮件检测方法的实现流程示意图,所述异常邮件检测方法的执行主体为电子设备,电子设备包括台式电脑、笔记本电脑和服务器等。参考图1,异常邮件检测方法包括:
67.s101,获取至少两封电子邮件中的每封电子邮件的至少两个第一数据;所述第一数据表征对应的电子邮件的邮件信息。
68.在一实施例中,所述至少两个第一数据至少包括以下任意两项:
69.电子邮件的发件人地址中的一级域名;
70.电子邮件的标识(id,identity document);
71.电子邮件的源网际互连协议(ip,internet protocol)地址;
72.电子邮件的统一资源定位器(url,uniform resource locator)中的一级域名;
73.电子邮件的发件人身份字段。
74.其中,电子邮件的发件人地址(mailfrom)中的一级域名(fld),可以为783939xx@qq.com和2016xxx@126.com等个人邮箱地址,也可以为企业邮箱地址。
75.每一封电子邮件都有唯一的id,用于区别于其他电子邮件。比如,电子邮件的id可以为一串数字或代码。
76.电子邮件正文中的url,比如为http://example.com/xxxx.html,从中获取一级域名example.com。
77.电子邮件的发件人身份字段可以为helo字段,helo字段用来标识自己的身份。比如,helo mail.alpha.com.cn可以被解读为"嗨,我是mail.alpha.com.cn"。当然这里发送者可能会撒谎,但是没有任何机制能防止发送者mail.alpha.com.cn说"嗨,我是mail.xxx.com"或是"嗨,我是mail.yyy.com"。在大多数情况下,接收者都有一些方法来确认发送者的真实身份。
78.这里,至少两个第一数据包含上述项越多,构成的知识图谱越能体现邮件的关联关系,在检测异常邮件时,检测准确率越高。
79.s102,基于获取到的第一数据构建关于所述至少两封电子邮件的知识图谱;所述知识图谱表征所述至少两封电子邮件之间的关联关系。
80.知识图谱是以图的形式表现客观世界中的实体及其之间关系的知识库,实体可以是真实世界中的物体或抽象的概念,关系则表示了实体间的联系。
81.知识图谱由节点和边组成,比如参考图2,图2是本发明实施例提供的一种知识图谱的示意图,图2左侧只包含一种类型的节点和边,而图2右侧包含多种类型的节点和边。
82.在本发明实施例中,以第一数据为节点,第一数据之间的关联关系为边,构建知识图谱。这里的关联关系指两个第一数据是否属于同一封邮件。
83.参考图3,在一实施例中,所述基于获取到的第一数据构建关于所述至少两封电子邮件的知识图谱时,所述方法包括:
84.s301,基于所述至少两封电子邮件中的每封电子邮件的至少两个第一数据生成所述知识图谱的节点;其中,相同的第一数据在所述知识图谱中对应同一节点。
85.相同的第一数据只生成一个节点,比如,假设电子邮件1和电子邮件2的源ip地址都相同,则电子邮件1和电子邮件2的源ip地址在知识图谱中都对应同一个节点。
86.这里,由于每一封电子邮件的id都不相同,所以知识图谱中id对应的节点数量与id数量一致。
87.在实际应用中,在知识图谱中可以使用不同颜色和/或大小的节点来表示不同类型的第一数据,比如源ip地址用绿色节点表示;电子邮件id用灰色节点表示;红色节点表示url中的一级域名;蓝色节点表示helo;黄色节点表示电子邮件的发件人地址中的一级域名。
88.s302,将属于同一封电子邮件的第一数据对应的节点相连,以构成所述知识图谱。
89.属于同一封邮件的第一数据是具有关联关系的,将同一封邮件的第一数据对应的节点用边相连。在知识图谱中,每两个相连的节点可以说明对应的第一数据是在同一封电子邮件中的。
90.由于知识图谱中有些节点之间不存在关联关系,这样可能导致知识图谱中出现多个独立的子图。参考图4,图4是本发明实施例提供的一种知识图谱的示意图,在图4中,一共出现了5个子图,每一个子图表示对应的电子邮件具有关联关系。
91.图5是图4所示知识图谱中的一个子图,图5所示子图中一共有5种类型的节点,分别对应源ip、邮件id、url中的一级域名、helo和mailfrom中的一级域名。图5所示子图是一个正常的子图,该子图对应的邮件都是正常邮件。其中,源ip、url中的一级域名、helo和mailfrom中的一级域名对应的节点均连接邮件id对应的节点,每一个邮件id对应的节点均会连接4个其他节点,其他节点指源ip、url中的一级域名、helo和mailfrom中的一级域名对应的节点。由于图5所示子图是正常子图,所以5个邮件id对应的节点均连接同一个helo节点、同一个url中的一级域名节点和同一个mailfrom中的一级域名节点。在异常子图中,可能会出现多个url中的一级域名节点或多个helo节点。
92.s103,基于所述知识图谱确定所述至少两封电子邮件中的异常邮件。
93.对构建出的知识图谱进行图分析,利用电子邮件之间的关联关系检测出至少两封电子邮件中的异常邮件。
94.参考图6,在一实施例中,所述基于所述知识图谱确定所述至少两封电子邮件中的异常邮件,包括:
95.s601,识别所述知识图谱的至少两个子图中的异常子图。
96.知识图谱包括至少两个子图,每个子图对应的所有电子邮件均具有关联关系,比如是同一个发件人发送的邮件,或是在同一个源ip地址发送的。
97.这里,异常子图指包含有异常邮件的子图,因为正常邮件也有可能与异常邮件具有关联关系,所以异常子图中并不一定全部都是异常邮件,也有可能包含部分正常邮件。
98.参考图7,在一实施例中,所述识别所述知识图谱的至少两个子图中的异常子图,包括:
99.s701,确定所述知识图谱的至少两个子图中每个子图的第一节点的数量;所述第一节点表征电子邮件的发件人身份字段。
100.这里,电子邮件的发件人身份字段以helo为例进行说明,确定知识图谱的每一个子图中的第一节点的数量。
101.s702,在所述第一节点的数量大于1的情况下,识别对应的子图为异常子图。
102.在正常子图中,一个子图只会出现一个helo对应的节点,当出现1个以上的helo对应的节点情况时,说明这个子图中包含有异常邮件,确定该子图为异常子图,
103.比如,参考图8,图8是本发明实施例提供的另一种知识图谱的示意图,图8右侧子图中helo对应的节点的数量已经大于1了,说明这个子图是异常子图,包含异常邮件。
104.s602,基于识别出的异常子图确定所述至少两封电子邮件中的异常邮件。
105.在上述识别出的异常子图的基础上检测异常邮件,参考图9,在一实施例中,所述基于识别出的异常子图确定所述至少两封电子邮件中的异常邮件,包括:
106.s901,在识别出的异常子图的所有第二节点中确定出第三节点;所述第二节点表征电子邮件的id;所述第三节点表征相连的第一节点未在设定白名单中的第二节点。
107.本发明实施例是基于图7所示实施例检测出的异常子图检测异常邮件,在异常子图中,如果包含有多个helo对应的节点,多个helo对应的节点中有一个是正常helo对应的节点,其余都是异常helo对应的节点。因此,需要将这个正常的helo对应的节点从中排除,避免误检。
108.在本发明实施例中,创建一个设定白名单,设定白名单中存储有正常的helo字段,如果异常子图的第一节点对应的helo字段未在设定白名单中,说明对应的第一节点是异常节点,将与异常节点相连的第二节点确定为第三节点,即第三节点是与未在设定白名单中的helo对应的节点相连的第二节点。这里,第二节点指电子邮件的id。
109.s902,将确定出的第三节点对应的电子邮件确定为异常邮件。
110.根据邮件id可以找到对应的电子邮件,第三节点对应的邮件id均是异常邮件的id。
111.参考图10,在另一实施例中,所述识别所述知识图谱的至少两个子图中的异常子图,包括:
112.s1001,在所述知识图谱中与第四节点相连的第二节点的数量大于1的情况下,确定与所述第二节点相连的第五节点的数量是否大于1;所述第二节点表征电子邮件的id;所述第四节点表征电子邮件的url中的一级域名;所述第五节点表征电子邮件的源ip地址或电子邮件的发件人地址中的一级域名。
113.如果一个子图中与一个第四节点相连的第二节点的数量大于1,说明这些第二节点对应的电子邮件都是使用的同一个url发送的。在此基础上,确定与第二节点相连的第五节点的数量,这里的第二节点指与第四节点相连的所有第二节点,确定与这些第二节点相连的第五节点的数量,第五节点可以对应电子邮件的源ip地址或电子邮件的发件人地址中的一级域名。
114.s1002,在所述第五节点的数量大于1的情况下,识别对应的子图为异常子图。
115.在一个子图中,与第四节点相连的第二节点的数量大于1,且与上述第二节点相连的第五节点的数量大于1的情况下,确定该子图为异常子图。
116.在实际应用中,如果多个电子邮件都公用同一个url,而且多个邮件的源ip地址或电子邮件的发件人地址中的一级域名不同,说明对应的子图是异常子图,这些邮件都是异常邮件。
117.在上述图10所示实施例的基础上,所述基于所述异常子图确定所述至少两封电子邮件中的异常邮件,包括:
118.将所述异常子图中与所述第四节点相连的第二节点对应的电子邮件确定为异常邮件;所述第二节点表征电子邮件的id;所述第四节点表征电子邮件的url中的一级域名。
119.由于多个电子邮件都公用同一个url,而且多个邮件的源ip地址或电子邮件的发件人地址中的一级域名不同,说明这些邮件都是异常邮件。
120.在实际应用中,一个正常的发件人在发送邮件时并不会随意切换源ip地址、helo字段和mailfrom,因此在生成的子图中,如果出现多个helo对应的节点,或多个电子邮件都公用同一个url且多个邮件的源ip地址或mailfrom不同的现象,可以确定对应的子图是异常的。
121.除了上述实施例提供的方法,还可以通过黑名单的方式检测异常子图,比如在黑名单中写入url,只要子图中出现的url在黑名单中,则认为该子图是异常子图。
122.参考图11,在另一实施例中,所述识别所述知识图谱的至少两个子图中的异常子图,包括:
123.s1101,基于所述至少两个子图中每个子图的特征参数确定对应的子图的向量。
124.这里,子图的特征参数可以包括:图的深度、图中每类节点的数量及占比、图中外网ip的数量、图中内网ip的数量、白名单中域名数量及占比等特征参数。
125.基于提取出的子图特征参数生成向量,生成的向量可以是多维的。
126.s1102,将所述向量输入设定的分类模型,得到所述设定的分类模型输出的预测值;所述设定的分类模型用于基于对应的超球面输出所述预测值;所述预测值表征所述向量对应的子图是否为异常子图。
127.这里,设定的分类模型为一类支持向量机(one

class svm,one

class support vector machine)。在本发明实施例中,预先使用大量训练数据训练出设定的分类模型对应的超球面,超球面是由若干个支持向量描述,超球面可以两类样本分开。训练数据应大部分使用正常子图向量,少部分使用异常子图向量。训练的目的主要是获取超球面的半径和球心位置,通过子图向量到超球面球心的距离和超球面半径,判断子图向量是否在超球面内,从而判断子图是否为异常子图。
128.在一实施例中,所述设定的分类模型确定所述向量是否在所述超球面内,
129.在所述向量在所述超球面内的情况下,所述设定的分类模型输出第一预测值;所述第一预测值表征所述向量对应的子图为正常子图;
130.在所述向量不在所述超球面内的情况下,所述设定的分类模型输出第二预测值;所述第二预测值表征所述向量对应的子图为异常子图。
131.例如,如果向量在超球面内,设定的分类模型输出1;如果向量不在超球面内,设定的分类模型输出0。这样可以简单的根据设定的分类模型输出的值判断子图是否为异常子图。
132.参考图12,图12为本发明应用实施例提供的一种超球面分类的示意图,图中圆圈
代表超球面,在超球面内的三角形表示正常子图向量,在超球面外的圆形表示异常子图向量。a表示超球面球心a,r表示超球面半径,表示根据子图向量到超球面球心a的距离与超球面半径r的大小,即可判断子图是否异常。比如,子图向量到超球面球心a的距离大于超球面半径r,表示子图向量在超球面外,即认为对应的子图是异常的。
133.在一实施例中,所述基于识别出的异常子图确定所述至少两封电子邮件中的异常邮件,包括:
134.将所述异常子图对应的所有电子邮件确定为异常邮件。
135.在本发明实施例中,通过设定的分类模型检测出的异常子图,将异常子图对应的全部电子邮件确定为异常邮件。
136.由于超球面支持向量机在解决非均匀分布样本的分类问题方面具有独特的优势,而用户的电子邮件大多数是正常邮件,极少数是异常邮件,对应生成的知识图谱中,大多数是正常子图,极少数是异常子图,可见子图是符合非均匀分布的,因此使用超球面来检测异常子图可以提高异常邮件检测的准确率。
137.在实际应用中,除了可以使用one

class svm算法检测异常子图,还可以使用isolationforest算法、ellipticenvelope算法和robust covariance算法来实现异常子图检测。在提取各子图特征时,可计算各子图特征分布,计算特征的z

score,将特征按照重要性排序,进行可视化展示。
138.本发明实施例通过获取至少两封电子邮件中的每封电子邮件的至少两个第一数据,第一数据表征对应的电子邮件的邮件信息。基于获取到的第一数据构建关于至少两封电子邮件的知识图谱,知识图谱表征至少两封电子邮件之间的关联关系,识别知识图谱的至少两个子图中的异常子图,基于识别出的异常子图确定至少两封电子邮件中的异常邮件。本发明实施例通过构建电子邮件的知识图谱,知识图谱能够体现电子邮件之间的关联关系,通过知识图谱中的异常子图确定电子邮件中的异常邮件,可以提高异常邮件检测的准确率。
139.参考图13,图13是本发明应用实施例提供的一种异常邮件检测流程的示意图,异常邮件检测流程包括:
140.首先,加载邮件历史数据,例如可以为用户在1个月内收到的电子邮件。
141.对这些邮件数据提取关键字段,这里对每一封电子邮件提取5类字段:helo、mailfrom、源ip、邮件id和url。其中,url通过正则表达式从正文中获取。
142.基于mailfrom的fld、helo、url的fld、源ip及邮件id构建知识图谱。
143.对知识图谱进行异常子图检测,如果子图没有检测出异常,则说明该子图对应的邮件为正常邮件。
144.如果检测到异常子图,则输出异常子图,确定异常子图中的异常邮件,并向用户输出告警。这里,告警信息可以包括异常邮件的具体内容。
145.应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
146.应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整
体、步骤、操作、元素、组件和/或其集合的存在或添加。
147.需要说明的是,本发明实施例所记载的技术方案之间,在不冲突的情况下,可以任意组合。
148.另外,在本发明实施例中,“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
149.参考图14,图14是本发明实施例提供的一种异常邮件检测装置的示意图,如图14所示,该装置包括:获取模块、构建模块、识别模块和确定模块。
150.获取模块,用于获取至少两封电子邮件中的每封电子邮件的至少两个第一数据;所述第一数据表征对应的电子邮件的邮件信息;
151.构建模块,用于基于获取到的第一数据构建关于所述至少两封电子邮件的知识图谱;所述知识图谱表征所述至少两封电子邮件之间的关联关系;
152.识别模块,用于识别所述知识图谱的至少两个子图中的异常子图;
153.确定模块,用于基于识别出的异常子图确定所述至少两封电子邮件中的异常邮件。
154.在一实施例中,识别模块在识别所述知识图谱的至少两个子图中的异常子图时,用于:
155.基于所述至少两个子图中每个子图的特征参数确定对应的子图的向量;
156.将所述向量输入设定的分类模型,得到所述设定的分类模型输出的预测值;所述设定的分类模型用于基于对应的超球面输出所述预测值;所述预测值表征所述向量对应的子图是否为异常子图。
157.在一实施例中,所述设定的分类模型确定所述向量是否在所述超球面内,
158.在所述向量在所述超球面内的情况下,所述设定的分类模型输出第一预测值;所述第一预测值表征所述向量对应的子图为正常子图;
159.在所述向量不在所述超球面内的情况下,所述设定的分类模型输出第二预测值;所述第二预测值表征所述向量对应的子图为异常子图。
160.在一实施例中,确定模块在基于识别出的异常子图确定所述至少两封电子邮件中的异常邮件时,用于:
161.将所述异常子图对应的所有电子邮件确定为异常邮件。
162.在一实施例中,构建模块在基于获取到的第一数据构建关于所述至少两封电子邮件的知识图谱时,用于:
163.基于所述至少两封电子邮件中的每封电子邮件的至少两个第一数据生成所述知识图谱的节点;其中,相同的第一数据在所述知识图谱中对应同一节点;
164.将属于同一封电子邮件的第一数据对应的节点相连,以构成所述知识图谱。
165.在一实施例中,所述至少两个第一数据至少包括以下任意两项:
166.电子邮件的发件人地址中的一级域名;
167.电子邮件的标识id;
168.电子邮件的源网际互连协议ip地址;
169.电子邮件的统一资源定位系统url中的一级域名;
170.电子邮件的发件人身份字段。
171.在一实施例中,所述确定模块在基于所述知识图谱确定所述至少两封电子邮件中的异常邮件时,用于:
172.识别所述知识图谱的至少两个子图中的异常子图;
173.基于识别出的异常子图确定所述至少两封电子邮件中的异常邮件。
174.在一实施例中,确定模块在识别所述知识图谱的至少两个子图中的异常子图时,用于:
175.确定所述知识图谱的至少两个子图中每个子图的第一节点的数量;所述第一节点表征电子邮件的发件人身份字段;
176.在所述第一节点的数量大于1的情况下,识别对应的子图为异常子图。
177.在一实施例中,确定模块在基于识别出的异常子图确定所述至少两封电子邮件中的异常邮件时,用于:
178.在识别出的异常子图的所有第二节点中确定出第三节点;所述第二节点表征电子邮件的id;所述第三节点表征相连的第一节点未在设定白名单中的第二节点;
179.将确定出的第三节点对应的电子邮件确定为异常邮件。
180.在一实施例中,确定模块在识别所述知识图谱的至少两个子图中的异常子图,用于:
181.在所述知识图谱中与第四节点相连的第二节点的数量大于1的情况下,确定与所述第二节点相连的第五节点的数量是否大于1;所述第二节点表征电子邮件的id;所述第四节点表征电子邮件的url中的一级域名;所述第五节点表征电子邮件的源ip地址或电子邮件的发件人地址中的一级域名;
182.在所述第五节点的数量大于1的情况下,识别对应的子图为异常子图。
183.在一实施例中,确定模块在基于所述异常子图确定所述至少两封电子邮件中的异常邮件时,用于:
184.将所述异常子图中与所述第四节点相连的第二节点对应的电子邮件确定为异常邮件。
185.实际应用时,所述获取模块、构建模块、识别模块和确定模块可通过电子设备中的处理器,比如中央处理器(cpu,central processing unit)、数字信号处理器(dsp,digital signal processor)、微控制单元(mcu,microcontroller unit)或可编程门阵列(fpga,field-programmable gate array)等实现。
186.需要说明的是:上述实施例提供的异常邮件检测装置在进行容器组部署时,仅以上述各模块的划分进行举例说明,实际应用中,可以根据需要而将上述处理分配由不同的模块完成,即将装置的内部结构划分成不同的模块,以完成以上描述的全部或者部分处理。另外,上述实施例提供的异常邮件检测装置与异常邮件检测方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
187.基于上述程序模块的硬件实现,且为了实现本技术实施例的方法,本技术实施例还提供了一种电子设备。图15为本技术实施例电子设备的硬件组成结构示意图,如图15所示,电子设备包括:
188.通信接口,能够与其它设备比如网络设备等进行信息交互;
189.处理器,与所述通信接口连接,以实现与其它设备进行信息交互,用于运行计算机
程序时,执行上述电子设备侧一个或多个技术方案提供的方法。而所述计算机程序存储在存储器上。
190.当然,实际应用时,电子设备中的各个组件通过总线系统耦合在一起。可理解,总线系统用于实现这些组件之间的连接通信。总线系统除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图15中将各种总线都标为总线系统。
191.本技术实施例中的存储器用于存储各种类型的数据以支持电子设备的操作。这些数据的示例包括:用于在电子设备上操作的任何计算机程序。
192.可以理解,存储器可以是易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(rom,read only memory)、可编程只读存储器(prom,programmable read

only memory)、可擦除可编程只读存储器(eprom,erasable programmable read

only memory)、电可擦除可编程只读存储器(eeprom,electrically erasable programmable read

only memory)、磁性随机存取存储器(fram,ferromagnetic random access memory)、快闪存储器(flash memory)、磁表面存储器、光盘、或只读光盘(cd

rom,compact disc read

only memory);磁表面存储器可以是磁盘存储器或磁带存储器。易失性存储器可以是随机存取存储器(ram,random access memory),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的ram可用,例如静态随机存取存储器(sram,static random access memory)、同步静态随机存取存储器(ssram,synchronous static random access memory)、动态随机存取存储器(dram,dynamic random access memory)、同步动态随机存取存储器(sdram,synchronous dynamic random access memory)、双倍数据速率同步动态随机存取存储器(ddrsdram,double data rate synchronous dynamic random access memory)、增强型同步动态随机存取存储器(esdram,enhanced synchronous dynamic random access memory)、同步连接动态随机存取存储器(sldram,synclink dynamic random access memory)、直接内存总线随机存取存储器(drram,direct rambus random access memory)。本技术实施例描述的存储器旨在包括但不限于这些和任意其它适合类型的存储器。
193.上述本技术实施例揭示的方法可以应用于处理器中,或者由处理器实现。处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器、dsp,或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。处理器可以实现或者执行本技术实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本技术实施例所公开的方法的步骤,可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于存储介质中,该存储介质位于存储器,处理器读取存储器中的程序,结合其硬件完成前述方法的步骤。
194.可选地,所述处理器执行所述程序时实现本技术实施例的各个方法中由电子设备实现的相应流程,为了简洁,在此不再赘述。
195.在示例性实施例中,本技术实施例还提供了一种存储介质,即计算机存储介质,具体为计算机可读存储介质,例如包括存储计算机程序的第一存储器,上述计算机程序可由
电子设备的处理器执行,以完成前述方法所述步骤。计算机可读存储介质可以是fram、rom、prom、eprom、eeprom、flash memory、磁表面存储器、光盘、或cd

rom等存储器。
196.在本技术所提供的几个实施例中,应该理解到,所揭露的装置、电子设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
197.上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元,即可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
198.另外,在本技术各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
199.本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。
200.或者,本技术上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本技术各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。
201.需要说明的是,本技术实施例所记载的技术方案之间,在不冲突的情况下,可以任意组合。
202.另外,在本技术实例中,“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
203.以上所述,仅为本技术的具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应以所述权利要求的保护范围为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1