[发明专利]域名过滤名单存储、匹配方法及装置有效
申请号: | 201110193784.0 | 申请日: | 2011-07-12 |
公开(公告)号: | CN102882987A | 公开(公告)日: | 2013-01-16 |
发明(设计)人: | 邓旻辉;罗坤莉 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | H04L29/12 | 分类号: | H04L29/12 |
代理公司: | 隆天国际知识产权代理有限公司 72003 | 代理人: | 章侃铱;张浴月 |
地址: | 开曼群岛大开曼*** | 国省代码: | 开曼群岛;KY |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 域名 过滤 名单 存储 匹配 方法 装置 | ||
技术领域
本申请涉及网络技术领域,尤其涉及一种基于树的域名过滤名单(黑/白名单)存储、匹配方法及装置。
背景技术
域名是指由某些字符、数字和符号组成的一串标示,一个特定的域名通常可以指向Internet上的一个特定站点,各机构、组织和公司等通常都会申请自己所需的一级域名所有权和使用权,每个一级域名对应的子域名则自动归其拥有,而网络用户通过这些域名便可以访问到这些机构、公司的门户站点。随着当今时代网络的飞速发展,Internet上日益聚集了数不胜数的站点,其中不可避免也产生了一些以危害用户利益来获利的网站,经常有一些恶意网站的域名会出现在受用户信任的安全网站的网页或者跳转地址中,用户在不经意间从安全网站转而访问到恶意网站的页面,后果不堪设想,轻则使用户获取一些错误信息,重则造成经济损失,甚至造成难以估量的后果。因此,对提供访问服务的网站运营者来说,就有责任致力于避免访问本网站的用户受到恶意网站的安全威胁。
具体来说,用户一般是通过浏览器的方式来访问网站页面,进而通过在当前页面点击链接或者在浏览器地址栏输入域名的方式来跳转到不同的页面,在这个过程中,有以下两种情景特别需要引起当前网站运营者的注意:
(1)用户在当前A站点(以域名a.com为例)的页面上进行操作,比如点击链接进入其他网站时,需要保证用户不会通过此链接进入有危害性的站点;
(2)用户通过在浏览器地址栏中输入一个含有当前站点域名的URL(超链接),用户进行操作后,需要保证用户不会由此进入有危害性的站点。例如以下URL:http://a.com/1ogin.html?target=http://pianzi.com,现实中很多网站都通过这种方式来实现用户登录后直接跳转到目标地址,用户在进行登录操作后,都会认为这是A站点的页面,如果此时用户被链接到一个恶意网站,难免不会出现问题。
针对上述情况,目前一般网站通常采取黑/白名单的策略来进行域名过滤。一般意义上的白名单通常是一些字符规则组成的列表,目标如果符合规范列表的某一条才可以获得一些权限;黑名单则恰好相反。在计算机领域中,许多网站和软件等都在使用过滤名单规则,如防火墙、杀毒软件等,而具体到网站的域名过滤技术中,黑/白名单的策略例如可以是下述配置:(1)当前网站只允许跳转或链接到白名单中包含的网站;(2)不允许跳转或者链接到黑名单中包含的网站。
进一步,就域名黑/白名单的具体实现方式来说,现有许多网站都采用正则表达式的方式来进行黑/白名单的匹配,一个白名单的正则表达式配置实例包括以下步骤:
S1、首先配置一份xml格式的白名单,将所有受信任的一级域名全部配置在xml文件中;
S2、需要进行白名单匹配时,将上述的白名单全部转化为正则表达式,然后将其存储在内存中;
S3、从待检验的URL中截取出域名,然后将域名逐个与白名单中的规则做正则表达式匹配;如果这个域名最终与其中某一条规则相匹配,表示该域名在白名单内,系统终止匹配,认为该URL可以访问;如果没有一条规则匹配,则表示该域名不在白名单内,从而不允许访问该URL或作出警告。
黑名单的配置方式在具体实现上与上述白名单非常类似,因此本申请说明书中下文一律以过滤名单来泛指黑/白名单。接续,上述按正则表达式实现的过滤名单配置方式虽然能够保证检查的准确性,然而也存在一定的缺陷。一方面,按条存储的过滤名单不便于维护,而且也占用存储空间;另一方面,正则表达式的匹配过程非常消耗资源,在遇到“.”、“*”等一些贪婪匹配符号时很容易造成大量的回溯,使检查效率出现成百万倍的下降;再一方面,正则表达式采用逐条规则匹配的方式,在面对目前网站内动辄数以十亿级的检查量时往往力不从心,甚至会在短时间内造成服务器硬件性能的急剧降低;另外,正则表达式本身还存在不易调试、编写困难的问题。
发明内容
本申请的实施例旨在提供一种域名过滤名单存储、匹配方法及装置,以解决常用的正则表达式逐条存储、匹配的域名过滤方式存在的上述问题。
为实现上述目的,根据本申请实施例的第一方面,提供了一种由计算机实现的域名过滤名单存储方法,包括以下步骤:
S11.将过滤名单内配置的域名按预定次序转换为字符串;
S12.采用树的方式根据所述字符串生成名单树;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110193784.0/2.html,转载请声明来源钻瓜专利网。