具体实施方式
由于钓鱼网站通常通过仿冒合法网站的URL地址,伪装成合法网站骗取用户的银行账号和密码等私人信息,例如钓鱼网站的URL地址是将合法网站的URL地址中的字母“I”用数字“1”替换,或者将合法网站的字母“O”用数字“0”替换,得到仿冒合法网站的URL地址,用户如果不仔细观察钓鱼网站的URL地址,就会将钓鱼网站的URL地址误以为是合法网站的URL地址登录,因此本发明实施例中将待识别的网站的URL地址,与设定的合法网站的URL地址进行对比,确定两者的相似度,根据相似度判断该待识别的网站是否为钓鱼网站。
下面结合说明书附图,对本发明实施例进行详细描述。
图1为本发明实施例提供的识别钓鱼网站的过程,具体包括以下步骤:
S101:提取终端与网络侧交互的信息中所携带的每个URL地址,作为每个待识别的URL地址。
在本发明实施例中,由于用户通过终端与网络侧进行信息交互时,交互的信息中可能会携带网站的URL地址。例如,用户通过终端登录某个网站时,必然会在与网络侧交互的信息中携带所要登录的网站的URL地址,或者,用户使用某个即时通信软件,通过网络侧与其他用户进行通信时,用户通过网络侧向该其他用户发送的信息中,也有可能携带某个网站的URL地址。因此识别装置获得待识别的URL地址的方法可以为,提取终端与网络侧交互的信息中携带的每个URL地址,作为每个待识别的URL地址。
S102:针对提取的每个URL地址,确定该URL地址对应的页面的页面类型,在判断出该URL地址对应的页面的页面类型为设定的页面类型时,提取该URL地址对应的页面中包含的每个嵌入URL地址,也作为每个待识别的URL地址。
在本发明实施例中,由于不法分子很有可能会在诸如论坛或博客的URL地址对应的页面中编辑一些钓鱼网站的URL地址,作为该页面中的嵌入URL地址,并诱使用户点击该嵌入URL地址,以达到窃取用户的私人信息和传播钓鱼网站的URL地址的目的。例如,不法分子在某个合法网站的博客中,编辑了这样一些内容:“详情请点击下面的链接观看,http://123.456.7.89。”而这个http://123.456.7.89正是钓鱼网站的URL地址,但是如果只识别该合法网站的博客的URL地址,必然不会识别出该博客的URL地址是钓鱼网站的URL地址,但是该博客中确实存在被嵌入的钓鱼网站的URL地址。
因此为了提高识别钓鱼网站的URL地址的准确性,识别装置针对提取出的终端与网络侧交互的信息中携带的每个URL地址,还要判断该URL地址对应的页面的页面类型是否为设定的页面类型,其中,该设定的页面类型包括论坛、博客以及其他可以由用户编辑,并具有传播信息的功能的页面类型。当确定该URL地址对应的页面的页面类型为设定的页面类型时,将该URL地址对应的页面中包含的每个嵌入URL地址也作为每个待识别的URL地址进行后续的识别。其中,可以根据该URL地址中包含的某些域名字段确定该URL地址对应的页面的页面类型,例如当页面类型为论坛页面类型时,该URL地址中会包含bbs域名字段,当页面类型为博客页面类型时,该URL地址中会包含blog域名字段,识别装置则可以根据这些域名字段确定该URL地址对应的页面的页面类型。
S103:针对每个待识别的URL地址,将该待识别的URL地址的属性信息,与设定的非钓鱼网站的URL地址的属性信息进行对比,确定该待识别的URL地址与设定的URL地址的第一相似度。
在本发明实施例中,设定的非钓鱼网站的URL地址为合法网站的URL地址,确定该待识别的URL地址与设定的URL地址的第一相似度,也即确定该待识别的URL地址与设定的该合法网站的URL地址的第一相似度,检测该待识别的URL地址是否为仿冒该合法网站的钓鱼网站。其中,设定的URL地址可以为多个,当设定的URL地址为多个时,则将该待识别的URL地址的属性信息,与设定的每个URL地址的属性信息进行对比,确定该待识别的URL地址与设定的每个URL地址的第一相似度,也即针对设定的每个合法网站的URL地址,检测该待识别的URL地址是否为仿冒该合法网站的钓鱼网站。
并且,在本发明实施例中,该待识别的URL地址的属性信息包括:该待识别的URL地址对应的域名信息和站点名称信息中的至少一种。当该待识别的URL地址的属性信息为该待识别的URL地址对应的域名信息和站点名称信息时,将该待识别的URL地址对应的域名信息,与设定的URL地址对应的域名信息进行对比,确定该待识别的URL地址与设定的URL地址的域名相似度,并将该待识别的URL地址对应的站点名称信息,与设定的URL地址对应的站点名称信息进行对比,确定该待识别的URL地址与设定的URL地址的站点名称相似度,将确定的域名相似度与设定的第一加权值的乘积,以及确定的站点名称相似度与设定的第二加权值的乘积的和值,确定为待识别的URL地址与设定的URL地址的第一相似度。其中,第一加权值和第二加权值可以根据需要进行设定。
S104:当判断确定的第一相似度在设定范围内,且该待识别的URL地址与设定的URL地址不相同时,将该待识别的URL地址识别为钓鱼网站的URL地址。
也即,判断确定的第一相似度是否在设定范围内,并判断该待识别的URL地址与设定的URL地址是否相同,上述两个判断结果都为是时,确定该待识别的URL地址为钓鱼网站的URL地址,否则,确定该待识别的URL地址为非钓鱼网站的URL地址。其中,当确定该待识别的URL地址为钓鱼网站的URL地址时,将该确定为钓鱼网站的URL地址添加到黑名单中,以拒绝用户连接到该钓鱼网站的URL地址。
在上述过程中,识别装置获得待识别的URL地址,将该待识别的URL地址的属性信息与设定的非钓鱼网站的URL地址的属性信息进行对比,确定该待识别的URL地址与设定的URL地址的第一相似度,当确定的第一相似度在设定范围内,且该待识别的URL地址与设定的URL地址不相同时,确定该待识别的URL地址为钓鱼网站的URL地址。由于本发明实施例中将待识别的URL地址与设定的URL地址进行对比,确定该待识别的URL地址与设定的URL地址的第一相似度,根据第一相似度判断该待识别的URL地址是否为钓鱼网站的URL地址,实现了自动识别钓鱼网站的方法,而无需人工识别,提高了识别钓鱼网站的效率。
并且在上述过程中,识别装置当确定获得的待识别的URL地址对应的页面的页面类型为设定的页面类型时,例如论坛或博客等类型,则提取该页面中包含的嵌入URL地址,也作为待识别的URL地址进行识别,提高了识别钓鱼网站的准确性。
在本发明实施例中,为了进一步提高识别钓鱼网站的效率,识别装置在将待识别的URL地址的属性信息,与设定的URL地址的属性信息进行对比之前,还要根据识别日志中记录的每个URL地址,确定该待识别的URL地址未记录在该识别日志中。也即,在将待识别的URL地址的属性信息,与设定的URL地址的属性信息进行对比之前,判断识别日志中是否记录了该待识别的URL地址,如果记录了,则不再对该待识别的URL地址进行识别,否则继续识别该待识别的URL地址,将该待识别的URL地址的属性信息与设定的URL地址的属性信息进行对比。
其中,识别装置对某个待识别的URL地址进行识别后,将该待识别的URL地址保存在识别日志中。
在本发明实施例中,为了进一步提高识别钓鱼网站的效率,识别装置在将待识别的URL地址的属性信息,与设定的URL地址的属性信息进行对比之前,还要确定该待识别的URL地址为非可信任URL地址。具体过程为,根据保存的可信任URL地址列表中记录的每个可信任URL地址,确定该待识别的URL地址未记录在该可信任URL地址列表中。其中,该可信任URL地址列表中记录了每个可信任的合法网站的URL地址。也即,在将待识别的URL地址的属性信息,与设定的URL地址的属性信息进行对比之前,判断该待识别的URL地址是否记录在可信任URL地址列表中,若判断结果为是,则不再对该待识别的URL地址进行识别,否则继续识别该待识别的URL地址,将该待识别的URL地址的属性信息与设定的URL地址的属性信息进行对比。
当然,也可以将判断待识别的URL地址是否记录在识别日志中,以及判断待识别的URL地址是否记录在可信任URL地址列表中相结合,来进一步提高识别钓鱼网站的效率。即,在获得每个待识别的URL地址后,对获得的每个待识别的URL地址进行筛选,筛选出未记录在识别日志中,且未记录在可信任URL地址列表中的每个待识别的URL地址,对筛选出的每个待识别的URL地址分别发起一次识别请求,识别每个待识别的URL地址是否为钓鱼网站的URL地址。
在实际应用场景中,不法分子经常会在钓鱼网站的页面中编辑一些虚假的信息,如虚假的中奖信息等,诱使用户提供自己的私人信息。因此本发明实施例中为了进一步提高识别钓鱼网站的准确性,可以设定一些关键字,并结合第一相似度,以及待识别的URL地址对应的页面中包含的设定关键字进行识别。其中,设定关键字可以根据需要进行设定,例如设定为“中奖”等。
同时,由于钓鱼网站的页面通常也要仿冒合法网站的页面,因此不法分子通常会将合法网站的页面中包含的javascript代码和html代码中的部分或者全部,拷贝到钓鱼网站的页面中。如果该待识别的URL地址与设定的URL地址的第一相似度很高,但该待识别的URL地址并不是该设定的URL地址,而该待识别的URL地址对应的页面中包含的javascript代码与设定的URL地址对应的页面中包含的javascript代码的第二相似度很高,该待识别的URL地址对应的页面中包含的html代码与设定的URL地址对应的页面中包含的html代码的第三相似度也很高,那么该待识别的URL地址就很有可能是仿冒该设定的URL地址的钓鱼网站的URL地址。
另外,如果该待识别的URL地址与设定的URL地址的第一相似度很高,但该待识别的URL地址并不是该设定的URL地址,而该待识别的URL地址对应的页面中包含的很多嵌入URL地址,例如该待识别的URL地址对应的页面中包含的图片链接地址、内链接地址,或其他URL地址的域名信息又与该设定的URL的域名信息相同,那么该待识别的URL地址就很有可能是仿冒该设定的URL地址的钓鱼网站的URL地址。
因此,为了进一步提高识别钓鱼网站的准确性,在本发明实施例中,将该待识别的URL地址对应的页面中的文字信息包含的设定关键字,该页面中包含的javascript代码与设定的URL地址对应的页面中包含的javascript代码的第二相似度,该页面中包含的html代码与设定的URL地址对应的页面中包含的html代码的第三相似度,以及该页面中包含的域名信息与设定的URL地址的域名信息相同的嵌入URL地址的数量中的一种或几种,与第一相似度相结合,来判断该待识别的URL地址是否为钓鱼网站的URL地址。
具体的,在图1所示的步骤S103中,识别装置确定第一相似度在设定范围内,且待识别的URL地址与设定的URL地址不相同时,根据该设定范围内的不同子范围分别对应的分值,以及确定的第一相似度所在的子范围,确定赋予该第一相似度的第一分值。例如,设定范围为80%~98%,该设定范围的子范围为80%~89%和90%~98%,其中,子范围80%~89%对应的分值为10分,子范围90%~98%对应的分值为20分,假设确定的第一相似度为90%,且该待识别的URL地址与设定的URL地址不相同,则该第一相似度所在的子范围为子范围90%~98%,赋予该第一相似度的第一分值为该子范围90%~98%对应的20分。
确定第一分值后,提取该待识别的URL地址对应的页面,并根据提取的页面执行下述过程中的至少一个过程,以确定下述分值中的至少一个分值:
确定提取的页面中的文字信息包含的设定关键字,根据保存的每个设定关键字分别对应的分值,确定提取的设定关键字分别对应的分值的和值,作为第二分值;以及
确定提取的页面中包含的javascript代码,与设定的URL地址对应的页面中包含的javascript代码的第二相似度,并根据预设的相似度范围分别对应的分值,确定第二相似度所在的相似度范围对应的分值,作为第三分值;
确定提取的页面中包含的文本标记语言html代码,与设定的URL地址对应的页面中包含的html代码的第三相似度,并根据预设的相似度范围分别对应的分值,确定第三相似度所在的相似度范围对应的分值,作为第四分值;
确定提取的页面中包含的嵌入URL地址,并确定提取的嵌入URL地址中,域名信息与设定的URL地址的域名信息相同的嵌入URL地址的数量,根据设定的不同数量分别对应的分值,确定域名信息与设定的URL地址的域名信息相同的嵌入URL地址的数量对应的分值,作为第五分值;
当确定的第一分值,与确定出的第二分值、第三分值、第四分值、第五分值中的至少一个分值的和值不小于设定分值时,将该待识别的URL地址识别为钓鱼网站的URL地址。
也即,根据该待识别的URL地址与设定的URL地址的第一相似度、该待识别的URL地址对应的页面中的文字信息中包含的设定关键字、该页面中包含的javascript代码与设定的URL地址对应的页面中包含的javascript代码的第二相似度、该页面中包含的html代码与设定的URL地址对应的页面中包含的html代码的第三相似度、该页面中包含的域名信息与设定的URL地址的域名信息相同的嵌入URL地址的数量,对该待识别的URL地址进行评分,如果评分高于设定分值,则确定该待识别的URL地址为钓鱼网站的URL地址,将该待识别的URL地址添加到黑名单中,否则确定该待识别的URL地址不是钓鱼网站的URL地址。
另外,考虑到在实际应用场景中,不法分子还可能会将钓鱼网站的URL地址,通过某个合法网站的跳转或重定向功能,或者利用该某个合法网站的漏洞,或者采用短域名的方式作为该某个合法网站的URL地址中的跳转URL地址。例如,某个合法网站的URL地址为http://987.654.32.1,钓鱼网站的URL地址为http://x.cn,而不法分子会将该钓鱼网站的URL地址作为该合法网站的URL地址的跳转URL地址,如:http://987.654.32.1/index.php?url=http://x.xn,此时,如果单纯识别http://987.654.32.1/index.php?url=http://x.xn页面,则必然不会识别出该页面是钓鱼网站的页面,但是该页面的跳转页面http://x.cn,则是钓鱼网站的页面。
因此,在本发明实施例中,为了更进一步提高识别钓鱼网站的准确性,识别装置获取待识别的URL地址的方法还可以为,针对待识别的URL地址,当该URL地址中包含跳转URL地址时,将包含的跳转URL地址作为待识别的URL地址。也即,识别装置提取URL地址后,判断该URL地址中是否包含跳转URL地址,如果该URL地址中包含跳转URL地址,则不仅要将该URL地址作为待识别的URL地址进行识别,还要将该跳转URL地址也作为待识别的URL地址进行识别。其中,判断该URL地址中是否包含跳转URL地址也可以根据该URL地址的重定向字段来判断,如上例中,如果该URL地址中包含index.php?url=重定向字段,则该字段之后的URL地址即为该URL地址中包含的跳转URL地址。
图2为本发明实施例提供的识别钓鱼网站的详细过程,具体包括以下步骤:
S201:提取终端与网络侧交互的信息中所携带的每个URL地址,作为每个待识别的URL地址。
S202:针对提取的每个URL地址,确定该URL地址对应的页面的页面类型。
S203:判断确定的页面类型是否为设定的页面类型,若判断结果为是,则进行步骤S204,否则进行步骤S205。
S204:提取该URL地址对应的页面中包含的每个嵌入URL地址,也作为每个待识别的URL地址。
其中,针对每个待识别的URL地址,如果该URL地址中包含跳转URL地址,则将该跳转URL地址也作为待识别的URL地址进行处理。
S205:针对每个待识别的URL地址,根据保存的识别日志,判断该待识别的URL地址是否未记录在识别日志中,若是,则进行步骤S206,否则进行步骤S208。
S206:根据保存的可信任URL地址列表,判断该待识别的URL地址是否未记录在该可信任URL地址列表中,若是,则进行步骤S207,否则进行步骤S208。
S207:将该待识别的URL地址的属性信息,与设定的URL地址的属性信息进行对比,确定该待识别的URL地址与设定的URL地址的第一相似度。
S208:不再对该待识别的URL地址进行识别。
S209:提取该待识别的URL地址对应的页面,确定提取的页面中的文字信息包含的设定关键字,确定该页面中包含的javascript代码与设定的URL地址对应的页面中包含的javascript代码的第二相似度,确定该页面中包含的html代码与设定的URL地址对应的页面中包含的html代码的第三相似度,确定提取的页面中包含的域名信息与设定的URL地址的域名信息相同的嵌入URL地址的数量。
S210:根据确定的第一相似度、提取的该待识别的URL地址对应的页面中的文字信息包含的设定关键字、确定的第二相似度、第三相似度,以及域名信息与设定的URL地址的域名信息相同的嵌入URL地址的数量,确定该待识别的URL地址的分值。
S211:判断该待识别的URL地址的分值是否不小于设定分值,若是,则进行步骤S212,否则进行步骤S213。
S212:将该待识别的URL地址识别为钓鱼网站的URL地址添加到黑名单中。
S213:将该待识别的URL地址识别为非钓鱼网站的URL地址。
图3为本发明实施例提供的识别钓鱼网站的装置结构示意图,包括:
第一提取模块301,用于提取终端与网络侧交互的信息中所携带的每个统一资源定位符URL地址;
第二提取模块302,用于针对每个所述提取的终端与网络侧交互的信息中所携带的URL地址,确定该URL地址对应的页面的页面类型,在判断出该URL地址对应的页面的页面类型为设定的页面类型时,提取该URL地址对应的页面中包含的每个嵌入URL地址作为每个待识别的URL地址;
将所述提取的终端与网络侧交互的信息中所携带的URL地址及所述嵌入URL地址作为待识别的URL地址;
第一确定模块303,用于针对每个待识别的URL地址,将该待识别的URL地址的属性信息,与设定的非钓鱼网站的URL地址的属性信息进行对比,确定该待识别的URL地址与设定的URL地址的第一相似度;
识别模块304,用于当判断确定的第一相似度在设定范围内,且该待识别的URL地址与设定的URL地址不相同时,将该待识别的URL地址识别为钓鱼网站的URL地址。
所述装置还包括:
日志存储模块305,用于对该待识别的URL地址进行识别后,将该待识别的URL地址保存在识别日志中。
所述装置还包括:
第二确定模块306,用于在将该待识别的URL地址的属性信息,与设定的URL地址的属性信息进行对比之前,根据所述识别日志中已记录的每个URL地址,确定该待识别的URL地址未记录在所述识别日志中。
所述装置还包括:
第三确定模块307,用于在将该待识别的URL地址的属性信息,与设定的URL地址的属性信息进行对比之前,根据可信任URL地址列表中已记录的每个可信任URL地址,确定该待识别的URL地址未记录在所述可信任URL地址列表中。
所述第一确定模块303,具体用于将该待识别的URL地址对应的域名信息,与设定的URL地址对应的域名信息进行对比,确定该待识别的URL地址与设定的URL地址的域名相似度,将该待识别的URL地址对应的站点名称信息,与设定的URL地址对应的站点名称信息进行对比,确定该待识别的URL地址与设定的URL地址的站点名称相似度,将确定的域名相似度与设定的第一加权值的乘积,以及确定的站点名称相似度与设定的第二加权值的乘积的和值,确定为待识别的URL地址与设定的URL地址的第一相似度。
所述识别模块304,具体用于根据所述设定范围内的不同子范围分别对应的分值,以及确定的第一相似度所在的子范围,确定赋予所述第一相似度的第一分值,提取待识别的URL地址对应的页面,确定提取的页面中的文字信息包含的设定关键字,根据保存的每个设定关键字分别对应的分值,确定提取的设定关键字分别对应的分值的和值,作为第二分值,当所述第一分值与确定出的第二分值的和值不小于设定分值时,将该待识别的URL地址识别为钓鱼网站的URL地址。
所述识别模块304,具体用于根据所述设定范围内的不同子范围分别对应的分值,以及确定的第一相似度所在的子范围,确定赋予所述第一相似度的第一分值,提取待识别的URL地址对应的页面,确定提取的页面中包含的javascript代码,与设定的URL地址对应的页面中包含的javascript代码的第二相似度,并根据预设的相似度范围分别对应的分值,确定所述第二相似度所在的相似度范围对应的分值,作为第三分值,当所述第一分值与确定出的第三分值的和值不小于设定分值时,将该待识别的URL地址识别为钓鱼网站的URL地址。
所述识别模块304,具体用于根据所述设定范围内的不同子范围分别对应的分值,以及确定的第一相似度所在的子范围,确定赋予所述第一相似度的第一分值,提取待识别的URL地址对应的页面,确定提取的页面中包含的文本标记语言html代码,与设定的URL地址对应的页面中包含的html代码的第三相似度,并根据预设的相似度范围分别对应的分值,确定所述第三相似度所在的相似度范围对应的分值,作为第四分值,当所述第一分值与确定出的第四分值的和值不小于设定分值时,将该待识别的URL地址识别为钓鱼网站的URL地址。
所述识别模块304,具体用于根据所述设定范围内的不同子范围分别对应的分值,以及确定的第一相似度所在的子范围,确定赋予所述第一相似度的第一分值,提取待识别的URL地址对应的页面,确定提取的页面中包含的嵌入URL地址,并确定提取的嵌入URL地址中,域名信息与设定的URL地址的域名信息相同的嵌入URL地址的数量,根据设定的不同数量分别对应的分值,确定域名信息与设定的URL地址的域名信息相同的嵌入URL地址的数量对应的分值,作为第五分值,当所述第一分值与确定出的第五分值的和值不小于设定分值时,将该待识别的URL地址识别为钓鱼网站的URL地址。
所述装置还包括:
第三提取模块308,用于针对所述待识别的URL地址,当该URL地址中包含跳转URL地址时,将包含的跳转URL地址作为待识别的URL地址。
本发明实施例提供一种识别钓鱼网站的方法及装置,该方法将终端与网络侧交互的信息中携带的URL地址,以及设定的页面类型的页面中包含的嵌入URL地址作为待识别的URL地址,将待识别的URL地址的属性信息与设定的非钓鱼网站的URL地址的属性信息进行对比,确定该待识别的URL地址与设定的URL地址的第一相似度,当第一相似度在设定范围内,且该待识别的URL地址与设定的URL地址不相同时,将该待识别的URL地址识别为钓鱼网站的URL地址。由于本发明实施例中根据获得的待识别的URL地址与设定的URL地址的第一相似度,判断该待识别的URL地址是否为钓鱼网站的URL地址,实现了自动识别钓鱼网站的方法,而无需人工识别,提高了识别钓鱼网站的效率,并且将设定的页面类型的页面中包含的嵌入URL地址也作为待识别的URL地址进行识别,因此提高了识别钓鱼网站的准确性。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。