基于网络设备的网页过滤的设计
在网页过滤技术中,URL 过滤是普遍采用的过滤方式,因为其设计实现非常简单,速度快、效率高;但是互联网是动态的,每天有数以万计的新的网页出现,URL 名单的更新速度往往跟不上;如果单纯的采用URL 过滤,会造成过滤的遗漏
本文引用地址:https://www.eepw.com.cn/article/202467.htm内容过滤能够实现实时的网页内容防护,过滤比较准确,但是因为内容过滤过程比较复杂,处理量如果过大,会造成用户上网的明显延迟。
设计的方法是基于网络层的网页过滤方法,在网络设备上实现对网页的过滤。采用URL 过滤与内容过滤相结合的方式,取安全与性能的折中。
1 网页过滤总体框架
一台主机要访问Web 服务器,首先与Web 服务器进行三次握手,建立TCP 连接;然后向Web 服务器发送请求报文,其中包含用户访问的URL,Web 服务器在收到请求报文后,会发送应答报文给客户主机,因此过滤流程框架可按如下设计:
①在网络设备中*用户的数据包,检测到HTTP 请求报文[3],则分析该报文中嵌入的网页地址信息(即URL),提取出URL 信息,对其进行在黑白名单中进行匹配分析,根据匹配结果给予是否通过;②内容过滤采用“第一次放过”的策略,即第一次对未知URL 的返回报文仅做内容检查。收集服务器返回的HTTP响应报文,提取出应用层信息,组成完整的HTML 文档,进行内容过滤,根据判定结果进行相应的操作,整体过滤步骤如图1 所示。
图1 过滤模型
2 URL 过滤
2.1 相关定义
白(黑)名单:在该名单中的URL,必定是合(非)法的地址信息;未在该名单中的网址的合法性未知。
2.2 黑白名单机制的设计
URL 过滤框架的设计是基于两个事实:
①因特网统计表明,超过80%的用户经常访问的是20%的网页内容;②大多数用户在多数时间内访问的是合法信息的网页。
基于上述事实一,设计白名单时,仅存放经常访问的合法网站地址信息。这样设计可以保证在进行URL 匹配时,能够快速高效地判断该网页地址是否在高频白名单中。对于一段时间内访问频率不高的网页,采用老化机制将其从名单中移除。
基于上述事实二,设计将URL 白名单放在黑名单之前,若采用黑名单在前的方式,将会浪费大量时间去查找黑名单,而在大多数时间内,这些查找是不必要的。
2.3 URL 过滤
URL 过滤过程有:
①检测通过网络设备的报文,发现是HTTP 的GET 方法请求报文,提取其中携带的URL 信息,若与高频名单中的条目匹配,表示该URL 为合法,给予通过,并将该条目的统计计数加1;②若在白名单中没有匹配,则继续和黑名单中的条目进行匹配。如果匹配成功,则断开该TCP 链接,并且该匹配条目的统计计数加1;③若匹配失败,则进行内容,根据内容过滤的结果将URL添加到相应名单中。
2.4 黑白名单老化机制
黑白名单老化机制步骤如下:
①计算名单中URL 条目访问次数的平均值M,计算公式如公式1:
其中n 为表中的URL 条目数,mi为第i 个条目的统计计数值;②将老化阈值设为该平均值;③遍历所有的URL 条目,检查每个URL 条目的统计计数,若高于老化阈值,则将其保留在名单中,并且将统计计数值0,如果低于老化阈值,则将其剔除。
评论