具体实施方式
本发明通过在路由器进行恶意网址的检测,根据检测结果对用户终端进行提示,无需用户终端安装恶意网址拦截软件,解决了用户终端无法安装或者用户未安装恶意网址拦截软件的条件下,提高用户网上冲浪的安全性。
下面以具体地实施例对本发明的技术方案进行详细描述。
图1为本发明恶意网址提示的应用场景示意图,如图1所示,本发明各实施例的应用场景中包括至少一台用户终端1,用户终端如:个人计算机(Personal Computer,以下简称:PC)、手机、平板电脑(Tablet Computer)等,至少一个路由器2以及互联网3,其中,每台用户终端1通过路由器2接入到互联网3。用户终端1向互联网3发送的信息或者从互联网3接收的信息均要通过路由器2。因此,本发明可以通过在路由器进行恶意网址的检测,根据检测结果对用户终端进行提示。
图2为本发明恶意网址提示系统结构示意图,如图2所示,路由器中包含网络地址转换(Network Address Translation,以下简称:NAT)接口,用于把局域网内部各用户终端的私有网络协议(Internet Protocol,以下简称:IP)地址转换成一个合法的外网IP地址,使局域网中的多个用户终端共享一个合法的外网IP地址访问互联网。互联网中的网址访问服务器发送的网址在经过路由器的NAT接口时被拦截,路由器的网址获取模块获取网络访问请求中的目标网址,然后通过路由器中存储的域名白名单和/或文件名扩展名白名单进行过滤,确定目标网址是否为潜在恶意网址,若目标网址为潜在恶意网址,则进一步根据路由器的本地缓存(cache)存储的恶意网址数据库确定目标网址是否为恶意网址,若目标网址不是恶意网址数据库中的网址则进一步通过其他方式判断目标网址是否为恶意网址,例如:将获取的目标网址发送的管家服务器进行查询。在上述实施例中,路由器中存储的域名白名单和恶意网址数据库可以定期根据管家服务器发送的网址进行更新。
在下述各实施例中,网络访问请求包括但不限于超文本传输协议(Hypertext transfer protocol,以下简称:HTTP)请求,网址包括但不限于第一统一资源定位符(Uniform Resource Locator,以下简称:URL)。
图3为本发明恶意网址提示方法实施例一的流程示意图,参见图1~图3,本实施例的方法包括:
S301:路由器获取用户终端访问的网络协议请求中的目标网址。
具体地,路由器采用NAT技术,把局域网内部各用户终端的私有网络协议(Internet Protocol,以下简称:IP)地址转换成一个合法的外网IP地址,使局域网中的多个用户终端共享一个合法的外网IP地址访问互联网。局域网中的用户终端例如可以为:PC、手机、平板电脑等,将设置好的无线局域网(Wireless Local Access Network,以下简称:WLAN)的路由器设置为缺省网关,当路由器收到局域网中的用户终端访问的第一数据包时,对第一数据包进行修改,将原第一数据包中的源IP地址修改为路由器的第一IP(路由器的多个IP地址其中一个IP地址),将源端口号修改为路由器第一端口号(路由器的多个端口其中的一个端口),将修改后的第一数据包发送到外网,并记录源IP地址和源端口号与路由器的第一IP地址和第一端口号的对应关系;当路由器接收到外网发送的目的IP地址为第一IP地址、目的端口号为第一端口号第二数据包时,根据记录的源IP地址和源端口号与路由器的第一IP地址和第一端口号的对应关系,将上述第二数据包的目的IP地址和目的端口号替换为对应的源IP地址和源端口号,将第二数据包发送到用户终端。
从上述路由器的工作原理可知,路由器可以获取到所有内外网交互的数据包,利用这一特点,当用户终端请求访问外网的某一网站时,会首先向外网发送访问网站的网络访问请求,路由器即可以在网络访问请求包中提取出主机(HOST)和查询(QUERY)串,从而,获取用户终端访问的网络访问请求中的目标网址。
S302:路由器确定目标网址是否属于恶意网址。
具体地,路由器可以根据一些具体的规则确定目标网址是否属于恶意网址。
首先,判断目标网址是否属于潜在恶意网址,潜在恶意网址是指目标网址属于恶意网址的概率大于预设值。若所述目标网址是潜在恶意网址,再进一步判断目标网址是否为恶意网址。
S303:若路由器确定目标网址属于恶意网址,则向用户终端发送拦截上述目标网址的提示信息。
通过向用户终端发送拦截上述目标网址的提示信息,通知用户所访问的网站存在风险,以使用户根据提示确定是否继续进行访问。
本实施例,通过路由器获取用户终端访问的网络访问请求中的目标网址,确定目标网址是否属于恶意网址,若确定目标网址属于恶意网址,向用户终端发送拦截目标网址的提示信息,无需用户终端安装恶意网址拦截软件,解决了用户终端无法安装或者用户未安装恶意网址拦截软件的条件下,提高用户网上冲浪的安全性。
在图3所示实施例的步骤S302中,路由器确定目标网址是否属于恶意网址,其中,一种实现方式如图4所示,图4为本发明恶意网址提示方法实施例二的流程示意图。
S401:路由器基于目标网址中的域名和/或文件名的扩展名确定目标网址是否属于潜在恶意网址。
路由器本地会存储域名白名单和/或文件名扩展名白名单。
若目标网址中包含域名白名单中的域名,则可以确定目标网址属于安全网址,域名白名单中的域名例如:“qq.com”、“baidu.com”和“sina.com”等。若目标网址中包含文件名扩展名白名单中的扩展名的文件,则可以确定目标网址属于安全网址,例如:“*.css”、“*.jpg”、“*.js”或“*.png”等。
可以单独基于目标网址中的域名确定目标网址是否属于潜在恶意网址,也可以单独基于目标网址中文件名的扩展名确定目标网址是否属于潜在恶意网址,也可以结合目标网址中的域名和文件名的扩展名确定目标网址是否属于潜在恶意网址。
第一种实现方式,单独基于目标网址中的域名确定目标网址是否属于潜在恶意网址的具体为:将目标网址中的域名与域名白名单中的域名进行匹配,若目标网址中的域名属于上述域名白名单中的域名,则确定上述目标网址为安全网址,若目标网址中的域名不属于上述域名白名单中的域名,则确定上述目标网址为潜在恶意网址。
第二种实现方式,单独基于目标网址中的文件名的扩展名确定目标网址是否属于潜在恶意网址的具体为:将目标网址中的文件名的扩展名与文件名扩展名白名单中的扩展名进行匹配,若目标网址中的文件名的扩展名属于文件名扩展名白名单中的扩展名,则确定目标网址为安全网址,若目标网址中的文件名的扩展名不属于文件名扩展名白名单中的扩展名,则确定目标网址为潜在恶意网址。
第三种实现方式,结合目标网址中的域名和文件名确定目标网址是否属于潜在恶意网址的具体为:
当目标网址中包含域名和文件名的扩展名时,若目标网址中的域名属于域名白名单中的域名,或者目标网址中的文件名的扩展名属于文件名扩展名白名单中的扩展名,则确定目标网址为安全网址;将目标网址中的域名与域名白名单中的域名进行匹配,若目标网址中包含的域名不属于域名白名单中的域名,则进一步判断所述目标网址中包含的文件名的扩展名是否属于文件名扩展名中的扩展名,若目标网址中包含的文件名的扩展名不属于文件名扩展名白名单的扩展名,则确定目标网址为潜在恶意网址。
当目标网址中不包含文件名的扩展名时,采用单独基于目标网址中的域名确定目标网址是否属于潜在恶意网址的方式确定,在此不再赘述。
值得说明的是,路由器存储的域名白名单和/或文件名扩展名白名单可定期的进行更新,具体地,可以通过服务器动态增量下发的方式同步到路由器的域名白名单中,路由器可以定期通过心跳的方式将本地的域名白名单和/或文件名扩展名白名单的版本号发送到服务器询问是否有增量更新,服务器返回路由器发送的版本是否有增量更新,并将增量更新个数告知路由器,路由器从服务器上获取增量更新,更新到本地存储域名白名单和/或文件名扩展名白名单的缓存(cache)中,并更域名白名单和/或文件名白名单的版本号。
若采用上述三种实现方式中的任一种实现方式确定目标网址是否属于潜在恶意网址,若所述目标网址不属于潜在恶意网址,则执行S402,若所述目标网址属于潜在恶意网址,则执行S403。
S402:确定上述目标网址为安全网址。
S403:判断恶意网址数据库中是否存在与目标网址相匹配的参考网址,若存在,则执行S404,若不存在,则执行S405。
将上述目标网址与恶意网址数据库中的参考网址进行匹配。其中,恶意网址数据库中存储参考网址都属于恶意网址。若恶意网址数据库中存在与目标网址相匹配的参考网址,则执行S404,若恶意网址数据库中不存在于目标网址相匹配的参考网址,则执行S405。
S404:确定目标网址为恶意网址。
由于恶意网址数据库中的参考网址都属于恶意网址,因此,若恶意网址数据库中存在与目标网址相匹配的参考网址,则确定目标网址属于恶意网址。
进一步地,恶意网址数据库中还可以包含每个参考网址对应的安全级别,安全级别例如可以为:低、一般、严重;当参考网址对应的安全级别为低时,说明对用户的上网安全威胁较低;当参考网址对应的安全级别为一般时,说明对用户的上网安全威胁一般;当参考网址对应的安全级别为严重时,说明对用户上网安全威胁严重。路由器确定目标网址属于恶意网址之后,确定与目标网址相匹配的参考网址对应的安全级别为目标网址的安全级别,并在向用户终端访问的拦截目标网址的提示信息中包含目标网址的安全级别,以使用户根据不同的安全级别,采用不同的处理策略。
S405:进一步判断目标网址是否属于恶意网址。
若恶意网址数据库中不存在与目标网址相匹配的参考网址,则需要进一步判断目标网址是否属于恶意网址。具体地判断方法可以如图5所示。
通过图4所示实施例的方法,先通过域名白名单和/或文件名扩展名白名单过滤掉安全的网址,确定潜在的恶意网址,然后,针对潜在的恶意网址与恶意网址数据库中的参考网址进行匹配,进一步确定目标网址是否属于恶意网址,减少了需要匹配的网址的数量,提高了匹配效率。
图5为本发明恶意网址提示方法实施例三的流程示意图。图5所示实施例是在图4所示实施例判断出恶意网址数据库中不存在于目标网址相匹配的参考网址时,进一步判断目标网址是否属于恶意网址的其中一种方法,如图5所示,本实施例的方法包括:
S501:路由器获取目标网址的第一页面内容。
路由器针对不同目标网址分发到不同的检测引擎中进行鉴定,检测引擎中的爬虫模块爬取目标网址的第一页面内容,爬虫模块从一个或若干初始网页的网址开始,获取初始网页上的子网址,在抓取网页的过程中,不断从当前页面上抽取新的子网址放入队列,直到满足系统的停止条件,所有被爬虫抓取的网页(即第一页面内容)将被系统存贮,进行一定的分析、过滤、并建立索引,以便之后的查询和检索。
S502:路由器解析第一页面内容。
S503:判断第一页面内容是否少于预设值。若是,执行S504,若否,执行S507。
第一页面内容少于预设值一般是指第一页面内容偏少、具有很多干扰词汇和没有太多语义信息。则采用浏览器网页快照和图片识别的恶意网址判别方法进行综合判定,将最终在浏览器上显示给用户的页面进行快照截取,对截取的图片采用文字识别、人脸识别等相关识别工具判断目标网址是否为恶意网址。即执行S504~S506的步骤判断目标网址是否为恶意网址。
若第一页面内容较丰富,则执行S507~S508,的步骤判断目标网址是否为恶意网址。
S504:路由器获取目标网址对应的第二页面内容。
路由器可以通过浏览器(webkit)内核从目标网址所指的服务器上获取目标网址对应的第二页面内容。
S505:路由器生成第二页面内容对应的目标页面图片。
路由器可以通过页面渲染的方式生成第二页面内容对应的目标页面图片。
S506:路由器根据目标页面图片确定目标网址是否属于恶意网址。
该步骤具体地实现包括但不限于下述三种实现方式。
其中,第一种实现方式为:路由器将目标页面图片与预设的恶意图片数据库中的参考页面图片进行相似度匹配;若相似度大于预设值,则路由器确定目标网址属于恶意网址。
第二种实现方式为:路由器对目标页面图片进行识别,获取目标页面图片中的内容,将目标页面图片中的内容与预设的恶意图片数据库中的参考页面图片的内容进行匹配;若预设的恶意图片数据库中具有与目标页面图片中的内容相匹配的参考页面图片的内容,则路由器确定目标网址属于恶意网址。
第三种实现方式为:也可以将第一种实现方式与第二种实现方式结合,综合考虑目标网址是否为恶意网址,具体地,将目标页面图片与预设的恶意图片数据库中的页面图片进行相似度匹配,获取第一匹配结果;对目标页面图片进行识别,获取目标页面图片中的内容,如:文字与物体,将目标页面图片中的内容与预设的恶意图片数据库中的参考页面图片进行匹配,获取第二匹配结果;结合第一匹配结果和第二匹配结果,确定目标网址是否属于恶意网址。
S507:路由器获取第一页面内容中的关键信息。
其中,关键信息用于进行页面恶意属性甄别,关键信息例如为可以执行的JS、页面标题、版权信息等,构造页面构成的文件对象模型(DocumentObject Model,以下简称DOM)和浏览器对象模型(Browser Object Model,以下简称:BOM)树,同时解析网页引用的外部链接,供引用热力统计模块使用。
S508:路由器根据关键信息确定目标网址是否属于恶意网址。
该步骤具体地实现包括但不限于下述三种实现方式。
其中,第一种实现方式为:路由器对关键信息中的文字内容进行分词,获取文字内容的语义信息;根据文字内容的语义信息与预设的恶意页面数据库中存储的恶意页面的文字内容进行相似度匹配;若相似度大于预设值,则路由器确定目标网址属于恶意网址。
第二种实现方式为:路由器对关键信息中的文字内容进行分词,获取文字内容的语义信息;根据文字内容的语义信息,通过贝叶斯分类器、关键词模型和/或决策树学习的判别方式,确定第一页面内容的分类;分类例如可以为:经济、体育、色情、钓鱼、木马等,其中,色情、钓鱼、木马等属于恶意网址分类;若第一页面内容的分类属于恶意网址分类,则路由器确定目标网址属于恶意网址。
第三种实现方式为:也可以将第一种实现方式和第二种实现方式的判断结果汇总,综合考虑目标网址是否为恶意网址,具体地,根据文字内容的语义信息与预设的恶意页面数据库中存储的恶意页面的文字内容进行相似度匹配,获取匹配结果;根据文字内容的语义信息,通过贝叶斯分类器、关键词模型和/或决策树学习的判别方式,确定第一页面内容的分类,获取分类结果,根据上述匹配结果和分类结果确定目标网址是否属于恶意网址。
图5所示实施例的方法主要是针对将目标网址与恶意网址数据库中的参考网址匹配之后,仍不能确定是否为恶意网址的目标网址进行的处理,采用这种实现方式,当确定目标网址为恶意网址之后,向用户终端发送拦截目标网址的提示信息,无需用户终端安装恶意网址拦截软件,解决了用户终端无法安装或者用户未安装恶意网址拦截软件的条件下,提高用户网上冲浪的安全性。
在上述各实施例中,当确定目标网址为恶意网址之后,还包括,将目标网址添加到恶意网址数据库中,从而,使得恶意网址数据库中存储的恶意网址覆盖面增大,进一步提高用户上网的安全性。
图6为本发明路由器实施例一的结构示意图,如图6所示,本实施例的路由器包括网址获取模块601、处理模块602和发送模块603,其中,网址获取模块601用于获取用户终端访问的网络访问请求中的目标网址;处理模块602用于确定所述目标网址是否属于恶意网址;发送模块603用于若所述处理模块确定所述目标网址属于恶意网址,则向所述用户终端发送拦截所述目标网址的提示信息。
上述各实施例的装置对应的可用于执行图3所示方法实施例的技术方案,其实现原理和技术效果类似,在此不再赘述。
在上述实施例中,所述处理模块602用于确定所述目标网址是否属于恶意网址,包括:预处理子模块,用于基于所述目标网址中的域名和/或文件名的扩展名确定所述目标网址是否属于潜在恶意网址;若所述预处理子模块确定所述目标网址属于潜在恶意网址,则网址云查子模块,用于将所述目标网址与预设的恶意网址数据库中的参考网址进行匹配,其中,所述参考网址属于恶意网址;若所述恶意网址数据库中存在与所述目标网址相匹配的参考网址,则所述网址云查子模块判定所述目标网址属于恶意网址。
上述各实施例的装置对应的可用于执行图4所示方法实施例的技术方案,其实现原理和技术效果类似,在此不再赘述。
在上述实施例中,所述处理模块602获取子模块,用于若所述恶意网址数据库中不存在与所述目标网址相匹配的参考网址,则所述路由器获取所述目标网址的第一页面内容;页面解析子模块,用于解析所述第一页面内容,获取所述第一页面内容中的关键信息;确定子模块,用于根据所述关键信息确定所述目标网址是否属于恶意网址。
在上述实施例中,所述确定子模块,用于根据所述关键信息确定所述目标网址是否属于恶意网址,包括:文字内容分词单元,用于对所述关键信息中的文字内容进行分词,获取所述文字内容的语义信息;文字相似度匹配单元,用于根据所述文字内容的语义信息与预设的恶意页面数据库中存储的恶意页面的文字内容进行相似度匹配;确定单元,用于若所述相似度大于预设值,则确定所述目标网址属于恶意网址。
在上述实施例中,所述确定子模块,用于根据所述关键信息确定所述目标网址是否属于恶意网址,包括:文字内容分词单元,用于对所述关键信息中的文字内容进行分词,获取所述文字内容的语义信息;基于文字的机器识别单元,用于根据所述文字内容的语义信息,通过贝叶斯分类器、关键词模型和/或决策树学习的判别方式,确定所述第一页面内容的分类;确定单元,用于若所述第一页面内容的分类属于恶意网址分类,则确定所述目标网址属于恶意网址。
在上述实施例中,所述处理模块包括:获取子模块,用于若所述恶意网址数据库中不存在与所述目标网址相匹配的参考网址,则所述路由器获取所述目标网址的第一页面内容;页面解析子模块,用于解析所述第一页面内容;页面截图子模块,用于若所述第一页面内容少于预设值,则所述获取所述目标网址对应的第二页面内容;生成所述第二页面内容对应的目标页面图片;确定子模块,用于根据所述目标页面图片确定所述目标网址是否属于恶意网址。
在上述实施例中,所述确定子模块用于根据所述目标页面图片确定所述目标网址是否属于恶意网址,包括:图片相似度匹配单元,用于将所述目标页面图片与预设的恶意图片数据库中的参考页面图片进行相似度匹配;确定单元,用于若所述相似度大于预设值,则所述路由器确定所述目标网址属于恶意网址。
在上述实施例中,所述确定子模块用于根据所述目标页面图片确定所述目标网址是否属于恶意网址,包括:图片识别单元,用于对所述目标页面图片进行识别,获取所述目标页面图片中的内容,将所述目标页面图片中的内容与预设的恶意图片数据库中的参考页面图片的内容进行匹配;确定单元,用于若所述预设的恶意图片数据库中具有与所述目标页面图片中的内容相匹配的参考页面图片的内容,则所述路由器确定所述目标网址属于恶意网址。
上述各实施例的装置对应的可用于执行图5所示方法实施例的技术方案,其实现原理和技术效果类似,在此不再赘述。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。