CN113868365A - 对抗样本的生成方法及装置、可读存储介质 - Google Patents
对抗样本的生成方法及装置、可读存储介质 Download PDFInfo
- Publication number
- CN113868365A CN113868365A CN202111143752.XA CN202111143752A CN113868365A CN 113868365 A CN113868365 A CN 113868365A CN 202111143752 A CN202111143752 A CN 202111143752A CN 113868365 A CN113868365 A CN 113868365A
- Authority
- CN
- China
- Prior art keywords
- important
- candidate
- words
- sample
- word
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/31—Indexing; Data structures therefor; Storage structures
- G06F16/316—Indexing structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/284—Lexical analysis, e.g. tokenisation or collocates
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Machine Translation (AREA)
Abstract
本申请提供一种对抗样本的生成方法及装置、可读存储介质。对抗样本的生成方法,包括:获取钓鱼邮件样本;对所述钓鱼邮件样本进行分词处理,获得所述钓鱼邮件样本对应的多个词语;确定所述多个词语中的重要词语;生成所述重要词语对应的图片;根据所述重要词语对应的图片对所述钓鱼邮件样本中的所述重要词语进行替换,获得处理后的钓鱼邮件样本;根据所述处理后的钓鱼邮件样本生成对抗样本。该生成方法用以提高对抗样本的应用性。
Description
技术领域
本申请涉及网络安全技术领域,具体而言,涉及一种对抗样本的生成方法及装置、可读存储介质。
背景技术
钓鱼邮件是一种基于社会工程学的入侵手段,攻击者通过精心构造的邮件诱导目标用户将敏感信息泄露给自己。近年来在诸多网络安全事件中,钓鱼邮件常常作为入侵官方系统的起点。目前基于深度学习方法检测钓鱼邮件在钓鱼邮件检测中应用极为广泛,随着技术的发展,近年来对抗样本概念被提出,即在数据集中通过故意添加细微的干扰所形成的输入样本。
现有技术中,在生成对抗样本时,对钓鱼邮件中的一些词语进行简单替换,所生成的对抗样本并不能直接反映攻击者的攻击手段,使对抗样本的应用性较差。
发明内容
本申请实施例的目的在于提供一种对抗样本的生成方法及装置、可读存储介质,用以提高对抗样本的应用性和适用性。
第一方面,本申请实施例提供一种对抗样本的生成方法,包括:获取钓鱼邮件样本;对所述钓鱼邮件样本进行分词处理,获得所述钓鱼邮件样本对应的多个词语;确定所述多个词语中的重要词语;生成所述重要词语对应的图片;根据所述重要词语对应的图片对所述钓鱼邮件样本中的所述重要词语进行替换,获得处理后的钓鱼邮件样本;根据所述处理后的钓鱼邮件样本生成对抗样本。
在本申请实施例中,通过对现有的钓鱼邮件进行分析,发现钓鱼邮件会利用图片对一些重要词语进行替换,来逃避钓鱼邮件的检测。因此,通过确定钓鱼邮件样本中的重要词语,并利用重要词语对应的图片对其进行替换,并进一步生成对应的对抗样本,所生成的对抗样本能直接反映攻击者的攻击手段,提高对抗样本的应用性,例如:将其用于训练钓鱼邮件检测模型,可以提高钓鱼邮件检测模型的检测准确率。
作为一种可能的实现方式,所述确定所述多个词语中的重要词语,包括:根据所述多个词语的词性确定所述多个词语中的多个候选重要词语;确定各个所述候选重要词语的重要性得分;根据所述重要性得分从所述多个候选重要词语确定出重要词语;所述重要词语的重要性得分满足预设条件。
在本申请实施例中,先根据多个词语的词性确定出多个候选重要词语,再确定多个候选重要词语的重要性得分,最后再根据重要性得分确定出重要词语,实现重要词语的有效确定。
作为一种可能的实现方式,所述确定各个所述候选重要词语的重要性得分,包括:根据所述多个候选重要词语之间的共现关系生成候选重要词语图;其中,具有共现关系的词语之间的距离满足预设条件;基于所述候选重要词语图和预设的各个候选重要词语的重要程度值,根据预设的迭代算法确定各个所述候选重要词语的重要性得分。
在本申请实施例中,先基于共现关系生成候选重要词语图,再基于候选重要词语图和预设的各个候选重要词语的重要程度值,利用迭代算法,实现重要性得分的有效且准确的确定。
作为一种可能的实现方式,所述预设的迭代算法表示为: 其中,d为预设的阻尼系数,针对候选重要词语图中的任意一个候选重要词语,In(Vi)为所述候选重要词语图中指向该候选重要词语的候选重要词语集合,|Out(Vj)|为所述候选重要词语图中该候选重要词语所指出的候选重要词语的数目,WR(Vj)为第j个候选重要词语的重要程度值,且其对应的迭代初值为所述第j个候选重要词语预设的所述重要程度值;WR(Vi)为迭代计算后该候选重要词语的重要性得分,对应的迭代初值与WR(Vj)相同。
在本申请实施例中,通过上述迭代算法,实现各个候选重要词语的重要性得分的有效且准确的计算。
作为一种可能的实现方式,所述生成方法还包括:将所述多个候选重要词语输入到预设的钓鱼邮件检测模型中,获得所述钓鱼邮件检测模型输出的第一检测值;针对所述多个候选重要词语中的任意一个候选重要词语,将去除该候选重要词语后的多个候选重要词语输入到所述钓鱼邮件检测模型中,获得所述钓鱼邮件检测模型输出的第二检测值;基于所述第一检测值和所述第二检测值确定该候选重要词语的重要性得分影响值;根据各个所述候选重要词语的重要性得分影响值和各个所述候选重要词语的重要性得分分别确定各个所述候选重要词语的最终重要性得分。
在本申请实施例中,通过钓鱼邮件检测模型的输出结果,确定候选重要词语的重要性得分影响值,进而基于重要性得分影响值和重要性得分确定最终重要性得分,提高最终重要性得分的准确性。
作为一种可能的实现方式,各个所述候选重要词语的最终重要性得分表示为:Socre(xi)=DL(xi)+λWR(xi),其中,WR(xi)为各个所述候选重要词语的重要性得分,DL(xi)为各个所述候选重要词语的重要性得分影响值,λ为预设参数。
在本申请实施例中,基于上述关系,根据重要性得分和重要性得分影响值,实现最终重要性得分的有效计算。
作为一种可能的实现方式,所述根据所述重要性得分从所述多个候选重要词语确定出重要词语,包括:获取所述各个候选重要词语的索引得分;所述索引得分用于表征所述各个候选重要词语与最高重要性得分对应的候选重要词语之间的索引距离;根据所述索引得分和所述重要性得分从所述多个候选重要词语确定出重要词语。
在本申请实施例中,通过计算索引得分,可以便于更有效的确定出重要词语。
作为一种可能的实现方式,所述根据所述处理后的钓鱼邮件样本生成对抗样本,包括:对所述处理后的钓鱼邮件样本进行检测,判断是否能够检测到所述处理后的钓鱼邮件样本为钓鱼邮件;若不能检测到所述处理后的钓鱼邮件样本为钓鱼邮件,将所述处理后的钓鱼样本邮件作为对抗样本。
在本申请实施例中,如果处理后的钓鱼邮件样本能够被检测为钓鱼邮件,则说明其作为对抗样本的价值不大;如果不能够被检测为钓鱼邮件,则其作为对抗样本的价值较大,例如:将其作为检测模型的训练样本,提高检测模型的检测精确度;提高最终生成的对抗样本的应用性和适用性。
作为一种可能的实现方式,所述重要词语的数量为多个;所述处理后的钓鱼邮件样本中替换的重要词语为多个所述重要词语中的第一重要词语;所述生成方法还包括:若能够检测到所述处理后的钓鱼邮件样本为钓鱼邮件,根据多个所述重要词语中的第二重要词语对应的图片对所述第二重要词语进行替换,获得再次处理后的钓鱼邮件样本;根据所述再次处理后的钓鱼邮件样本生成对抗样本。
在本申请实施例中,基于多个重要词语,先利用其中的第一重要词语进行替换,如果替换后的钓鱼邮件样本不能作为对抗样本,再利用其他重要词语继续进行替换,并生成对抗样本,实现对抗样本的有效生成。
第二方面,本申请实施例提供一种对抗样本的生成装置,包括:用于实现第一方面以及第一方面的任意一种可能的实现方式中所述的对抗样本的生成方法的各个功能模块。
第三方面,本申请实施例提供一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被计算机运行时,执行如第一方面以及第一方面的任意一种可能的实现方式中所述的对抗样本的生成方法。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的对抗样本的生成方法的流程图;
图2为本申请实施例提供的候选重要词语图的示例图;
图3为本申请实施例提供的对抗样本的生成装置的结构示意图。
图标:300-对抗样本的生成装置;310-获取模块;320-处理模块。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
本申请实施例提供的技术方案可以应用于各种需要生成对抗样本的应用场景中,该对抗样本为钓鱼邮件的对抗样本。应用场景,例如:需要对抗样本进行钓鱼邮件检测模型的训练的应用场景;再例如:需要基于对抗样本的分析制定钓鱼邮件的安全防护措施的应用场景等。
基于上述应用场景,本申请实施例所提供的技术方案对应的硬件运行环境可以是服务器、客户端等,在此不作限定。
接下来请参照图1,为本申请实施例提供的对抗样本的生成方法的流程图,该生成方法包括:
步骤110:获取钓鱼邮件样本。
步骤120:对钓鱼邮件样本进行分词处理,获得钓鱼邮件样本对应的多个词语。
步骤130:确定多个词语中的重要词语。
步骤140:生成重要词语对应的图片。
步骤150:根据重要词语对应的图片对钓鱼邮件样本中的重要词语进行替换,获得处理后的钓鱼邮件样本。
步骤160:根据处理后的钓鱼邮件样本生成对抗样本。
在本申请实施例中,通过对现有的钓鱼邮件进行分析,发现钓鱼邮件会利用图片对一些重要词语进行替换,来逃避钓鱼邮件的检测。因此,通过确定钓鱼邮件样本中的重要词语,并利用重要词语对应的图片对其进行替换,并进一步生成对应的对抗样本,所生成的对抗样本能直接反映攻击者的攻击手段,提高对抗样本的应用性,例如:将其用于训练钓鱼邮件检测模型,可以提高钓鱼邮件检测模型的检测准确率。
接下来对该对抗样本的生成方法的详细实施方式进行介绍。
在步骤110中,钓鱼邮件样本可以是数据库中已被确定为钓鱼邮件的邮件。也可以是,通过搜集大量的邮件,然后利用钓鱼邮件检测模型对这些邮件进行检测,所确定出的钓鱼邮件。钓鱼邮件样本的数量可以是一个,也可以是多个,如果是多个,则每一个钓鱼邮件样本都按照步骤120-步骤160的处理方式进行处理即可。
在本申请实施例中,钓鱼邮件检测模型可以是LSTM(Long Short-Term Memory,长短期记忆)模型,LSTM模型已广泛应用于钓鱼邮件的检测,因此,在此不对该模型如何实现钓鱼邮件的检测进行详细的介绍。
在获得钓鱼邮件样本之后,在步骤120中,对钓鱼邮件样本进行分词处理,获得钓鱼邮件样本对应的多个词语。其中,分词处理可以采用成熟的分词技术实现,在此不作详细介绍。
举例来说,假设钓鱼邮件样本中包括文本:我们正在审核您的账户,则对应的分词结果(即该句段对应的多个词语),包括:“我们”,“正在”,“审核”,“您”,“的”,“账户”。
在获得钓鱼邮件样本对应的多个词语后,在步骤130中,确定多个词语中的重要词语。
作为第一种可选的实施方式,多个词语中的重要词语可以是预设的重要词语库中的词语。在这种实施方式中,通过对大量的钓鱼邮件进行分析,确定出其中被作为混淆词语或者替换词语等的重要词语,形成重要词语库。在需要确定重要词语时,只需将多个词语与词库中的词语进行匹配,如果匹配到词库中对应的词语,则该词语可确定为重要词语。
作为第二种可选的实施方式,步骤130包括:根据多个词语的词性确定多个词语中的多个候选重要词语;确定各个候选重要词语的重要性得分;根据重要性得分从多个候选重要词语确定出重要词语;重要词语的重要性得分满足预设条件。
其中,多个词语的词性可以通过预设的词库表确定。在预设的词库表中,包括多个词语和多个词语分别对应的词性,将待判断词性的词语与词库表中的词语进行匹配,将与待判断词性的词语匹配的词语对应的词性确定为待判断词性的词语的词性。预设的词库表可以是现有技术中已有的词库表;也可以是基于现有技术中已有的词库表进行自定义所获得的词库表,在本申请实施例中不作限定。
进而,候选重要词语的词性可以是预设的指定词性,例如:名词、动词等,而停用词、其他无关词性均不属于候选重要词语的词性。基于此,可以按照预设的指定词性和各个词语的词性对各个词语进行筛选,确定出其中的候选重要词语。
在确定出多个候选重要词语之后,确定各个候选重要词语的重要性得分。在本申请实施例中,基于TextRank方法,来计算候选重要词语的重要性得分,该方法通过词之间的相邻关系构建网络,然后利用构建的网络来计算重要性得分。
基于该方法,作为一种可选的实施方式,确定各个候选重要词语的重要性得分,包括:根据多个候选重要词语之间的共现关系生成候选重要词语图;其中,具有共现关系的词语之间的距离满足预设条件;基于候选重要词语图和预设的各个候选重要词语的重要程度值,根据预设的迭代算法确定各个候选重要词语的重要性得分。
其中,预设条件可以是词语之间的距离条件,例如:相邻词语,间隔一个词语,间隔两个词语等。
在本申请实施例中,基于滑动窗口确定词语之间的共现关系。滑动窗口的长度可以根据候选重要词语的数量以及预设的词语距离条件设置。例如:在候选重要词语的数量较多,且满足预设的词语距离条件的情况下,滑动窗口的长度可以稍微长一些。在候选重要词语的数量较少,且预设的词语距离条件所要求的距离较小的情况下,则滑动窗口的长度可以稍微短一些。
进一步地,基于滑动窗口,如果两个候选重要词语在同一个滑动窗口中共现,则这两个候选重要词语具有共现关系。
作为一种可选的实施方式,滑动窗口的长度为5。在这种实施方式中,每个滑动窗口中,所包括的词语应当是,当前所针对的词语,和与当前所针对的词语之间的词语距离为2的词语。
举例来说,假设钓鱼邮件样本为:我们正在审核您的账户。请在14天内通过我们的安全文件上传页面所要求的信息:https://sdu.amazon.co.uk。如果我们再14天内没有收到这些信息,则可能关闭您的账户,如果您有任何疑问,可以随时联系我们。
基于上述的钓鱼邮件样本,假设获得的分词结果为:[“我们”,“正在”,“审核”,“您”,“账户”,“请”,“天”,“通过”,”我们”,“安全”,”文件”,“上传”,“页面”,“要求”,“信息”,“https”,“sdu”,“amazon”,“co”,“uk”,“如果”,“我们”,“天”,“没有”,“收到”,“信息”,“关闭”,“您”,“账户”,“疑问”,“联系”,“我们”]。
假设滑动窗口的长度为5,预设条件为间隔2个词语之内,则其中的部分滑动窗口结果为:[“我们”,“正在”,“审核”,“您”,“账户”];[“正在”,“审核”,“您”,“账户”,“请”];[“审核”,“您”,“账户”,“请”,“天”];依次类推。
如果滑动窗口的长度为其他长度,以及对共现关系的词语之间的距离的条件为其他条件,参照上述举例的实施方式,也可以确定候选重要词语之间的共现关系。
除了上述滑动窗口的实施方式,在实际应用时,也可以直接按照预设的距离条件确定与各个候选重要词语具有共现关系的候选重要词语,实现共现关系的确定;或者也可以采用其他实施方式,在本申请实施例中不作限定。
在确定候选重要词语的共现关系之后,将候选重要词语作为节点,并将候选重要词语之间的共现关系作为节点之间的边,即可生成候选重要词语图。
作为举例,基于上述的部分滑动窗口的结果,所生成的候选重要词语图如图2所示,可以看到,具有共现关系的候选重要词语之间构建了相应的连接关系。
在本申请实施例中,利用迭代算法对各个候选重要词语的重要性得分进行确定,而迭代算法通常需要设置响应的迭代初值,因此,还需要预设各个候选重要词语的重要程度值,以实现迭代算法。该重要程度值对最终的迭代结果并不会产生影响,因此,其预设值可以是任意的初值,例如可以是1。
作为一种可选的实施方式,预设的迭代算法表示为: 其中,d为预设的阻尼系数,针对候选重要词语图中的任意一个候选重要词语,In(Vi)为候选重要词语图中指向该候选重要词语的候选重要词语集合,|Out(Vj)|为候选重要词语图中该候选重要词语所指出的候选重要词语的数目,WR(Vj)为第j个候选重要词语的重要程度值,且其对应的迭代初值为第j个候选重要词语预设的重要程度值;WR(Vi)为迭代计算后该候选重要词语的重要性得分,对应的迭代初值与WR(Vj)相同。
其中,预设的阻尼系数通常为0.85,当然也可以是其他值,在此不作限定。
In(Vi)是一个集合,vi为其中任意一个词,初始的WR(Vi)=WR(Vj)=1(即迭代初值),当i为需要计算的词时,j为一个循环,其中包括i。右侧整体计算时,左侧的WR(Vi)为WR(Vj)中的一项。
举例来说,假设j为2,i为1,|Out(V1)|=|Out(V1)|=4时,则:第一次计算结果:WR(V1)=0.575;第二次计算结果:按照这种方式一直迭代,直至WR(V1)的变化小于阈值时,说明WR(V1)收敛,此时的WR(V1)值便为最终的重要性得分计算结果。
在本申请实施例中,通过上述迭代算法,实现各个候选重要词语的重要性得分的有效且准确的计算。
通过上述方式计算出的重要性得分,可作为候选重要词语的最终重要性得分;也可以不是最终重要性得分。
如果不是最终重要性得分,作为一种可选的实施方式,该方法还包括:将多个候选重要词语输入到预设的钓鱼邮件检测模型中,获得钓鱼邮件检测模型输出的第一检测值;针对多个候选重要词语中的任意一个候选重要词语,将去除该候选重要词语后的多个候选重要词语输入到钓鱼邮件检测模型中,获得钓鱼邮件检测模型输出的第二检测值;基于第一检测值和第二检测值确定该候选重要词语的重要性得分影响值;根据各个候选重要词语的重要性得分影响值和各个候选重要词语的重要性得分分别确定各个候选重要词语的最终重要性得分。
在本申请实施例中,通过钓鱼邮件检测模型的输出结果,确定候选重要词语的重要性得分影响值,进而基于重要性得分影响值和重要性得分确定最终重要性得分,提高最终重要性得分的准确性。
其中,预设的钓鱼邮件检测模型可以是前述实施例中介绍过的LSTM模型。基于候选重要词语对应的词集,针对各个候选重要词语,将包含该候选重要词语的集合输入到钓鱼邮件检测模型中,可获得一个检测值;然后再将去除该候选重要词语的集合输入到钓鱼邮件检测模型中,可获得一个检测值。
在本申请实施例中,重要性得分影响值可以是第一检测值和第二检测值的差值。
作为一种可选的实施方式,各个候选重要词语的最终重要性得分表示为:Socre(xi)=DL(xi)+λWR(xi),其中,WR(xi)为各个候选重要词语的重要性得分,DL(xi)为各个候选重要词语的重要性得分影响值,λ为预设参数。
其中,λ可以理解为超参数,其取值可以是0-1之间的任意一个值,在此不作限定。
在本申请实施例中,重要词语的重要性得分应当满足预设条件,例如:重要性得分大于预设值,或者重要性得分的排名在前多少名等,因此,可以将重要性得分大于预设值,或者重要性得分排名在前的候选重要词语确定为重要词语。
但是,不同的候选重要词语的重要性得分可能相同,此时,如果单纯的利用重要性得分进行重要词语的确定,其结果可能并不是很准确。
为了避免相同的重要性得分对最终的结果的影响,在本申请实施例中,还可以引入各个候选重要词语的索引得分。
作为一种可选的实施方式,根据重要性得分从多个候选重要词语确定出重要词语,包括:获取各个候选重要词语的索引得分;索引得分用于表征各个候选重要词语与最高重要性得分对应的候选重要词语之间的索引距离;根据索引得分和重要性得分从多个候选重要词语确定出重要词语。
其中,候选重要词语的索引得分可以是候选重要词语与最高重要性得分对应的候选重要词语之间的索引距离。其中,索引距离即词语的索引位置之间的距离。
具体来说,将所有的候选重要词语进行排序,每个词的索引位置D=[d1,d2,d3,……dn],第i个词的索引得分记为Scored(i)。当存在一词多索引时选择得分最小值记为索引得分,因此:Scored(i)=(di-d(Scoremax))min。
其中,一词多索引指的是:同一个候选重要词语,其存在着不同的索引位置,例如:“我”这个词语,具有位置1(d1)和位置3(d3)两个位置,则为一词多索引。
举例来说,假设第2个候选重要词语(即索引位置为2),其存在着与之重要性得分相同的其他候选重要词语,与之重要性得分相同的多个候选重要词语中,重要性得分最高的候选重要词语为第5个候选重要词语(即索引位置为5),且该第2个候选重要词语不存在一词多索引,则该第2个候选重要词语的索引得分为3。如果,该候选重要词语存在一词多索引,则计算各个索引位置与第5个候选重要词语之间的距离,然后将其中的最小距离作为该第2个候选重要词语的索引得分。
基于各个候选重要词语的索引得分,在确定重要词语时,如果需要对候选重要词语进行排序,针对相同的重要性得分的候选重要词语,按照索引得分从低到高的顺序排序。
在本申请实施例中,通过计算索引得分,可以便于更有效的确定出重要词语。
可以理解,步骤130中最终确定出的重要词语的数量通常为多个。
在步骤140中,可以仅基于当前需要替换的重要词语生成对应的图片,也可以基于各个重要词语均生成对应的图片,以便于后续的应用。
作为一种可选的实施方式,在步骤140中,利用python的pygame库可以生成重要词语对应图像,并调节大小、字体、颜色等。
进而,在步骤150中,可以先对重要性得分最高的重要词语进行替换,然后再根据替换结果决定是否需要继续利用其他重要词语进行替换。
在本申请实施例中,可以预设一个最大替换次数,该最大替换次数用于限定最多可以对钓鱼邮件样本替换几次(即进行几次重要词语的替换),例如:假设最大替换次数为3,则只能对其中的三个重要词语进行替换。
替换结果是否符合要求,可以通过对处理后的钓鱼邮件样本进行检测实现。
作为一种可选的实施方式,步骤160包括:对处理后的钓鱼邮件样本进行检测,判断是否能够检测到处理后的钓鱼邮件样本为钓鱼邮件;若不能检测到处理后的钓鱼邮件样本为钓鱼邮件,将处理后的钓鱼样本邮件作为对抗样本。
其中,检测钓鱼邮件样本是否为钓鱼邮件可以通过前述实施例中介绍的LSTM模型实现。
在这种实施方式中,如果处理后的钓鱼邮件样本能够被检测为钓鱼邮件,则说明其作为对抗样本的价值不大;如果不能够被检测为钓鱼邮件,则其作为对抗样本的价值较大,例如:将其作为检测模型的训练样本,提高检测模型的检测精确度;提高最终生成的对抗样本的应用性和适用性。
若能够检测到处理后的钓鱼邮件样本为钓鱼邮件,说明此次的替换是无效的,此时可以继续替换,假设第一次替换的是第一重要词语,则此时可以对与第一重要词语不相同的第二重要词语进行替换。例如:第一重要词语为重要性得分最高的重要词语,而第二重要词语为重要性得分第二高的重要词语。
因此,作为一种可选的实施方式,若能够检测到处理后的钓鱼邮件样本为钓鱼邮件,根据多个重要词语中的第二重要词语对应的图片对第二重要词语进行替换,获得再次处理后的钓鱼邮件样本;根据再次处理后的钓鱼邮件样本生成对抗样本。
根据再次处理后的钓鱼邮件样本生成对抗样本的实施方式与前述实施例中介绍的相同,所不同的是,如果钓鱼邮件样本对应的重要词语替换次数大于预设的替换次数,且仍然能够检测到钓鱼邮件样本为钓鱼邮件,则该钓鱼邮件样本将不作为对抗样本,此时可继续对其他的钓鱼邮件样本进行处理。
在本申请实施例中,基于多个重要词语,先利用其中的第一重要词语进行替换,如果替换后的钓鱼邮件样本不能作为对抗样本,再利用其他重要词语继续进行替换,并生成对抗样本,实现对抗样本的有效生成。
在步骤160中所生成的对抗样本可以有多种应用,作为一种可选的应用方式,将对抗样本与已有的其他训练样本一起作为钓鱼邮件检测模型的训练数据集,对钓鱼邮件检测模型进行训练,训练好的钓鱼邮件检测模型可以识别出利用图片对重要词语进行替换所得到的钓鱼邮件,提高钓鱼邮件检测模型的精度。
作为另一种可选的应用方式,还可以对对抗样本进行分析,以制定这种对抗样本对应的钓鱼邮件的安全防护措施,例如:当检测到与对抗样本相同的钓鱼邮件,立马对其进行屏蔽,并将对应的发送方的所有邮件进行屏蔽,以提高安全性。
或者,对抗样本也可以有其他的应用,在本申请实施例中仅作示例性介绍,不构成其应用方式的限定。
基于同一发明构思,请参照图3,本申请实施例中还提供一种对抗样本的生成装置300,包括:获取模块310和处理模块320。
获取模块310用于:获取钓鱼邮件样本。处理模块320用于:对所述钓鱼邮件样本进行分词处理,获得所述钓鱼邮件样本对应的多个词语;确定所述多个词语中的重要词语;生成所述重要词语对应的图片;根据所述重要词语对应的图片对所述钓鱼邮件样本中的所述重要词语进行替换,获得处理后的钓鱼邮件样本;根据所述处理后的钓鱼邮件样本生成对抗样本。
在本申请实施例中,处理模块320具体用于:根据所述多个词语的词性确定所述多个词语中的多个候选重要词语;确定各个所述候选重要词语的重要性得分;根据所述重要性得分从所述多个候选重要词语确定出重要词语;所述重要词语的重要性得分满足预设条件。
在本申请实施例中,处理模块320具体用于:根据所述多个候选重要词语之间的共现关系生成候选重要词语图;其中,具有共现关系的词语之间的距离满足预设条件;基于所述候选重要词语图和预设的各个候选重要词语的重要程度值,根据预设的迭代算法确定各个所述候选重要词语的重要性得分。
在本申请实施例中,处理模块320还用于:将所述多个候选重要词语输入到预设的钓鱼邮件检测模型中,获得所述钓鱼邮件检测模型输出的第一检测值;针对所述多个候选重要词语中的任意一个候选重要词语,将去除该候选重要词语后的多个候选重要词语输入到所述钓鱼邮件检测模型中,获得所述钓鱼邮件检测模型输出的第二检测值;基于所述第一检测值和所述第二检测值确定该候选重要词语的重要性得分影响值;根据各个所述候选重要词语的重要性得分影响值和各个所述候选重要词语的重要性得分分别确定各个所述候选重要词语的最终重要性得分。
在本申请实施例中,处理模块320具体用于:获取所述各个候选重要词语的索引得分;所述索引得分用于表征所述各个候选重要词语与最高重要性得分对应的候选重要词语之间的索引距离;根据所述索引得分和所述重要性得分从所述多个候选重要词语确定出重要词语。
在本申请实施例中,处理模块320具体用于:对所述处理后的钓鱼邮件样本进行检测,判断是否能够检测到所述处理后的钓鱼邮件样本为钓鱼邮件;若不能检测到所述处理后的钓鱼邮件样本为钓鱼邮件,将所述处理后的钓鱼样本邮件作为对抗样本。
在本申请实施例中,处理模块320还用于:若能够检测到所述处理后的钓鱼邮件样本为钓鱼邮件,根据多个所述重要词语中的第二重要词语对应的图片对所述第二重要词语进行替换,获得再次处理后的钓鱼邮件样本;根据所述再次处理后的钓鱼邮件样本生成对抗样本。
对抗样本的生成装置300与对抗样本的生成方法对应,各个功能模块与对抗样本的生成方法的各个步骤对应,因此,各个功能模块的实施方式参照各个步骤的实施方式,在此不再重复介绍。
基于同一发明构思,本申请实施例还提供一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被计算机运行时,执行前述实施例中介绍的对抗样本的生成方法。
在本申请所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
另外,作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
再者,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。
以上所述仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (11)
1.一种对抗样本的生成方法,其特征在于,包括:
获取钓鱼邮件样本;
对所述钓鱼邮件样本进行分词处理,获得所述钓鱼邮件样本对应的多个词语;
确定所述多个词语中的重要词语;
生成所述重要词语对应的图片;
根据所述重要词语对应的图片对所述钓鱼邮件样本中的所述重要词语进行替换,获得处理后的钓鱼邮件样本;
根据所述处理后的钓鱼邮件样本生成对抗样本。
2.根据权利要求1所述的生成方法,其特征在于,所述确定所述多个词语中的重要词语,包括:
根据所述多个词语的词性确定所述多个词语中的多个候选重要词语;
确定各个所述候选重要词语的重要性得分;
根据所述重要性得分从所述多个候选重要词语确定出重要词语;所述重要词语的重要性得分满足预设条件。
3.根据权利要求2所述的生成方法,其特征在于,所述确定各个所述候选重要词语的重要性得分,包括:
根据所述多个候选重要词语之间的共现关系生成候选重要词语图;其中,具有共现关系的词语之间的距离满足预设条件;
基于所述候选重要词语图和预设的各个候选重要词语的重要程度值,根据预设的迭代算法确定各个所述候选重要词语的重要性得分。
5.根据权利要求3所述的生成方法,其特征在于,所述生成方法还包括:
将所述多个候选重要词语输入到预设的钓鱼邮件检测模型中,获得所述钓鱼邮件检测模型输出的第一检测值;
针对所述多个候选重要词语中的任意一个候选重要词语,将去除该候选重要词语后的多个候选重要词语输入到所述钓鱼邮件检测模型中,获得所述钓鱼邮件检测模型输出的第二检测值;基于所述第一检测值和所述第二检测值确定该候选重要词语的重要性得分影响值;
根据各个所述候选重要词语的重要性得分影响值和各个所述候选重要词语的重要性得分分别确定各个所述候选重要词语的最终重要性得分。
6.根据权利要求5所述的生成方法,其特征在于,各个所述候选重要词语的最终重要性得分表示为:Socre(xi)=DL(xi)+λWR(xi),其中,WR(xi)为各个所述候选重要词语的重要性得分,DL(xi)为各个所述候选重要词语的重要性得分影响值,λ为预设参数。
7.根据权利要求2所述的生成方法,其特征在于,所述根据所述重要性得分从所述多个候选重要词语确定出重要词语,包括:
获取各个候选重要词语的索引得分;所述索引得分用于表征所述各个候选重要词语与最高重要性得分之间的索引距离;
根据所述索引得分和所述重要性得分从所述多个候选重要词语确定出重要词语。
8.根据权利要求1所述的生成方法,其特征在于,所述根据所述处理后的钓鱼邮件样本生成对抗样本,包括:
对所述处理后的钓鱼邮件样本进行检测,判断是否能够检测到所述处理后的钓鱼邮件样本为钓鱼邮件;
若不能检测到所述处理后的钓鱼邮件样本为钓鱼邮件,将所述处理后的钓鱼样本邮件作为对抗样本。
9.根据权利要求8所述的生成方法,其特征在于,所述重要词语的数量为多个;所述处理后的钓鱼邮件样本中替换的重要词语为多个所述重要词语中的第一重要词语;所述生成方法还包括:
若能够检测到所述处理后的钓鱼邮件样本为钓鱼邮件,根据多个所述重要词语中的第二重要词语对应的图片对所述第二重要词语进行替换,获得再次处理后的钓鱼邮件样本;
根据所述再次处理后的钓鱼邮件样本生成对抗样本。
10.一种对抗样本的生成装置,其特征在于,包括:
获取模块,用于获取钓鱼邮件样本;
处理模块,用于:
对所述钓鱼邮件样本进行分词处理,获得所述钓鱼邮件样本对应的多个词语;
确定所述多个词语中的重要词语;
生成所述重要词语对应的图片;
根据所述重要词语对应的图片对所述钓鱼邮件样本中的所述重要词语进行替换,获得处理后的钓鱼邮件样本;
根据所述处理后的钓鱼邮件样本生成对抗样本。
11.一种可读存储介质,其特征在于,所述可读存储介质上存储有计算机程序,所述计算机程序被计算机运行时,执行如权利要求1-9任一项所述的对抗样本的生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111143752.XA CN113868365A (zh) | 2021-09-28 | 2021-09-28 | 对抗样本的生成方法及装置、可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111143752.XA CN113868365A (zh) | 2021-09-28 | 2021-09-28 | 对抗样本的生成方法及装置、可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113868365A true CN113868365A (zh) | 2021-12-31 |
Family
ID=78991825
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111143752.XA Pending CN113868365A (zh) | 2021-09-28 | 2021-09-28 | 对抗样本的生成方法及装置、可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113868365A (zh) |
-
2021
- 2021-09-28 CN CN202111143752.XA patent/CN113868365A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111027069B (zh) | 恶意软件家族检测方法、存储介质和计算设备 | |
Peng et al. | Bit-level n-gram based forensic authorship analysis on social media: Identifying individuals from linguistic profiles | |
US11762990B2 (en) | Unstructured text classification | |
Layton et al. | Automated unsupervised authorship analysis using evidence accumulation clustering | |
CN109872162B (zh) | 一种处理用户投诉信息的风控分类识别方法及系统 | |
CN110309304A (zh) | 一种文本分类方法、装置、设备及存储介质 | |
JP5744228B2 (ja) | インターネットにおける有害情報の遮断方法と装置 | |
US20130138428A1 (en) | Systems and methods for automatically detecting deception in human communications expressed in digital form | |
US20150356091A1 (en) | Method and system for identifying microblog user identity | |
CN110516210B (zh) | 文本相似度的计算方法和装置 | |
CN112613293B (zh) | 摘要生成方法、装置、电子设备及存储介质 | |
CN109918621A (zh) | 基于数字指纹和语义特征的新闻文本侵权检测方法与装置 | |
CN112559747A (zh) | 事件分类处理方法、装置、电子设备和存储介质 | |
CN116402166B (zh) | 一种预测模型的训练方法、装置、电子设备及存储介质 | |
CN110298024A (zh) | 涉密文档的检测方法、装置及存储介质 | |
Imam et al. | OCR post-correction for detecting adversarial text images | |
CN111866004A (zh) | 安全评估方法、装置、计算机系统和介质 | |
WO2021160822A1 (en) | A method for linking a cve with at least one synthetic cpe | |
Wang et al. | Cyber threat intelligence entity extraction based on deep learning and field knowledge engineering | |
CN116089584A (zh) | 事件抽取的方法、装置、电子设备和介质 | |
CN111930945A (zh) | 一种Tor隐藏服务非法内容分类方法 | |
CN111708870A (zh) | 基于深度神经网络的问答方法、装置及存储介质 | |
Kayhan et al. | Cyber threat detection: Unsupervised hunting of anomalous commands (UHAC) | |
CN110020593A (zh) | 信息处理方法及装置、介质及计算设备 | |
US20230412633A1 (en) | Apparatus and Method for Predicting Malicious Domains |
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 |