CN113812130A - 网络钓鱼活动的检测 - Google Patents
网络钓鱼活动的检测 Download PDFInfo
- Publication number
- CN113812130A CN113812130A CN202080034464.8A CN202080034464A CN113812130A CN 113812130 A CN113812130 A CN 113812130A CN 202080034464 A CN202080034464 A CN 202080034464A CN 113812130 A CN113812130 A CN 113812130A
- Authority
- CN
- China
- Prior art keywords
- phishing
- electronic communication
- communication
- content
- machine learning
- 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
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/1441—Countermeasures against malicious traffic
- H04L63/1483—Countermeasures against malicious traffic service impersonation, e.g. phishing, pharming or web spoofing
-
- 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/1425—Traffic logging, e.g. anomaly detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- 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
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
- G06N20/10—Machine learning using kernel methods, e.g. support vector machines [SVM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
- G06N20/20—Ensemble learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/01—Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N7/00—Computing arrangements based on specific mathematical models
- G06N7/01—Probabilistic graphical models, e.g. probabilistic networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Evolutionary Computation (AREA)
- Data Mining & Analysis (AREA)
- Artificial Intelligence (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Hardware Design (AREA)
- Computational Linguistics (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Biophysics (AREA)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Information Transfer Between Computers (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
提供了用于检测网络钓鱼泄漏通信的机制。所述机制从数据网络接收输入电子通信并处理输入电子通信以提取表示输入电子通信的内容结构的结构符记。将结构符记输入到机器学习模型,机器学习模型被训练以识别结构符记中的网络钓鱼泄漏通信语法以及网络钓鱼泄漏通信语法之间的关系。机器学习模型处理结构符记以生成由分类逻辑进行处理的指示计算出的值的向量输出。分类逻辑处理来自机器学习模型的向量输出,以将输入电子通信分类为网络钓鱼泄漏通信或非网络钓鱼泄漏通信,并输出相应的分类输出。
Description
背景技术
本申请总体涉及一种改进的数据处理装置和方法,更具体地涉及用于基于网络钓鱼泄漏通信的深度学习网络检测来检测网络钓鱼电子通信活动的机制。
网络钓鱼攻击仍然是个人和企业的主要威胁。网络钓鱼攻击涉及发送给接收者的经常巧妙设计的电子通信,其中通信的内容欺诈性地试图通过将网络钓鱼电子通信的源伪装为可信赖的实体来从接收者获得敏感信息,例如用户名、密码、***信息等。网络钓鱼攻击通常通过电子邮件欺骗或即时消息收发进行,经常引导用户在假冒网站上输入个人信息,假冒网站的外观和感觉与合法网站相同或至少非常相似。
存在各种检测潜在网络钓鱼攻击的解决方案,这些解决方案一般可分类为黑名单解决方案、网站比较解决方案和垃圾邮件通信过滤解决方案。黑名单解决方案将已知网络钓鱼攻击的统一资源定位符(URL)和域名包括在黑名单数据结构中,过滤程序用黑名单数据结构来过滤来自那些域名或已知URL的通信。黑名单解决方案依赖于由第三方发现并报告的域名/URL的列表,以便将这些域名/URL添加到黑名单数据结构中并且推送给客户端以在其过滤程序中实现。
网站比较解决方案依赖于可疑网站的内容与合法网站或其他已知网络钓鱼网站的比较来确定可能表明可疑网站是否是网络钓鱼网站的相似性或差异。将可疑网站与合法网站相比较,试图确定可疑网站是否与合法网站相似,使得可疑网站也应被视为合法网站。该解决方案需要大量合法网站来执行比较并提供合理准确的确定。将可疑网站与网络钓鱼网站的比较,是基于以下观察,即很多网络钓鱼网站是基于其他网络钓鱼网站创建的,因此,与其他网络钓鱼网站的相似度表明可疑网站是网络钓鱼网站。该解决方案可以提供良好的结果,但是是计算密集的,因为它需要维护当前网络钓鱼攻击的数据库,并将每个可疑网站与所有这些攻击进行比较。
垃圾邮件通信过滤解决方案查看网络钓鱼通信内容中的文本,并将内容与规则进行比较,以确定该通信是不是网络钓鱼通信(垃圾邮件)。这样的垃圾邮件通信过滤解决方案很难实施,因为网络钓鱼实体或垃圾邮件制造者以将针对每个网络钓鱼或垃圾邮件活动和针对每个目标实体而不同的方式创建他们的通信,以希望接收者将选择恶意链接。因此,必须不断地生成新规则来应对网络钓鱼/垃圾邮件通信不断变化的情况。
发明内容
提供本发明内容部分是为了以简化的形式介绍将在具体实施方式部分进一步描述的概念的选择。本发明内容部分并不旨在标识所要求保护的主题的关键因素或基本特征,也不旨在用于限制所要求保护的主题的范围。
在一个说明性实施例中,提供了一种在包括处理器和存储器的数据处理***中的方法,所述存储器包括指令,所述指令由所述处理器执行以配置所述处理器来实现用以检测网络钓鱼泄漏通信的网络钓鱼泄漏通信识别(PECI)***。所述方法包括:由所述PECI***从数据网络接收输入电子通信;以及由所述PECI***的预处理器处理所述输入电子通信以提取结构符记。结构符记表示输入电子通信的内容结构。所述方法还包括:所述PECI***通过机器学习训练操作,将所述结构符记输入到所述PECI***的机器学习模型中,以识别输入到所述机器学习模型的结构符记中的网络钓鱼泄漏通信语法、以及网络钓鱼泄漏通信语法之间的关系。此外,该方法包括由机器学习模型来处理结构符记以生成指示计算出的值的至少一个第一向量输出以供PECI***的分类逻辑处理。此外,所述方法包括由所述分类逻辑处理来自所述机器学习模型的所述至少一个第一向量输出,以将所述输入电子通信分类为网络钓鱼泄漏通信或非网络钓鱼泄漏通信。此外,该方法包括由分类逻辑输出指示输入电子通信的分类的分类输出。
在一些说明性实施例中,该方法还包括由所述PECI***响应于从与关于一个或多个目标实体的个人信息通过其被收集的网络钓鱼网站相关联的第一计算设备以及与从所述一个或多个目标实体收集个人信息的个人信息收集点相关联的第二计算设备传输所述输入电子通信的尝试而拦截所述输入电子通信。通过识别网络钓鱼泄漏通信,而不是评估发送到目标实体或用于执行网络钓鱼的网站的初始网络钓鱼通信,本发明的这样的说明性实施例的机制无需由攻击者发送的网络钓鱼通信或由攻击者使用的网站的先验知识就能识别来自用于泄露或收获个人信息并将其提供到收集点计算***或收集点账户(例如攻击者的替代电子邮件地址)的任何源的任何通信。
在一些说明性实施例中,该方法还包括由PECI***处理输入电子通信以提取一个或多个内容特征度量。在一些说明性实施例中,所述内容特征度量是所述输入电子通信的内容的有助于在所述分类输出中区分误报或漏报的统计量度。在一些说明性实施例中,所述一个或多个内容特征度量包括内容熵度量或文本比例度量中的至少一个,所述内容熵度量是所述输入电子通信的内容的不确定性的量度,其中所述熵随着所述输入电子通信的内容中使用的符号的种类增加而增加,所述文本比例度量是所述输入电子通信的内容中的至少一个第一类型的字符与所述输入电子通信的内容中的至少一个第二类型的字符的比例的量度。内容特征度量的使用通过减少误报和漏报来改进由PECI***生成的输入电子通信的分类的准确性。
在一些说明性实施例中,所述方法进一步包括:由所述机器学习模型将所述至少一个第一向量输出输入到所述PECI***的级联逻辑;由所述PECI***将所述一个或多个内容特征度量输入到所述级联逻辑;以及由所述级联逻辑将所述至少一个第一向量输出与所述一个或多个内容特征度量级联以生成被输入到所述分类逻辑的第二输出向量。在这样的实施例中,所述分类逻辑处理来自所述机器学习模型的所述至少一个第一向量输出,以至少通过处理包括与所述一个或多个内容特征度量级联的所述至少一个第一向量输出的所述第二输出向量来将所述输入电子通信分类为网络钓鱼泄漏通信或非网络钓鱼泄漏通信。该级联的向量向分类逻辑提供输入,该输入不仅指示机器学习模型的处理结果,还指示改进由分类逻辑执行的分类的内容特征。
在一些说明性实施例中,所述结构符记是字符串,其中,所述结构符记中的每个字符是类别指定符或数值,所述类别指定符来自类别指定符的集合,指示存在于所述输入电子通信的文本的对应部分中的内容的类型的分类,所述数值指示所述输入电子通信的内容中与所述结构符记的字符串中的先前类别指定符对应的字符的数量。在一些说明性实施例中,所述类别指定符的集合包括:第一类别指定符,指示在所述输入电子通信的内容中的字母字符;第二类别指定符,指示在所述输入电子通信的内容中的数字字符;第三类别指定符,指示在所述输入电子通信的内容中的格式化字符串或编码;以及第四类别指定符,指示不属于所述第一类别、所述第二类别或所述第三类别中的任何类别的字符。结构符记提供了输入电子通信的结构的简明和紧凑表示,其可以更容易被机器学习模型处理,以便识别输入电子通信中的网络钓鱼泄漏通信语法的模式。
在一些说明性实施例中,所述机器学习模型是基于双向长短期记忆(LSTM)的递归神经网络(RNN),其中所述至少一个第一向量输出包括与所述基于双向LSTM的RNN中的LSTM单元的正向传播集合对应的一个第一向量输出,以及与所述LSTM单元的反向传播集合对应的第二个第一向量输出。基于双向LSTM的RNN确保网络钓鱼泄漏通信语法的正确识别,因为这样的语法将在基于LSTM的RNN的两个方向上被正确分类,而输入电子通信的不对应于网络钓鱼泄漏通信语法的部分将不在两个方向上被分类为网络钓鱼泄漏通信语法。这在用户意识到网络钓鱼攻击并且有目的地输入误导信息以阻碍攻击者的情形中尤其有用。
在一些说明性实施例中,输出指示所述输入电子通信的分类的所述分类输出包括将将所述分类输出输出到响应动作计算***,由所述响应动作计算***响应于所述分类输出指示所述输入电子通信的分类是网络钓鱼泄漏通信而自动执行响应动作。在一些说明性实施例中,所述响应动作包括下列各项中的至少一项:向与授权用户相关联的计算设备发送通知,其中,所述通知指示将所述输入电子通信识别为网络钓鱼泄漏通信;自动阻止所述输入电子通信到达所述输入电子通信的目的地;将所述输入电子通信重定向至与所述输入电子通信的目的地不同的目的地;或者将所述输入电子通信的源自动报告给权威机构,以中止所述源发送电子通信的能力。这样,使得网络钓鱼攻击成功获取目标实体的个人信息的能力最小化。
在一些说明性实施例中,数据处理***包括电子邮件服务提供商服务器计算***,并且输入电子通信是通过电子邮件服务提供商服务器计算***路由的输入电子邮件通信。通过这种方式,电子邮件服务提供商可以阻碍钓鱼网站对收集点计算***或收集点电子邮件地址通信后端的钓鱼攻击,从而有效阻止攻击者从钓鱼攻击中获益的能力。
在其他说明性实施例中,提供了一种计算机程序产品,该计算机程序产品包括具有计算机可读程序的计算机可用或可读介质。当在计算设备上执行时,计算机可读程序使计算设备执行以上关于方法说明性实施例概述的操作中的不同操作和组合。
在又一说明性实施例中,提供一种***/设备。所述***/设备可以包括一个或多个处理器和耦合到所述一个或多个处理器的存储器。存储器可包括指令,这些指令在由一个或多个处理器执行时使一个或多个处理器执行以上关于方法说明性实施例概述的操作中的不同操作和组合。
本发明的这些和其他特征和优点将在本发明的示例性实施例的以下详细描述中被描述,或者鉴于本发明的示例性实施例的以下详细描述将对本领域普通技术人员变得清楚。
附图说明
当结合附图阅读时,通过参考说明性实施例的以下详细描述,将最好地理解本发明以及优选使用模式以及其进一步的目的和优点,其中:
图1是描绘网络钓鱼攻击的解剖结构的框图的示例图;
图2是根据一个说明性实施例的网络钓鱼泄漏通信识别(PECI)***的示例框图;
图3是常规(正常)通信的示例,基于已识别的网络钓鱼泄漏通信语法,可以认为该通信与网络钓鱼泄漏通信基本相似;
图4是可以实现说明性实施例的各方面的分布式数据处理***的示例图;
图5是其中可以实现说明性实施例的各方面的计算设备的示例框图;和
图6是概述根据一个说明性实施例的当执行网络钓鱼泄漏通信的识别时网络钓鱼泄漏通信识别(PECI)***的示例操作的流程图。
具体实施方式
如上所述,用于识别网络钓鱼攻击的现有解决方案专注于发送到目标实体本身的网络钓鱼通信,或网络钓鱼网站与其他已知网络钓鱼网站或已知安全网站的比较。本发明不是评估原始网络钓鱼通信本身或者将所述网络钓鱼网站与其他已知网站进行比较,而是提供对网络钓鱼泄漏通信进行操作的改进的计算机工具,所述网络钓鱼泄漏通信是网络钓鱼网站用来将所收集的个人信息(PI)传输到收集计算***的后端通信,所述收集计算***收集由成为网络钓鱼攻击受害者的各个目标实体输入的PI。这些后端通信在本文中被称为网络钓鱼泄漏或收获通信。
这些泄漏/收获通信可以是这样的电子邮件通信,其中PI被***并被发送到另一电子通信账户,例如另一电子邮件地址,该另一电子通信账户是由另一计算设备托管的,或者所述电子邮件通信被引导到该另一电子通信账户以收集该PI。为了网络钓鱼实体能从泄漏/收获通信(下文称为“泄漏”通信)中提取PI,泄漏通信需要是在收集计算设备处执行的脚本所理解的格式,这是因为,由于大量泄漏通信数量巨大(例如,对于典型的网络钓鱼活动来说,数量大约为数百或数千),网络钓鱼实体不会手动地复制和粘贴来自这些泄漏通信的PI信息。因此,泄漏通信将具有相关联的语法,其可被说明性实施例的机制利用以识别网络钓鱼泄漏通信。
说明性实施例的改进的计算工具将机器学习模型、人工智能和数据挖掘计算工具应用于电子通信(例如,电子邮件通信),以确定电子通信是否是网络钓鱼泄漏通信。在一些说明性实施例中,递归神经网络(RNN),诸如在一些实现中的双向长短期记忆(LSTM)RNN,适于检测电子通信中网络钓鱼泄漏通信语法的存在并识别代表网络钓鱼泄漏通信语法的电子通信。虽然在本文中说明性实施例的描述中将使用双向LSTM RNN,但本发明不限于此类神经网络,根据说明性实施例,可以训练和使用任何神经网络或机器学习模型,诸如决策树模型、随机森林模型、SVM等。响应于检测到网络钓鱼泄漏通信,然后可以自动执行/发送适当的保护动作和/或通知,以使网络钓鱼实体能够从目标实体收集PI的能力最小化。在一些情况下,可以冻结或阻止网络钓鱼实体账户,可以阻止URL/网站访问,可以向受危害的计算***、通信服务提供商等发送通知,以防止网络钓鱼实体访问提交给网络钓鱼网站的PI,并阻止继续执行网络钓鱼活动。
通过将对网络钓鱼网站和PI的收集点之间的后端通信的网络钓鱼活动的检测作为目标,说明性实施例的机制提供了一种检测网络上网络钓鱼攻击的存在的手段,而不必首先知道发送到预期受害者的网络钓鱼URL或初始网络钓鱼通信。一旦该活动开始,就通过其生成的网络活动来检测该攻击。这不同于需要这种信息才能操作的已知机制。本发明还提供了一种让通信服务提供商(例如,电子邮件服务提供商)检测其服务的用户何时正在使用其服务进行网络钓鱼泄漏的机制,从而使得通信服务提供商可以采取适当的行动来拒绝用户出于这样的目的而使用他们的服务。
说明性实施例的机制可以根据期望的实现在各种不同的计算***中实施。例如,可以在潜在目标实体计算***(例如,公司、个人或可能是网络钓鱼攻击目标的其他实体的计算***)中实施网络钓鱼泄漏通信识别(PECI)引擎。在其他说明性实施例中,PECI引擎可以在入侵检测***/入侵预防***(IDS/IPS)环境中实施,例如在具体被配置成检测和防止对其他计算***的入侵的计算***中实施(这种实施提供对性能的低影响和最大可见性)。在一些说明性实施例中,说明性实施例的机制可以在通信***服务器计算***中实施,使得说明性实施例的机制可以应用于流过通信***服务器计算***的所有通信,例如托管电子邮件账户的一个或多个电子邮件服务器计算***中的所有通信。说明性实施例的机制可以在大型电子邮件通信服务提供商的服务器计算***中实施,以监视和识别网络钓鱼通信。
在一个说明性实施例中,PECI引擎包括从输入电子通信中提取结构符记和内容特征的预处理器。结构符记是内容如何被组织在输入电子通信中的符号表示。该符号表示可包括表示电子通信的内容的字符和数值的序列,其中,字符可指定内容的类别,并且数值可表示电子通信的内容中与该类别相关联的文本字符的数量。内容特征是输入电子通信的有助于区分实际网络钓鱼泄漏通信和非网络钓鱼泄漏通信的特征。例如,在一个说明性实施例中,内容特征包括内容熵和文本比例,这将在下文中更详细地描述。
PECI引擎进一步包括第一机器学习模型(诸如RNN),结构符记从预处理器被输入到第一机器学习模型中。RNN被训练来识别结构符记中存在的特定网络钓鱼泄漏语法。RNN对结构符记进行操作,并输出由RNN计算的值,这些值被二元分类器用作二元分类器的决策逻辑的输入,用于生成表示关于输入通信是否是网络钓鱼泄漏通信的判定的最终输出。在一些说明性实施例中,RNN是基于双向LSTM的RNN,其输出包括256个维度(向量槽)的输出向量(称为LSTM_输出向量)和用于反向LSTM预测的第二256个维度向量输出(由于双向配置),后者称为LSTM_反向_输出向量。应当理解,在不背离本发明的精神和范围的情况下,可使用任何数量的维度,并且本发明不限于基于双向LSTM的RNN实现方式,而是可使用任何合适的RNN实现方式。
RNN的输出与预处理器提取的内容特征一起被提供给PECI引擎的级联逻辑,该PECI引擎将向量级联成单个向量输出。在一个说明性实施例中,该单个向量输出是个514维向量,因为它组合了RNN的256维向量输出(即LSTM_输出)和用于反向LSTM预测的256维向量输出(即LSTM_反向_输出),以及用于内容熵内容特征的额外维度和用于文本比例内容特征的额外维度。
从级联逻辑输出的单个向量被输入到PECI引擎的二元分类引擎(或二元分类器),其生成输入电子通信是否是网络钓鱼泄漏通信的最终预测。二元分类器可以被实现为第二机器学习模型,诸如神经网络、决策树、随机森林模型、贝叶斯模型、SVM等,其被训练为基于来自级联逻辑的单个向量输入来输出概率值。二元分类器的输出是指示输入电子通信是网络钓鱼泄漏通信的概率的概率值。该概率可以被提供给适当的响应动作引擎,用于基于电子通信是网络钓鱼泄漏通信的概率来确定响应动作。例如,可以将该概率与阈值概率值进行比较以确定是否应当执行响应动作。如果来自二元分类引擎的概率输出等于或高于阈值概率值,则可以执行响应动作。如果来自二元分类引擎的概率输出不是等于或高于阈值概率值,则不需要对此电子通信执行响应动作。
因此,说明性实施例的机制提供了用于识别网络钓鱼泄漏通信的机器学习和人工智能方法,使得可以执行响应动作以防止攻击者获取目标实体的个人信息。已经发现说明性实施例的机器学习方法实现了高准确度,例如,0.3%的漏报和0.18%的误报。通过在通信服务提供商计算***中实施说明性实施例的机制,可以最小化网络钓鱼攻击和网络钓鱼活动,从而提供个人和组织的个人信息的安全性的显著改善。
在开始更详细地讨论说明性实施例的各个方面之前,应首先理解,贯穿本说明书,术语“机制”将用来指代本发明的执行不同操作、功能等的元素。如本文中使用的术语“机构”可以是以装置、过程或计算机程序产品的形式的说明性实施例的功能或方面的实现方式。在过程的情况下,该过程由一个或多个设备、装置、计算机、数据处理***等实现。在计算机程序产品的情况下,由体现在计算机程序产品中或上的计算机代码或指令表示的逻辑由一个或多个硬件设备执行,以便实现功能或执行与特定“机制”相关联的操作。由此,本文中描述的机制可以被实现为专用硬件、在通用硬件上执行的软件、存储在介质上使得指令可容易地由专用或通用硬件执行的软件指令、用于执行功能的过程或方法、或以上的任何的组合。
本描述和权利要求可能利用关于说明性实施例的特定特征和元素的术语“一个”、“至少一个”和“一个或多个”。应当理解,这些术语和短语旨在陈述在特定说明性实施例中存在至少一个特定特征或元件,但还可以存在多于一个。即,这些术语/短语并非旨在将描述或权利要求限制为存在的单个特征/元素或者需要存在多个这样的特征/元素。相反,这些术语/短语仅需要至少单个特征/元件,多个这种特征/元件的可能性也在说明书和权利要求书的范围内。
此外,应理解的是,如果在此关于描述本发明的实施例和特征使用术语“引擎”,则其不旨在限制用于实现和/或执行归因于和/或由该引擎执行的动作、步骤、过程等的任何特定实现方式。引擎可以是但不限于执行指定功能的软件、硬件和/或固件或其任意组合,包括但不限于与加载或存储在机器可读存储器中并由处理器执行的适当软件相结合的通用和/或专用处理器的任何使用。进一步,除非另外指定,否则与特定引擎相关联的任何名称是出于方便参考的目的而并非旨在限于特定实现方式。此外,归于引擎的任何功能可以同样地由多个引擎执行,并入到相同或不同类型的另一引擎的功能中和/或与其组合,或分布在各种配置的一个或多个引擎上。
此外,应当理解,以下描述使用说明性实施例的各种元素的多个不同实例来进一步说明说明性实施例的示范性实现方式并且帮助理解说明性实施例的机制。这些实例旨在是非限制性的,并且不是实施说明性实施例的机制的各种可能性的穷举。鉴于本说明书,对本领域普通技术人员显而易见的是,在不背离本发明的精神和范围的情况下,除了或者代替在本文中提供的实例,还可以利用这些各种元素的许多其他替代实现方式。
本发明可以是***、方法和/或计算机程序产品。计算机程序产品可包括其上具有用于使处理器执行本发明的各方面的计算机可读程序指令的计算机可读存储介质(或多个介质)。
计算机可读存储媒体可为可保留和存储供指令执行设备使用的指令的有形设备。计算机可读存储介质可以是,例如但不限于,电子存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备、或者上述的任意合适的组合。计算机可读存储介质的更具体示例的非穷尽列表包括以下各项:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式紧凑盘只读存储器(CD-ROM)、数字通用盘(DVD)、记忆棒、软盘、诸如穿孔卡之类的机械编码设备或具有记录在其上的指令的槽中的凸出结构、以及上述各项的任何合适的组合。如本文所使用的计算机可读存储媒体不应被解释为暂时性信号本身,例如无线电波或其他自由传播的电磁波、通过波导或其他传输媒体传播的电磁波(例如,穿过光纤电缆的光脉冲)或通过电线发射的电信号。
本文中所描述的计算机可读程序指令可以经由网络(例如,互联网、局域网、广域网和/或无线网络)从计算机可读存储介质下载到相应的计算/处理设备,或者下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光传输纤维、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配器卡或网络接口接收来自网络的计算机可读程序指令,并转发计算机可读程序指令以存储在相应计算/处理设备内的计算机可读存储介质中。
用于执行本发明的操作的计算机可读程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或以一种或多种编程语言的任何组合编写的源代码或目标代码,这些编程语言包括面向对象的编程语言(如Java、Smalltalk、C++等)和常规的过程编程语言(如“C”编程语言或类似的编程语言)。计算机可读程序指令可以完全地在用户计算机上执行、部分在用户计算机上执行、作为独立软件包执行、部分在用户计算机上部分在远程计算机上执行或者完全在远程计算机或服务器上执行。在后一种情况下,远程计算机可通过任何类型的网络(包括局域网(LAN)或广域网(WAN))连接至用户计算机,或者可连接至外部计算机(例如,使用互联网服务提供商通过互联网)。在一些实施例中,包括例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA)的电子电路可以通过利用计算机可读程序指令的状态信息来使电子电路个性化来执行计算机可读程序指令,以便执行本发明的各方面。
下面将参照根据本发明实施例的方法、装置(***)和计算机程序产品的流程图和/或框图描述本发明。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可被提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器以产生机器,使得经由计算机或其他可编程数据处理装置的处理器执行的指令创建用于实现在流程图和/或框图的或多个框中指定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置、和/或其他设备以特定方式工作,从而,其中存储有指令的计算机可读存储介质包括包含实现流程图和/或框图中的或多个方框中规定的功能/动作的方面的指令的制造品。
也可以把计算机可读程序指令加载到计算机、其他可编程数据处理装置、或其他设备上,使得在计算机、其他可编程装置或其他设备上执行一系列操作步骤,以产生计算机实现的处理,使得在计算机、其他可编程装置或其他设备上执行的指令实现流程图和/或框图中的或多个方框中规定的功能/动作。
附图中的流程图和框图示出了根据本发明的不同实施例的***、方法和计算机程序产品的可能实现方式的架构、功能和操作。对此,流程图或框图中的每个框可表示指令的模块、段或部分,其包括用于实现指定的逻辑功能的一个或多个可执行指令。在一些备选实现中,框中标注的功能可以不按照图中标注的顺序发生。例如,取决于所涉及的功能,连续示出的两个块实际上可以基本上同时执行,或者这些块有时可以以相反的顺序执行。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作或执行专用硬件与计算机指令的组合的专用的基于硬件的***来实现。
如上所述,本发明提供了一种改进的自动计算机工具,用于识别网络钓鱼泄漏通信并执行响应动作,以防止网络钓鱼实体从目标实体获得对个人信息(PI)的访问。本发明的机制是基于对用来在收集点计算设备处收集目标实体的个人信息的可识别语法的观察而设计的。因此,为了更好地理解改进的计算工具操作的方式,现在参见图1,其描绘了网络钓鱼攻击的解剖结构的示例框图。
图1中所示的网络钓鱼攻击的示例解剖结构假设网络钓鱼攻击利用电子邮件(email)通信,然而说明性实施例适用于可用于执行网络钓鱼以便诱使目标实体点击超链接或以其他方式访问受危害服务器上的网络钓鱼网站并将其PI输入到用户界面的字段中或以其他方式提供其PI作为网络钓鱼网站的输入的任何电子通信。如图1所示,执行网络钓鱼攻击活动的过程以攻击者110在受危害服务器计算设备120上部署(步骤1)网络钓鱼网站开始。攻击者110然后编写网络钓鱼电子邮件通信,该网络钓鱼电子邮件通信随后被发送(步骤2)到一大群目标实体130。步骤1和步骤2构成了网络钓鱼攻击的“准备阶段”,而此后描述的其余步骤构成了“攻击阶段”。
目标实体群130的潜在受害者接收网络钓鱼电子邮件通信,这些潜在受害者中的一些可能会点击超链接或者以其他方式重定向其计算设备以访问部署在受危害服务器120处的网络钓鱼网站(步骤3)。受害者的计算设备然后被重定向到网络钓鱼网站(步骤4),受害者通过所述网络钓鱼网站输入他们的个人信息(PI)(步骤5)。应当注意,网络钓鱼网站被攻击者110专门设计为代表他们声称的实体的真实网站,其通常模仿真实网站的标志和内容。因此,当实际上受害者在访问网络钓鱼网站并将他们的PI(例如他们的用户标识符、密码、账号、诸如个人识别号码的安全标识符等)输入到网络钓鱼网站中时,他们相信自己是在访问真实实体的真实网站。
由受害者经由其访问网络钓鱼网站输入的PI,被网络钓鱼网站用于自动填充网络钓鱼泄漏通信的内容,网络钓鱼泄漏通信然后被传输(步骤6)到收集点计算***140。收集点计算***140可以是另一电子邮件服务器或端点计算设备,不同受害者的所收集的PI被收集到该电子邮件服务器或端点计算设备以供攻击者110恶意使用。收集点计算***140可以是例如云中的电子邮件服务器。针对网络钓鱼活动的群体130中的每个受害者,重复步骤3到6的这个过程,即“攻击阶段”。
如先前所述,阻止网络钓鱼攻击的现有尝试专注于传输到潜在受害者群体130的初始网络钓鱼通信(在步骤2中)或将网络钓鱼网站(在步骤1中部署且存在于受危害服务器120上)与其他已知网络钓鱼网站或合法网站进行比较以确定所述网站是否可能是网络钓鱼网站。这些已知的机制试图通过将解决方案专注于发送到受害者和受害者所访问的网站的初始通信上来保护受害者自身。在本发明之前,没有机制对网络钓鱼泄漏通信进行操作的机制,例如在电子通信服务提供商计算设备处的经由云140中的服务器计算***促进来自受危害服务器120的或在收集点计算***处的电子通信的机制。就是说,本发明专注于计算设备(例如托管网络钓鱼攻击的服务器)和托管攻击者的收集账户或地址的收集点计算设备。照此,网络的所有者(例如,云提供商、任何托管公司或大到足以使多个服务器在其网络内部运行的任何实体)无需扫描和检测针对受害者的初始攻击通信或直接分析网络钓鱼网站就被通知该网络托管了网络钓鱼攻击。
如上所述,说明性实施例的改进的计算机工具基于如下观察来操作:网络钓鱼泄漏通信具有在网络钓鱼泄漏通信的编码/内容中可识别的语法。可以利用这些语法来生成这样的网络钓鱼泄漏通信—据其可以训练机器学习模型(例如,PECI引擎的RNN和二元分类器)来识别网络钓鱼泄漏通信的存在,即识别该语法何时以表示网络钓鱼泄漏通信的方式存在于输入电子通信中。可以使用基于这些语法生成的网络钓鱼泄漏通信以及正常(即非网络钓鱼的)通信来进行对RNN和二元分类器的这种训练,使得RNN和二元分类器能够适当地分类,即生成表明通信为网络钓鱼泄漏通信或正常通信的正确概率。
例如,在一个说明性实施例中,在PECI引擎的机器学习模型(例如,RNN和二元分类器)的训练操作期间,可以基于对已知网络钓鱼泄漏电子邮件的分析来生成唯一性网络钓鱼泄漏通信语法集合。这些网络钓鱼泄漏通信语法可以由训练集生成引擎用来生成网络钓鱼泄漏通信训练集,其中训练集中的每个电子邮件通信是符合网络钓鱼泄漏通信语法之一的网络钓鱼泄漏通信,或者是正常通信,即非网络钓鱼通信。该训练数据集可以包括数千个通信,其中很大一部分是正常通信,而较少但重要的部分是网络钓鱼泄漏通信。通过将训练数据集划分为训练通信的子集和测试通信的子集,可以用通信的训练数据集来训练和测试机器学习模型两者。训练子集用于使用由监督的机器学习过程来训练PECI引擎的机器学习模型(例如,RNN和二元分类器),而测试子集择用于一旦训练被认为已经完成就测试机器学习模型。
以下是在本说明性实施例的唯一性网络钓鱼泄漏通信语法集合中识别和使用的三种网络钓鱼过滤电子邮件语法的示例。应当理解,虽然这里仅示出了三个示例,但是唯一性网络钓鱼泄漏通信语法集合实际上可以更大,例如包括数百甚至数千个语法。
电子邮件实例1:
"----~~~-=BeGiN=-~~~-----
"
"Online ID:".$_POST['Email']."
"
"Password:".$_POST['Passw']."
"
"---------=IP Adress&Date=---------
"
"IP Address:".$ip."
"
"Country:".$country."
"
"Date:".$date."
"
"-----~~-=CoPyMe=-~~------
"
电子邮件实例2:
"---------------||by UbiA||---------------
"
"Email Provider:".$emailprovider."
"
"Emai:".$_POST['Email']."
"
"Pass:".$_POST['Passwd']."
"
"IP:".$ip."
"
"-----------------------IIIII---------------------
"
"City:{$city}
"
"Region:{$region}
"
"Country Name:{$countryName}
"
"Country Code:{$countryCode}
"
"--------------------~!~-------------------------
电子邮件实例3:
"~~~~~~Mail Info~~~~~~
"
"Username:".$_POST['user']."
"
"Password:".$_POST['password']."
"
"~~~~~~The ViCtIm~~~~~~
"
"|Client IP:".$ip."
"
"|
"Browser:".$Agent."
"
"DateTime:".$timedate."
"
"country:".$country."
"
"
"~~~~~~~~~ArysAdFS~~~~~~~~
诸如这些规定了通信编码中的内容的结构的语法,被训练数据集生成引擎用来生成合成网络钓鱼泄漏通信(例如,电子邮件)。例如,训练数据集生成引擎可以利用这些网络钓鱼泄漏通信作为训练数据集通信的结构的基础,并用从不同源获得的实际数据或训练数据集生成引擎生成的虚拟数据来填充通信内容,例如***对应于日期/时间、主机名、国家等的内容。这种生成的网络钓鱼泄漏通信可与从已知的正常通信数据集(例如,EnronEmail Dataset)获得的正常通信组合,以生成训练数据集。应当理解,要保持表明通信是网络钓鱼泄漏通信还是正常通信的真实数据。该真实数据可以用于在有监督的机器学习过程期间验证机器学习模型的正确输出,并基于机器学习模型的输出中确定的损失或误差来调整机器学习模型的操作参数。
为了更清楚地理解PECI引擎的训练和运行时操作,在图2中描绘了根据一个说明性实施例的PECI引擎的结构。如图2中所示,PECI引擎200包括预处理器210、第一机器学习模型220(其在所描绘的示例中是双向长短期记忆(LSTM)递归神经网络(RNN))、级联逻辑230、以及二元分类引擎或二元分类器240。在一些说明性实施例中,第一机器学习模型220和二元分类器240可以一起构成机器学习模型,所述机器学习模型作为整体通过机器学习操作被训练,以识别表示所接收的输入电子通信的结构的结构符记中的网络钓鱼泄漏语法和网络钓鱼泄漏语法之间的关系,如下文更详细描述的那样。PECI引擎200可以与响应动作计算***250一起操作、通信、或集成,响应动作计算***250可以如下文讨论的那样响应于网络钓鱼通信的检测而执行响应动作。
PECI引擎200在预处理器210中接收输入通信(例如,输入电子邮件),预处理器210对输入通信进行操作以提取被认为是电子邮件的输入通信的内容的表示以及一个或多个内容特征度量,其中该一个或多个内容特征度量用于减少可由机器学习模型生成的误报。应当理解,在一些说明性实施例中,可以不利用内容特征度量,在这种情况下,预处理器210可以仅从输入电子邮件提取内容表示。然而,在其他说明性实施例(诸如图2中描绘的实施例)中,内容特征被用来改进PECI引擎200的性能。
关于由预处理器210提取的内容表示,内容表示是内容的结构的表示,并且因此在本文中被称为结构符记。基于如下观察来生成结构符记:存在于网络钓鱼泄漏电子邮件中的个人信息(PI)以如上所述的特定模式或语法组织,并且这些模式或语法通常不经常出现在正常(非网络钓鱼泄露)通信中。网络钓鱼泄漏通信内容与正常通信的结构的这种显著差异,提供了利用确定的输入通信结构来检测网络钓鱼泄漏通信的机会。
预处理器210提取输入的电子邮件的内容的结构作为结构符记215。结构符记215是如何组织输入电子邮件的内容的符号表示,其中符号表示内容的类别并且数字计数值被附加到符号以表示内容中的对应于类别的字符的数量。符号/数值配对的序列构成结构符记。符号是来自预定义的类别指定符集合的类别指定符,该类别指定符指示对输入通信的内容的对应部分中存在的内容的类型的分类,例如,字母字符、数字字符、格式指定符等。
例如,在一个说明性实施例中,利用以下四个内容类别:
C:英文字母表的26个字母(a-z,A-Z)
N:10个数字(0-9)
L:换行(\n,\r)
S:不属于上述类别的所有其他字符。
为了生成结构符记,预处理器210解析输入电子邮件的内容以将内容中的下一字符分类,并增加对应计数,直到遇到作为解析的一部分的下一类别的内容。由此,预处理器210对类别中的连续字符进行计数,并在类别符号之后附加相关计数数量或值。为了建立紧凑的结构符记,针对单例字符跳过计数值“1”。例如,出现在电子邮件中的文本“Hi Yvonne/n This is John,please call me back.”可以表示为“C2SC6LSC4SC2SC4S2C6SC4SC2SC4S”的结构符记。应注意,虽然在此实例中仅将换行格式化字符串视为单独类别,但在产生结构符记时,可以将存在于输入通信的编码或内容中的任何格式化字符辨识为单独类别。
作为进一步的示例,考虑以下网络钓鱼泄漏通信语法及其相应的结构符记的示例。
电子邮件实例4:
Chase Bank Spam ReZulT
User ID:
hostip
Full Name:$fullname
City:
port
State:
Mother Maiden Name:
这将产生我们的方法的以下结构符记:C5SC4SC4SC6L2C4SC2S2LC6LC4SC4S4C8L2C4S2LC4LC5S2L2C6SC6SC4S2L。
电子邮件实例5:
User ID:
Date of Birth:
Security Number:
IP Address:
HostName:
这将产生我们的方法的以下结构符记:C4SC2S3LC4SC2SC5S3LC8SC6S3LC2SC7S3LC8S2L。
应当理解,这些仅是根据一个说明性实施例可以生成和利用的内容类别和后续结构符记的示例。除上述内容类别之外或代替上述内容类别,其他说明性实施例可以利用其他内容类别,而不脱离说明性实施例的精神和范围。此外,可以利用不需要内容类别和指示对应于内容类别的字符数量的数值的序列的输入通信的结构的不同编码。在不背离本发明的精神和范围的情况下,可以使用定义输入通信的结构、使得编码的表示可以被馈送到机器学习模型中、使得机器学习模型可以对编码进行操作以生成输入通信是否是网络钓鱼泄漏通信的预测的任何编码。
还应理解,在机器学习模型220的训练/测试期间,由预处理器210针对训练/测试数据集中的电子邮件生成结构符记,所述电子邮件可以是具有一个或多个网络钓鱼泄漏通信语法的生成的网络钓鱼泄漏电子邮件,或正常电子邮件。在任一情况下,电子邮件的内容被转换成结构符记。另外,在一些说明性实施例中,预处理器210从输入电子邮件的内容中提取一个或多个内容特征,如下文将更详细讨论的那样。在一些说明性实施例中,可以理解,输入通信的内容可能具有不足以产生所需大小的结构符记215的大小。在这样的情况下,可以将填充数据添加到输入通信和/或结构符记215以生成足够大小的结构符记215。在其他情况下,输入通信可能具有超过结构符记中可表示的大小,在这种情况下,可以截短内容以适合结构符记215的大小。
与输入电子邮件相对应的结构符记被提供作为对机器学习模型220(例如,图2中的基于双向LSTM的RNN 220)的输入,作为一组输入x0、x1、…xn,其中对机器学习模型220的每个输入是结构符记的对应部分。例如,使用电子邮件内容的先前结构符记“Hi Yvonne/nThis is John,please call me back”,即“C2SC6LSC4SC2SC4S2C6SC4SC2SC4S”,输入的集合将是x0=C、x1=2、x3=S、x4=C、x5=6、x6=L、x7=S等。应当理解,如何划分结构符记以供RNN220和其他实施例处理的这个示例可以利用包括两个或更多个字符/数字/符号的划分或部分或对结构符记的将经由RNN220进行处理的部分的任何其他指定。
在所描绘的示例中,使用基于双向LSTM的RNN。RNN是神经网络,网络中的单元以循环方式连接并用当前输出作为RNN的每个步骤中的下一输入。RNN在本领域中通常是已知的并且用于序列输入。LSTM模型是一种类型的RNN,其已被证明在复杂模式和长序列的情况下工作良好。虽然基于LSTM的RNN通常是已知的,但它们尚未被配置或适于以本发明的方式识别网络钓鱼泄漏通信。
此外,在将此类基于LSTM的RNN应用于网络钓鱼泄漏通信的识别中的挑战是目标实体,对此类网络钓鱼活动的响应可识别网络钓鱼攻击并提供虚假信息或随机数据以试图分散攻击者的注意力。该虚假信息不符合实际被盗PI的结构,因为虚假信息是随机字符串或取自其他文本的长片段。为了克服这个问题,机器学习模型220实施使用输入序列的反向副本的双向LSTM架构。具有双向LSTM可加强对消息的其余部分(随机串)的结构(例如,网络钓鱼泄漏通信语法)的识别,因为该语法被前后学习两次,而随机串从未被学习也未被识别。此外,编码通常有助于压缩随机数据,因为例如500个随机字符的字符串仅被编码为4个字符:“C500”,从而减少随机字符的影响。
在所描绘的示例实现中,结构符记215被输入到机器学习模型220,使得结构符记215的第一部分被输入到LSTM单元222的前向序列的第一LSTM单元222和LSTM单元222的反向序列的最后LSTM单元224。按照结构符记215的顺序,其他部分被类似地输入到正向和反向序列的LSTM单元。例如,如果输入结构符记是“C2SC6L”,则LSTM单元一次工作1个输入,使得第一输入x0是“C”,第二输入x1是“2”,第三输入x2是“S”,如此等等。在示例性实现方式中,每个输入xi是14个值C、N、S、L、0、1、2、3、4、5、6、7、8、或9的其中之一。对于每个新输入xi,该输入被馈送至RNN,以及RNN的针对先前输入x(i-1)的输出。因此,对于长度为600的输入结构符记,RNN的LSTM将被遍历600次。RNN 220的每个输出基于LSTM的内存大小,例如,在所示的示例中是256维的向量。给定完整输入结构符记的实际最终输出是在最后输入字符上的RNN的输出,其在所示的示例中再次是256维的向量。
因此,机器学***或更小的误差水平(损失)生成输入通信的正确分类。可以将二元分类器240和机器学习模型220一起训练为单个模型,从而使得由二元分类器240生成的最终输出中的误差是用于机器学习训练的驱动因子,其中,误差的反向传播被用于修改机器学习模型的操作参数(例如,RNN220和二元分类器240)中的一个或两者的操作参数。
因此,本质上,机器学***,此时,机器学习模型220和二元分类器240被确定为已经收敛或已经被训练。此时,基于针对机器学习模型220中的每个LSTM单元设置的操作参数和二元分类器240的操作参数的组合,机器学习模型220和二元分类器240已经学习了表示网络钓鱼泄漏通信的结构符记中的元素的什么关系和模式,例如已经识别了网络钓鱼泄漏通信语法。
在所描绘的示例中,作为基于双向LSTM的RNN的机器学习模型220生成两个输出向量,每个输出向量包括表示指示结构符记215内的模式的存在的不同值的多个向量槽。在一个说明性实施例中,输出向量包括用于正向LSTM路径(LSTM_输出)的一个向量和用于反向LSTM路径(LSTM_反向_输出)的另一个向量。在一个实施例中,这些向量中的每一者的大小为256个维度,如上文所述的那样。机器学习模型220的输出被提供给级联逻辑230,级联逻辑230将向量级联在一起并且与预处理器210从输入通信中提取的内容特征217级联。
内容特征217包括用于改进PECI引擎200的性能的一个或多个内容特征度量。也就是说,尽管在大多数情况下,网络钓鱼泄漏通信的结构符记与常规(正常)通信不同,但是可能存在结构符记类似于网络钓鱼泄漏通信的若干误报。例如,图3是正常通信的示例,基于所识别的网络钓鱼泄漏通信语法,所述正常通信可能会被认为基本上类似于网络钓鱼泄漏通信。从图3可以看出,日历提醒电子邮件通信使用类似于网络钓鱼泄漏电子邮件的也包括报头、字段名称和分隔符等的结构,这可能导致机器学习模型220和分类器240将日历提醒电子邮件错误地分类为网络钓鱼泄露电子邮件。为了减少这样的误报,可以用内容特征217的内容特征度量来将误报与实际网络钓鱼泄漏通信区分开来。
内容特征度量217可以采用许多不同的形式,任何形式被认为在本发明的精神和范围内。在一些说明性实施例中,内容特征度量217是输入通信的内容的统计量度,其可有助于在关于输入通信是否是网络钓鱼泄漏通信的输入通信的分类中区分漏报或误报。可由预处理器210基于输入通信的内容产生的内容特征度量的实例包括内容熵度量和文本比例度量。内容熵度量是测量由数据源产生的一条信息的不确定性的度量,其中,熵随着内容上使用的符号种类的增加而增加,例如,串“aaa”的熵是0,而“abc”的熵是1.58。熵的值越高,所生成的串中具有的无序性或不确定性越大。信息论中的熵的概念是众所周知的,信息论中的熵的示例公式化可在***网站上获得。
如上所述,熵具有为使用各种各样的符号的串生成更大熵度量值的趋势。为了缓解说明性实施例的机制中的这种趋势,初始熵度量值通过串中使用的符号数的对数进行归一化。在一个说明性实施例中,将熵度量值除以串中的符号数的对数。例如,预处理器210可以首先将输入通信的内容转换成小写字母和数字,然后为预处理的内容计算归一化的内容熵。
所得的归一化的内容熵提供关于输入通信是否可能是网络钓鱼泄漏通信的另一指示符,因为常规(正常)通信主要由词(例如,英文词)组成,而网络钓鱼泄漏通信由具有较高不确定性的被窃PI组成,被窃PI例如为用户名和密码,其经常具有基于非词的字符/数字和特殊字符的组合。此外,网络钓鱼泄漏通信具有更多结构特殊字符(非字母或数字字符),以便于从网络钓鱼泄漏通信的内容中自动提取PI。因此,网络钓鱼泄漏通信产生比常规(正常)通信更高的熵。所以,如果内容熵度量较高,那么输入通信更可能是网络钓鱼泄漏通信。可以通过执行训练二元分类器240的机器学***。
文本比例度量基于的是网络钓鱼泄漏通信使用更多的非数字和非字母符号的观察。因此,在网络钓鱼泄漏通信中,数字和字母占网络钓鱼泄漏通信的内容的较低百分比。所以,由预处理器210定义和生成文本比例度量,使得文本比例度量针对给定的输入通信测量该度量中的字母数字字符相对于输入通信的全部内容的百分比。较高文本比例度量值更指示常规(正常)通信,而相对较低文本比例度量值更指示网络钓鱼泄漏通信。再次,可以通过关于二元分类器240执行的机器学习操作来机器学习文本比例度量的阈值。
应当理解,在一些说明性实施例中,除上述那些内容特征之外或替代上述那些内容特征,可以使用其他内容特征,而不背离说明性实施例的精神和范围。在一些实施例中,内容特征可以不一定是统计量度,而可以是已知与网络钓鱼泄漏通信具有高相关性的其他内容特征,诸如可疑报头内容、可疑问候语、特定关键词等。由此,在预处理器210对输入通信的内容进行解析和处理期间,在输入通信中存在这些已知的高度相关的内容特征中,可以设置内容特征值,例如,如果不存在则设置为0,如果存在则设置为1,并且预处理器210将该内容特征值输出到级联逻辑230。
级联逻辑230操作用于将机器学习模型220输出的(多个)向量与预处理器210所提取的内容特征进行级联以生成向二元分类器240输入的单个向量。在一个说明性实施例中,机器学习模型220的(多个)输出向量包括各自具有256个维度的向量。例如,内容特征的向量表示包括针对内容熵的单个维度和针对文本比例的单个维度,然而,应当理解的是,取决于由预处理器210生成的特定内容特征和内容特征度量,(多个)内容特征向量可以包括多于一个维度。所以,在示例性实施例中,由级联逻辑230产生的单个向量输出可包括514维的向量(256维用于LSTM_输出,256维用于LSTM_反向_输出,1维用于内容熵,1维用于文本比例)。
由级联逻辑230生成的单个向量输出被输入到二元分类器240,二元分类器240对该单个向量输出进行操作以生成指示输入通信是否是网络钓鱼泄漏通信的概率的单个输出概率值或预测242。或者,可以输出单个二进制值,而不是概率值,从而指示关于输入通信是否是网络钓鱼泄漏通信的最终判定,例如,如果是网络钓鱼泄漏通信,则二进制值为1,如果不是网络钓鱼泄漏通信,则二进制值为0。在概率值输出的情况下,可以将概率值与阈值概率进行比较,以确定是否将输入通信归类为网络钓鱼泄露通信,例如,如果概率等于或大于预定阈值,则将输入通信归类为网络钓鱼泄露通信。
二元分类器240可以被实现为任何类型的已知或以后开发的二元分类器模型,诸如决策树模型、随机森林模型、SVM、神经网络等。在一些说明性实施例中,二元分类器240执行S型函数(sigmoid function)以基于由机器学习模型220生成的向量输出和由预处理器210生成的内容特征而产生关于输入通信是否是网络钓鱼泄漏通信的最终预测。例如可以使用二元交叉熵损失函数来训练S型函数。
二元分类器240的输出242被提供给响应动作计算***250,响应动作计算***250在确定输入通信被适当地分类为网络钓鱼泄漏通信时对该输出进行操作以执行响应动作。响应动作***250可以采取许多不同的形式,这取决于要执行的期望响应动作。例如,响应动作***250可以是被配置为执行入侵检测和/或入侵预防操作的计算***,诸如用于组织的安全事件和事件监视(SIEM)计算***,诸如可从美国纽约Armonk的国际商业机器(IBM)公司获得的QRadarTM。在其他说明性实施例中,响应动作***250可以是服务提供商计算***,诸如提供底层计算基础设施以促进电子通信的服务提供商,例如,电子邮件服务提供商、即时消息服务提供商、互联网服务提供商等。在一些情况下,响应动作***250可以是通知计算***,其响应于使用说明性实施例的机制检测到终端用户是网络钓鱼攻击的目标而向终端用户的客户端计算设备发出自动生成的通知。
在一些说明性实施例中,响应于将输入通信分类为网络钓鱼泄漏通信,可以将二元分类器240的输出242与输入通信一起,或者与由预处理器210或PECI引擎200的其他逻辑从输入通信中提取的输入通信的某些特征一起,提供给响应动作***250。例如,如果输入通信被分类为网络钓鱼泄漏通信,则可以从输入通信中提取源地址、目的地址、用来收集个人信息的域的标识符和/或网站的URL、在网络钓鱼泄漏通信中收集的个人信息等,并提供给响应动作***250,或者可以由响应动作***250从转发的输入通信中提取。该信息可以由响应动作***250用作自动或半自动地执行一个或多个响应动作的基础。
响应动作***250可以基于所期望的实现执行各种不同的响应动作。例如,在一个说明性实施例中,响应动作***250可以响应于检测到输入通信是网络钓鱼泄漏通信而操作,以阻止输入通信到达其目的地。在一些说明性实施例中,可以从输入通信内容/元数据中识别输入通信的源,并将其用于向适当的机构(例如,域名服务器提供商等)报告该源。在一些实现中,诸如在PECI引擎200由通信服务提供商(诸如电子邮件服务提供商等)实现的情况下,可以阻止或重定向来自发送者的所有通信,以使得它们不能在收集点计算***处被接收。在其他说明性实施例中,响应动作***250可以向域名服务提供商或者可以中止与该通信的源(例如,用于执行网络钓鱼攻击的网站)相关联的域名的其他机构报告网络钓鱼攻击,从而防止实体访问该网站来提供其个人信息。可以执行不同类型的响应动作以阻碍网络钓鱼攻击和/或为进一步的行动而报告网络钓鱼攻击。在一些情况下,可以自动执行响应动作以阻止网络钓鱼攻击和/或消除实体访问用于收集个人信息的网站的能力。
如从以上描述中显而易见的,说明性实施例可用于许多不同类型的数据处理环境中。下文提供图4和5作为可以实现说明性实施例的方面的示例环境。应当理解,图4和5仅仅是示例,并不旨在断言或暗示关于其中可以实现本发明的各方面或实施例的环境的任何限制。在不背离本发明的精神和范围的情况下,可以对所描绘的环境做出许多修改。
图4描绘了其中可以实现说明性实施例的各方面的示例分布式数据处理***的图形表示。分布式数据处理***400可以包括计算机的网络,其中可以实现说明性实施例的各方面。分布式数据处理***400包含至少一个网络402,网络402是用于在分布式数据处理***400内连接在一起的不同设备和计算机之间提供通信链路的介质。网络402可以包括诸如有线、无线通信链路或光纤电缆之类的连接。
在所描绘的示例中,服务器404和服务器406与存储器408一起连接到网络402。此外,客户端410、412和414也连接到网络402。这些客户端410、412和414可以是例如个人计算机、网络计算机等。在所描绘的示例中,服务器404向客户端410、412和414提供诸如引导文件、操作***映像和应用程序之类的数据。在所描绘的示例中,客户端410、412和414是服务器404的客户端。分布式数据处理***400可以包括附加的服务器、客户端和未示出的其他设备。
在所描绘的示例中,分布式数据处理***400是互联网,其中网络402表示使用传输控制协议/互联网协议(TCP/IP)协议组来彼此通信的网络和网关的全球集合。互联网的核心是主节点或主计算机之间的高速数据通信线路的主干,由数千个路由数据和消息的商业、政府、教育和其他计算机***组成。当然,分布式数据处理***400还可被实现为包括多个不同类型的网络,诸如例如内联网、局域网(LAN)、广域网(WAN)等。如上所述,图4旨在作为实例,而不是作为对本发明的不同实施例的架构限制,并且因此,图4中所示的特定元素不应当被认为是关于其中可以实现本发明的说明性实施例的环境的限制。
如图4中所示,计算设备中的一个或多个(例如,服务器404)可以具体地配置为实现根据一个或多个说明性实施例的PECI***420和/或响应动作***430。计算设备的配置可包括提供专用硬件、固件等以促进本文关于说明性实施例描述的操作的执行和输出的产生。计算设备的配置还可以或者可替换地包括提供存储在一个或多个存储设备中并且被加载到计算设备(诸如服务器404)的存储器中的软件应用,用于使计算设备的一个或多个硬件处理器执行软件应用,软件应用将处理器配置为执行操作并且生成本文中关于说明性实施例描述的输出。此外,在不脱离说明性实施例的精神和范围的情况下,可以使用应用特定硬件、固件、在硬件上执行的软件应用等的任何组合。
应当理解,一旦计算设备以这些方式之一被配置,计算设备就变成专门被配置为实现说明性实施例的机制的专用计算设备而非通用计算设备。此外,如本文所描述的,说明性实施例的机制的实现改进了计算设备的功能,并提供了有用和具体的结果,所述结果通过减少攻击者从目标实体收集个人信息的能力,促进网络钓鱼泄漏通信的识别和响应动作的执行,以最小化网络钓鱼攻击和网络钓鱼活动的成功。
参见图4,应当理解,实现PECI***420和/或响应动作***430的服务器(例如,服务器404)可以是入侵检测***/入侵预防***(IDS/IPS)、SIEM***、电子通信服务提供商服务器***、与可能被网络钓鱼攻击作为目标的组织相关联的服务器等。此外,在一些说明性实施例中,PECI***420和/或响应动作***430可以在客户端工作站本身(例如,410-414)上实现。还应当理解,PECI***420和/或响应动作***430可以跨多个计算设备(例如,多个服务器计算设备,诸如在云计算环境等中)分布,并且PECI***420和/或响应动作***430可以在不同的计算***上,潜在地与不同的组织相关联(例如,第一组织负责检测网络钓鱼泄漏通信,第二组织负责执行响应动作以减轻网络钓鱼泄漏通信的负面影响)。
在示例性实施例中,仅出于说明的目的,PECI***420和响应动作***430被视为在同一服务器计算设备404上提高,服务器计算设备404本身也可以是通信服务提供商的服务器计算设备404,其被攻击者用来将网络钓鱼泄漏通信路由到收集点计算设备。例如,可以—诸如以上文关于图1描述的方式—执行网络钓鱼活动,其中攻击者可以使用服务器404经由电子邮件服务提供商发送电子邮件通信。网络钓鱼电子邮件可以模仿来自有效实体的真实电子邮件,指示需要接收者点击链接或以其他方式访问网站以输入个人信息(例如,改变密码等)。接收者(例如,客户端计算设备412的用户)可能会接收网络钓鱼电子邮件并点击链接,所述链接将他们的客户端计算设备的网络浏览器应用重定向到托管在服务器(诸如服务器406)上的网络钓鱼网站。网络钓鱼网站可以模仿合法网站,客户端计算设备412的用户可能会假设它是合法网站而将个人信息(诸如用户名、密码、账户信息等)输入到该网站中。网络钓鱼网站然后可以生成通过电子通信服务服务器404传送到收集计算设备(例如,客户端计算设备414)的网络钓鱼泄漏通信。
PECI***420可以监视和评估流经服务器404的每个电子通信。应当理解,为了可扩展性,可以有PECI***420和/或响应动作***430的多个实例,其中提供路由机制以将传入通信路由到这些实例中的适当实例以便将服务性能维持在可接受水平。PECI***420接收输入通信,并以先前参见图2描述的方式对其进行操作,以确定输入通信是否是网络钓鱼泄漏通信。如果输入通信是网络钓鱼泄漏通信,则响应动作***430可以自动执行响应动作以阻碍和/或报告网络钓鱼攻击。例如,响应动作***430可以阻止网络钓鱼泄漏通信到达目的地,即收集点计算***414,并可将网络钓鱼攻击报告给适当机构。
如上所述,说明性实施例的机制利用专门配置的计算设备或数据处理***来执行用于识别网络钓鱼泄漏通信的操作,并在识别出这种网络钓鱼泄漏通信时执行响应动作。这些计算设备或数据处理***可包括不同硬件元件,这些硬件元件通过硬件配置、软件配置、或硬件和软件配置的组合被具体配置以实现本文所描述的***/子***中的一个或多个。
图5是其中可以实现示例性实施例的各方面的仅一个示例性数据处理***的框图。数据处理***500是计算机的实例,诸如图4中的服务器404,实现本发明的说明性实施例的过程和各方面的计算机可用代码或指令可以位于其中和/或在其中执行,以便实现如本文所述的说明性实施例的操作、输出和外部效果。
在所描绘的示例中,数据处理***500采用包括北桥和存储器控制器中心(NB/MCH)502以及南桥和输入/输出(I/O)控制器中心(SB/ICH)504的集线器架构。处理单元506、主存储器508和图形处理器510连接到NB/MCH 502。图形处理器510可以通过加速图形端口(AGP)连接到NB/MCH 502。
在所描绘的示例中,局域网(LAN)适配器512连接到SB/ICH 504。音频适配器516、键盘和鼠标适配器520、调制解调器522、只读存储器(ROM)524、硬盘驱动器(HDD)526、CD-ROM驱动器530、通用串行总线(USB)端口和其他通信端口532、以及PCI/PCIe设备534通过总线538和总线540连接到SB/ICH504。PCI/PCIe设备可以包括例如以太网适配器、***卡和用于笔记本计算机的PC卡。PCI使用卡总线控制器,而PCIe不使用。ROM 524可以是例如闪存基本输入/输出***(BIOS)。
HDD 526和CD-ROM驱动器530通过总线540连接到SB/ICH 504。HDD 526和CD-ROM驱动器530可以使用例如集成驱动电子设备(IDE)或串行高级技术附件(SATA)接口。超级I/O(SIO)设备536可以连接到SB/ICH 504。
操作***在处理单元506上运行。操作***协调和提供对图5中的数据处理***500内的不同组件的控制。作为客户端,操作***可以是可商购的操作***,诸如Windows面向对象的编程***(诸如JavaTM编程***)可以结合操作***运行,并且从在数据处理***500上执行的JavaTM程序或应用提供对操作***的调用。
作为服务器,数据处理***500可以是例如运行高级交互执行操作***或操作***的IBM eServerTMSystem计算机***、基于PowerTM处理器的计算机***等。数据处理***500可以是包括处理单元506中的多个处理器的对称多处理器(SMP)***。可替代地,可以采用单个处理器***。
操作***、面向对象的编程***和应用或程序的指令位于诸如HDD 526的存储设备上,并且可被加载到主存储器508中以供处理单元506执行。本发明的说明性实施例的处理可以通过使用计算机可用程序代码的处理单元506执行,计算机可用程序代码可以位于存储器中,例如,主存储器508、ROM 524或一个或多个***设备526和530中。
总线***(诸如图5中所示的总线538或总线540)可由一条或多条总线组成。当然,总线***可以使用在附接到结构或架构的不同组件或设备之间提供数据传送的任何类型的通信结构或架构来实现。通信单元(诸如图5的调制解调器522或网络适配器512)可包括用于发送和接收数据的或多个设备。存储器可以是例如主存储器508、ROM 524或诸如在图5中的NB/MCH 502中发现的高速缓存。
如上所述,在一些说明性实施例中,示例性实施例的机制可以被实现为应用特定硬件、固件等,被存储在存储设备(诸如HDD 526)中并被加载到存储器(诸如主存储器508)中的应用软件,用于由一个或多个硬件处理器(诸如处理单元506等)执行。照此,图5中所示的计算设备变得被专门配置成实现说明性实施例的机制,并且被专门配置成执行本文关于PECI***和/或响应动作***所描述的操作和生成输出。
本领域普通技术人员将理解,图4和5中的硬件可以取决于实现方式而变化。除图4和5中描绘的硬件之外或代替图4和5中描绘的硬件,可使用其他内部硬件或***设备,例如快闪存储器、等效非易失性存储器或光盘驱动器等。此外,示例性实施例的过程可以应用于除了前面提到的SMP***之外的多处理器数据处理***,而不偏离本发明的精神和范围。
此外,数据处理***500可采取许多不同数据处理***中的任的形式,包括客户端计算设备、服务器计算设备、平板计算机、膝上型计算机、电话或其他通信装置、个人数字助理(PDA)等。在一些说明性示例中,数据处理***500可以是便携式计算设备,其配置有闪存以提供用于存储操作***文件和/或用户生成的数据的非易失性存储器。本质上,数据处理***500可以是任何已知的或以后开发的数据处理***,而没有架构限制。
图6是概述根据一个说明性实施例的在执行网络钓鱼泄漏通信的识别时PECI***的示例操作的流程图。如图6所示,该操作由PECI***接收输入通信开始(步骤610)。由PECI***的预处理器对输入通信进行解析和处理以提取结构符记,并且在一些说明性实施例中,提取一个或多个内容特征(步骤620)。将结构符记输入到经训练的机器学习模型(步骤630)。经训练的机器学习模型基于学习到的网络钓鱼泄漏通信语法及其关系来处理结构符记,并且生成一个或多个向量输出(步骤640)。将由经训练的机器学习模型生成的一个或多个向量输出与一个或多个内容特征级联以生成单个向量输出(步骤650)。将该单个向量输出输入到PECI***的二元分类器,其对单向量输出进行操作以生成输入通信是否是网络钓鱼泄漏通信的预测(步骤660)。该预测被输入到响应动作计算***,其对该预测进行操作以执行响应动作(步骤670)。然后操作终止。
由此,说明性实施例提供改进的计算工具,其提供计算***中先前不存在的新功能,即自动识别网络钓鱼泄漏通信,并在识别出这种网络钓鱼泄漏通信时执行自动响应动作。说明性实施例采用基于计算机的机器学习和人工智能来评估电子通信的结构和内容,以确定所述结构和内容是否指示网络钓鱼泄漏通信。训练机器学习模型以基于识别的网络钓鱼泄漏通信语法识别结构模式。此外,训练机器学习模型以评估此类结构模式以及诸如内容熵和文本比例的内容特征,以确定输入通信是网络钓鱼泄漏通信的概率。基于这样的概率,对输入通信就其是否是网络钓鱼泄漏通信作出最终分类,然后将该分类输入到自动执行响应动作以阻碍和/或报告网络钓鱼攻击的响应动作***。
如上所述,应当理解,说明性实施例可以采取完全硬件实施例、完全软件实施例或包含硬件和软件元件的实施例的形式。在一个示范性实施例中,说明性实施例的机制在软件或程序代码中实现,该软件或程序代码包括但不限于固件、常驻软件、微代码等。
适合于存储和/或执行程序代码的数据处理***将包括至少一个处理器,该至少一个处理器通过例如***总线的通信总线直接或间接地耦合到存储器元件。存储器元件可以包括在程序代码的实际执行期间使用的本地存储器、大容量存储器和提供至少一些程序代码的临时存储以便减少在执行期间必须从大容量存储器检索代码的次数的高速缓冲存储器。存储器可以是各种类型的,包括但不限于ROM、PROM、EPROM、EEPROM、DRAM、SRAM、闪存、固态存储器等。
输入/输出或I/O设备(包括但不限于键盘、显示器、定点设备等)可以直接地或通过居间的有线或无线I/O接口和/或控制器等耦合到***。I/O设备可以采取除常规键盘、显示器、定点设备等之外的许多不同形式,例如通过有线或无线连接耦合的通信设备,包括但不限于智能电话、平板计算机、触摸屏设备、语音识别设备等。任何已知或随后开发的I/O设备都旨在处于说明性实施例的范围内。
网络适配器也可以耦合到***,以使得数据处理***能够通过居间的私有或公共网络耦合到其他数据处理***或远程打印机或存储设备。调制解调器、电缆调制解调器和以太网卡仅仅是用于有线通信的网络适配器的当前可用类型中的几种。还可以使用基于无线通信的网络适配器,包括但不限于802.11a/b/g/n无线通信适配器、蓝牙无线适配器等。任何已知或以后开发的网络适配器都包含在本发明的精神和范围内。
已经出于说明和描述的目的呈现了本发明的描述,并且不旨在是详尽的或限于所公开形式的本发明。在不脱离所描述的实施例的范围的情况下,许多修改和变化对于本领域普通技术人员来说是显而易见的。选择和描述实施例以便最好地解释本发明的原理、实际应用,并且使本领域的其他普通技术人员能够理解本发明的具有适合于预期的特定用途的各种修改的各种实施例。这里使用的术语被选择来最好地解释实施例的原理、实际应用或对在市场中找到的技术的技术改进,或者使得本领域普通技术人员能够理解这里公开的实施例。
Claims (20)
1.一种在包括处理器和存储器的数据处理***中的方法,所述存储器包括指令,所述指令由所述处理器执行以配置所述处理器来实现用以检测网络钓鱼泄漏通信的网络钓鱼泄漏通信识别(PECI)***,所述方法包括:
由所述PECI***从数据网络接收输入电子通信;
由所述PECI***处理所述输入电子通信以提取结构符记,其中,所述结构符记表示所述输入电子通信的内容结构;
由所述结构符记处理到通过机器学习训练操作训练的PECI***的机器学习模型中,以识别输入到所述机器学习模型的结构符记中的网络钓鱼泄露通信语法、网络钓鱼泄露通信语法之间的关系;
由所述机器学习模型处理所述结构符记以生成用于由所述机器学习模型的分类逻辑进行处理的指示计算出的值的至少一个第一向量输出;
由所述机器学习模型的分类逻辑处理来自所述机器学习模型的所述至少一个第一向量输出,以将所述输入电子通信分类为网络钓鱼泄漏通信或非网络钓鱼泄漏通信;和
由所述机器学习模型输出指示所述输入电子通信的所述分类的分类输出。
2.根据权利要求1所述的方法,进一步包括:
由所述PECI***响应于从与关于一个或多个目标实体的个人信息通过其被收集的网络钓鱼网站相关联的第一计算设备以及与从所述一个或多个目标实体收集个人信息的个人信息收集点相关联的第二计算设备传输所述输入电子通信的尝试而拦截所述输入电子通信。
3.根据权利要求1或2所述的方法,进一步包括:
由所述PECI***处理所述输入电子通信以提取一个或多个内容特征度量,其中,所述一个或多个内容特征度量是所述输入电子通信的内容的有助于在所述分类输出中区分误报或漏报的统计量度。
4.根据权利要求3所述的方法,其中,所述一个或多个内容特征度量包括内容熵度量或文本比例度量中的至少一个,所述内容熵度量是所述输入电子通信的内容的不确定性的量度,其中所述熵随着所述输入电子通信的内容中使用的符号的种类增加而增加,所述文本比例度量是所述输入电子通信的内容中的至少一个第一类型的字符与所述输入电子通信的内容中的至少一个第二类型的字符的比例的量度。
5.根据权利要求3或4所述的方法,进一步包括:
由所述机器学习模型将所述至少一个第一向量输出输入到所述PECI***的级联逻辑;
由所述PECI***将所述一个或多个内容特征度量输入到所述级联逻辑;和
由所述级联逻辑将所述至少一个第一向量输出与所述一个或多个内容特征度量级联以生成被输入到所述分类逻辑的第二输出向量,其中所述分类逻辑处理来自所述机器学习模型的所述至少一个第一向量输出,以至少通过处理包括与所述一个或多个内容特征度量级联的所述至少一个第一向量输出的所述第二输出向量来将所述输入电子通信分类为网络钓鱼泄漏通信或非网络钓鱼泄漏通信。
6.根据前述权利要求中任一项所述的方法,其中,所述结构符记是字符串,其中,所述结构符记中的每个字符是类别指定符或数值,所述类别指定符来自类别指定符的集合,指示存在于所述输入电子通信的文本的对应部分中的内容的类型的分类,所述数值指示所述输入电子通信的内容中与所述结构符记的字符串中的先前类别指定符对应的字符的数量。
7.根据权利要求6所述的方法,其中,所述类别指定符的集合包括:第一类别指定符,指示在所述输入电子通信的内容中的字母字符;第二类别指定符,指示在所述输入电子通信的内容中的数字字符;第三类别指定符,指示在所述输入电子通信的内容中的格式化字符串或编码;以及第四类别指定符,指示不属于所述第一类别、所述第二类别或所述第三类别中的任何类别的字符。
8.根据前述权利要求中任一项所述的方法,其中,所述机器学习模型是基于双向长短期记忆(LSTM)的递归神经网络(RNN),其中所述至少一个第一向量输出包括与所述基于双向LSTM的RNN中的LSTM单元的正向传播集合对应的一个第一向量输出,以及与所述LSTM单元的反向传播集合对应的第二个第一向量输出。
9.根据前述权利要求中任一项所述的方法,其中,输出指示所述输入电子通信的分类的所述分类输出包括:
将所述分类输出输出到响应动作计算***;和
由所述响应动作计算***响应于所述分类输出指示所述输入电子通信的分类是网络钓鱼泄漏通信,自动执行响应动作,其中,所述响应动作包括以下各项中的至少一项:向与授权用户相关联的计算设备发送通知,其中,所述通知指示将所述输入电子通信识别为网络钓鱼泄漏通信;自动阻止所述输入电子通信到达所述输入电子通信的目的地;将所述输入电子通信重定向至与所述输入电子通信的目的地不同的目的地;或者将所述输入电子通信的源自动报告给权威机构,以中止所述源发送电子通信的能力。
10.根据前述权利要求中任一项所述的方法,其中,所述数据处理***包括电子邮件服务提供商服务器计算***,并且其中,所述输入电子通信是通过所述电子邮件服务提供商服务器计算***路由的输入电子邮件通信。
11.一种计算机程序产品,包括计算机可读存储介质,所述计算机可读存储介质具有存储在其中的计算机可读程序,其中所述计算机可读程序当在计算设备上执行时,促使所述计算设备被专门配置为实现网络钓鱼泄漏通信识别(PECI)***,所述网络钓鱼泄漏通信识别(PECI)***至少通过以下方式操作来检测网络钓鱼泄漏通信:
由所述PECI***从数据网络接收输入电子通信;
由所述PECI***处理所述输入电子通信以提取结构符记,其中,所述结构符记表示所述输入电子通信的所述内容结构;
由所述PECI***将所述结构符记输入到通过机器学习训练操作训练的PECI***的机器学习模型中,以识别出输入到所述机器学习模型的结构符记中的网络钓鱼泄漏通信语法、以及网络钓鱼泄漏通信语法之间的关系;
由所述机器学习模型处理所述结构符记以生成用于由所述机器学习模型的分类逻辑进行处理的指示计算出的值的至少一个第一向量输出;
由所述机器学习模型的分类逻辑处理来自所述机器学习模型的所述至少一个第一向量输出,以将所述输入电子通信分类为网络钓鱼泄漏通信或非网络钓鱼泄漏通信;和
由所述机器学习模型输出指示所述输入电子通信的所述分类的分类输出。
12.根据权利要求11所述的计算机程序产品,其中,所述PECI***进一步至少通过以下方式操作来检测网络钓鱼泄漏通信:
由所述PECI***响应于从与关于一个或多个目标实体的个人信息通过其被收集的网络钓鱼网站相关联的第一计算设备以及与从所述一个或多个目标实体收集个人信息的个人信息收集点相关联的第二计算设备传输所述输入电子通信的尝试而拦截所述输入电子通信。
13.根据权利要求11或12所述的计算机程序产品,其中,所述PECI***进一步至少通过以下方式操作来检测网络钓鱼泄漏通信:
由所述PECI***处理所述输入电子通信以提取一个或多个内容特征度量,其中,所述一个或多个内容特征度量所述输入电子通信的内容的有助于在所述分类输出中区分误报或漏报的统计量度。
14.根据权利要求13所述的计算机程序产品,其中,所述一个或多个内容特征度量包括内容熵度量或文本比例度量中的至少一个,所述内容熵度量是所述输入电子通信的内容的不确定性的量度,其中所述熵随着所述输入电子通信的内容中使用的符号的种类增加而增加,所述文本比例度量是所述输入电子通信的内容中的至少一个第一类型的字符与所述输入电子通信的内容中的至少一个第二类型的字符的比例的量度。
15.根据权利要求13或14所述的计算机程序产品,其中,所述PECI***进一步至少通过以下方式操作来检测网络钓鱼泄漏通信:
由所述机器学习模型将所述至少一个第一向量输出输入到所述PECI***的级联逻辑;
由所述PECI***将所述一个或多个内容特征度量输入到所述级联逻辑;和
由所述级联逻辑将所述至少一个第一向量输出与所述一个或多个内容特征度量级联以生成被输入到所述分类逻辑的第二输出向量,其中所述分类逻辑处理来自所述机器学习模型的所述至少一个第一向量输出,以至少通过处理包括与所述一个或多个内容特征度量级联的所述至少一个第一向量输出的所述第二输出向量来将所述输入电子通信分类为网络钓鱼泄漏通信或非网络钓鱼泄漏通信。
16.根据权利要求11至15中任一项所述的计算机程序产品,其中,所述结构符记是字符串,其中,所述结构符记中的每个字符是类别指定符或数值,所述类别指定符来自类别指定符的集合,指示存在于所述输入电子通信的文本的对应部分中的内容的类型的分类,所述数值指示所述输入电子通信的内容中与所述结构符记的字符串中的先前类别指定符对应的字符的数量。
17.根据权利要求16所述的计算机程序产品,其中,所述类别指定符的集合包括:第一类别指定符,指示在所述输入电子通信的内容中的字母字符;第二类别指定符,指示在所述输入电子通信的内容中的数字字符;第三类别指定符,指示在所述输入电子通信的内容中的格式化字符串或编码;以及第四类别指定符,指示不属于所述第一类别、所述第二类别或所述第三类别中的任何类别的字符。
18.根据权利要求11至17中任一项所述的计算机程序产品,其中,所述机器学习模型是基于双向长短期记忆(LSTM)的递归神经网络(RNN),其中所述至少一个第一向量输出包括与所述基于双向LSTM的RNN中的LSTM单元的正向传播集合对应的一个第一向量输出,以及与所述LSTM单元的反向传播集合对应的第二个第一向量输出。
19.根据权利要求11至18中任一项所述的计算机程序产品,其中,输出指示所述输入电子通信的分类的所述分类输出包括:
将所述分类输出输出到响应动作计算***;和
由所述响应动作计算***响应于所述分类输出指示所述输入电子通信的分类是网络钓鱼泄漏通信,自动执行响应动作,其中,所述响应动作包括以下各项中的至少一项:向与授权用户相关联的计算设备发送通知,其中,所述通知指示将所述输入电子通信识别为网络钓鱼泄漏通信;自动阻止所述输入电子通信到达所述输入电子通信的目的地;将所述输入电子通信重定向至与所述输入电子通信的目的地不同的目的地;或者将所述输入电子通信的源自动报告给权威机构,以中止所述源发送电子通信的能力。
20.一种设备,包括:
处理器;和
耦合到所述处理器的存储器,其中所述存储器包括指令,所述指令在由所述处理器执行时致使所述处理器实施网络钓鱼泄漏通信识别(PECI)***,所述网络钓鱼泄漏通信识别(PECI)***至少通过以下方式操作来检测网络钓鱼泄漏通信:
由所述PECI***从数据网络接收输入电子通信;
由所述PECI***处理所述输入电子通信以提取结构符记,其中,所述结构符记表示所述输入电子通信的所述内容结构;
由所述PECI***将所述结构符记输入到通过机器学习训练操作训练的PECI***的机器学习模型中,以识别出输入到所述机器学习模型的结构符记中的网络钓鱼泄漏通信语法、以及网络钓鱼泄漏通信语法之间的关系;
由所述机器学习模型处理所述结构符记以生成用于由所述机器学习模型的分类逻辑进行处理的指示计算出的值的至少一个第一向量输出;
由所述机器学习模型的分类逻辑处理来自所述机器学习模型的所述至少一个第一向量输出,以将所述输入电子通信分类为网络钓鱼泄漏通信或非网络钓鱼泄漏通信;和
由所述机器学习模型输出指示所述输入电子通信的所述分类的分类输出。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/411,272 US11303674B2 (en) | 2019-05-14 | 2019-05-14 | Detection of phishing campaigns based on deep learning network detection of phishing exfiltration communications |
US16/411,272 | 2019-05-14 | ||
PCT/IB2020/054531 WO2020230053A1 (en) | 2019-05-14 | 2020-05-13 | Detection of phishing campaigns |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113812130A true CN113812130A (zh) | 2021-12-17 |
Family
ID=73245227
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202080034464.8A Pending CN113812130A (zh) | 2019-05-14 | 2020-05-13 | 网络钓鱼活动的检测 |
Country Status (6)
Country | Link |
---|---|
US (3) | US11303674B2 (zh) |
JP (1) | JP7391110B2 (zh) |
CN (1) | CN113812130A (zh) |
DE (1) | DE112020001038T5 (zh) |
GB (1) | GB2600028B (zh) |
WO (1) | WO2020230053A1 (zh) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10348761B2 (en) | 2017-12-01 | 2019-07-09 | KnowBe4, Inc. | Systems and methods for situational localization of AIDA |
US11303674B2 (en) | 2019-05-14 | 2022-04-12 | International Business Machines Corporation | Detection of phishing campaigns based on deep learning network detection of phishing exfiltration communications |
US11755734B2 (en) * | 2019-09-30 | 2023-09-12 | Mcafee, Llc | Analysis priority of objects from cross-sectional variance |
US11870807B2 (en) * | 2019-11-19 | 2024-01-09 | Jpmorgan Chase Bank, N.A. | System and method for phishing email training |
US11762990B2 (en) | 2020-04-07 | 2023-09-19 | Microsoft Technology Licensing, Llc | Unstructured text classification |
US11336688B2 (en) * | 2020-05-22 | 2022-05-17 | KnowBe4, Inc. | Systems and methods for end-user security awareness training for calendar-based threats |
US11310270B1 (en) * | 2020-10-14 | 2022-04-19 | Expel, Inc. | Systems and methods for intelligent phishing threat detection and phishing threat remediation in a cyber security threat detection and mitigation platform |
US11411905B2 (en) | 2020-10-29 | 2022-08-09 | Proofpoint, Inc. | Bulk messaging detection and enforcement |
CN112468501B (zh) * | 2020-11-27 | 2022-10-25 | 安徽大学 | 一种面向url的钓鱼网站检测方法 |
CN112733057A (zh) * | 2020-11-27 | 2021-04-30 | 杭州安恒信息安全技术有限公司 | 网络内容安全检测方法、电子装置和存储介质 |
US11861563B2 (en) * | 2021-01-15 | 2024-01-02 | Cloudflare, Inc. | Business email compromise detection system |
CN113067798B (zh) * | 2021-02-22 | 2022-04-12 | 中国科学院信息工程研究所 | Ics入侵检测方法、装置、电子设备和存储介质 |
US12003535B2 (en) * | 2021-03-01 | 2024-06-04 | Microsoft Technology Licensing, Llc | Phishing URL detection using transformers |
CN112860976B (zh) * | 2021-03-11 | 2022-08-19 | 合肥工业大学 | 一种基于多模态层次注意力机制的欺诈网站检测方法 |
CN113328987A (zh) * | 2021-04-09 | 2021-08-31 | 国网浙江省电力有限公司金华供电公司 | 基于深度学习的增量学习流量异常检测方法 |
US11971985B2 (en) * | 2021-07-23 | 2024-04-30 | Abnormal Security Corporation | Adaptive detection of security threats through retraining of computer-implemented models |
CN117033063B (zh) * | 2023-10-08 | 2024-02-09 | 浪潮(山东)计算机科技有限公司 | 一种服务器漏液处理方法、***、装置、电子设备及介质 |
US11997138B1 (en) | 2024-02-05 | 2024-05-28 | King Faisal University | Detecting and analyzing phishing attacks through artificial intelligence |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140033307A1 (en) * | 2012-07-24 | 2014-01-30 | Webroot Inc. | System and method to provide automatic classification of phishing sites |
US20170244736A1 (en) * | 2014-10-30 | 2017-08-24 | Ironscales Ltd. | Method and system for mitigating malicious messages attacks |
US20180115565A1 (en) * | 2016-10-26 | 2018-04-26 | International Business Machines Corporation | Phishing detection with machine learning |
CN108965245A (zh) * | 2018-05-31 | 2018-12-07 | 国家计算机网络与信息安全管理中心 | 基于自适应异构多分类模型的钓鱼网站检测方法和*** |
CN109101552A (zh) * | 2018-07-10 | 2018-12-28 | 东南大学 | 一种基于深度学习的钓鱼网站url检测方法 |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7756535B1 (en) * | 2006-07-07 | 2010-07-13 | Trend Micro Incorporated | Lightweight content filtering system for mobile phones |
EP2179532B1 (en) * | 2007-08-06 | 2019-07-10 | Bernard De Monseignat | System and method for authentication, data transfer, and protection against phishing |
US8695100B1 (en) * | 2007-12-31 | 2014-04-08 | Bitdefender IPR Management Ltd. | Systems and methods for electronic fraud prevention |
US20120254333A1 (en) * | 2010-01-07 | 2012-10-04 | Rajarathnam Chandramouli | Automated detection of deception in short and multilingual electronic messages |
EP2729895B1 (en) | 2011-07-08 | 2016-07-06 | The UAB Research Foundation | Syntactical fingerprinting |
US8839369B1 (en) | 2012-11-09 | 2014-09-16 | Trend Micro Incorporated | Methods and systems for detecting email phishing attacks |
US9356948B2 (en) | 2013-02-08 | 2016-05-31 | PhishMe, Inc. | Collaborative phishing attack detection |
US20150067833A1 (en) * | 2013-08-30 | 2015-03-05 | Narasimha Shashidhar | Automatic phishing email detection based on natural language processing techniques |
US10404745B2 (en) * | 2013-08-30 | 2019-09-03 | Rakesh Verma | Automatic phishing email detection based on natural language processing techniques |
WO2017049042A1 (en) | 2015-09-16 | 2017-03-23 | RiskIQ, Inc. | Identifying phishing websites using dom characteristics |
GB2566657B8 (en) * | 2016-06-30 | 2022-04-13 | Sophos Ltd | Proactive network security using a health heartbeat |
CN108259415B (zh) | 2016-12-28 | 2022-08-26 | 北京奇虎科技有限公司 | 一种邮件检测的方法及装置 |
US10284579B2 (en) * | 2017-03-22 | 2019-05-07 | Vade Secure, Inc. | Detection of email spoofing and spear phishing attacks |
CN108111478A (zh) * | 2017-11-07 | 2018-06-01 | 中国互联网络信息中心 | 一种基于语义理解的网络钓鱼识别方法和装置 |
US11303674B2 (en) | 2019-05-14 | 2022-04-12 | International Business Machines Corporation | Detection of phishing campaigns based on deep learning network detection of phishing exfiltration communications |
-
2019
- 2019-05-14 US US16/411,272 patent/US11303674B2/en active Active
-
2020
- 2020-05-13 CN CN202080034464.8A patent/CN113812130A/zh active Pending
- 2020-05-13 WO PCT/IB2020/054531 patent/WO2020230053A1/en active Application Filing
- 2020-05-13 JP JP2021567906A patent/JP7391110B2/ja active Active
- 2020-05-13 DE DE112020001038.4T patent/DE112020001038T5/de active Pending
- 2020-05-13 GB GB2117971.8A patent/GB2600028B/en active Active
-
2022
- 2022-03-14 US US17/694,132 patent/US11818170B2/en active Active
-
2023
- 2023-10-27 US US18/496,568 patent/US20240056480A1/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140033307A1 (en) * | 2012-07-24 | 2014-01-30 | Webroot Inc. | System and method to provide automatic classification of phishing sites |
US20170244736A1 (en) * | 2014-10-30 | 2017-08-24 | Ironscales Ltd. | Method and system for mitigating malicious messages attacks |
US20180115565A1 (en) * | 2016-10-26 | 2018-04-26 | International Business Machines Corporation | Phishing detection with machine learning |
CN108965245A (zh) * | 2018-05-31 | 2018-12-07 | 国家计算机网络与信息安全管理中心 | 基于自适应异构多分类模型的钓鱼网站检测方法和*** |
CN109101552A (zh) * | 2018-07-10 | 2018-12-28 | 东南大学 | 一种基于深度学习的钓鱼网站url检测方法 |
Also Published As
Publication number | Publication date |
---|---|
GB202117971D0 (en) | 2022-01-26 |
JP2022532600A (ja) | 2022-07-15 |
US20200366712A1 (en) | 2020-11-19 |
DE112020001038T5 (de) | 2022-01-27 |
US20220201037A1 (en) | 2022-06-23 |
US11818170B2 (en) | 2023-11-14 |
US20240056480A1 (en) | 2024-02-15 |
WO2020230053A1 (en) | 2020-11-19 |
GB2600028A (en) | 2022-04-20 |
JP7391110B2 (ja) | 2023-12-04 |
US11303674B2 (en) | 2022-04-12 |
GB2600028B (en) | 2023-09-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11818170B2 (en) | Detection of phishing campaigns based on deep learning network detection of phishing exfiltration communications | |
Ho et al. | Detecting and characterizing lateral phishing at scale | |
US10063584B1 (en) | Advanced processing of electronic messages with attachments in a cybersecurity system | |
US10027701B1 (en) | Method and system for reducing reporting of non-malicious electronic messages in a cybersecurity system | |
US9774626B1 (en) | Method and system for assessing and classifying reported potentially malicious messages in a cybersecurity system | |
Singh | Phishing website detection based on machine learning: A survey | |
Patil et al. | Feature-based Malicious URL and Attack Type Detection Using Multi-class Classification. | |
US20210250369A1 (en) | System and method for providing cyber security | |
Verma et al. | Email phishing: Text classification using natural language processing | |
Rathee et al. | Detection of E-mail phishing attacks–using machine learning and deep learning | |
US11888891B2 (en) | System and method for creating heuristic rules to detect fraudulent emails classified as business email compromise attacks | |
Sankhwar et al. | Email phishing: an enhanced classification model to detect malicious urls | |
Kumar Birthriya et al. | A comprehensive survey of phishing email detection and protection techniques | |
Akinyelu | Machine learning and nature inspired based phishing detection: a literature survey | |
CN116186685A (zh) | 用于识别网络钓鱼电子邮件的***和方法 | |
Ferreira | Malicious URL detection using machine learning algorithms | |
Cui et al. | Proactive detection of phishing kit traffic | |
Maleki | A behavioral based detection approach for business email compromises | |
Wood et al. | Systematic Literature Review: Anti-Phishing Defences and Their Application to Before-the-click Phishing Email Detection | |
CN114499980A (zh) | 一种钓鱼邮件检测方法、装置、设备及存储介质 | |
Mittal et al. | Phishing detection using natural language processing and machine learning | |
Marimuthu et al. | Intelligent antiphishing framework to detect phishing scam: A hybrid classification approach | |
Pitre et al. | Blockchain and Machine Learning Based Approach to Prevent Phishing Attacks | |
Yabshe | Phishing email detection by using machine learning techniques | |
EP4044503A1 (en) | System and method for creating heuristic rules to detect fraudulent emails classified as business email compromise attacks |
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 | ||
AD01 | Patent right deemed abandoned |
Effective date of abandoning: 20231013 |
|
AD01 | Patent right deemed abandoned |