一,用路由器统筹HOSTS防范恶意站点攻击的原理:
在开头我们介绍了传统的通过编辑HOSTS文件来防范员工计算机对恶意站点域名的访问,我们在系统目录中的c:windowssystem32driversetc目录下将能够看到该文件的存在,HOSTS文件在功能运行时的优先级是高于DNS解析的,说白了这里存在的域名对应关系将直接被使用,所以将恶意站点对应的IP地址在HOSTS文件中进行指定后,再访问这些恶意站点时将自动转发到指定的IP地址而避免感染病毒和木马的危险。(如图1)
添加到HOSTS文件中的对应关系类似“127.0.0.1 www.sex.com“这样的格式,这样该计算机在本机访问www.sex.com时将自动指向127.0.0.1,从而避免被www.sex.com站点上的流氓插件和病毒程序所感染。(如图2)
不过这样的单纯修改HOSTS文件的方法效率太低,对于企业内部有几十台甚至上百台计算机的情况,我们需要反复编辑HOSTS来达到过滤的目的。整体实施效率比较低,而且一旦有了新的恶意站点出现我们要添加新条目时又要重新执行上述全部操作。
实际上我们完全可以曲线救国从路由器下手统筹管理HOSTS文件的解析功能,这样一方面避免了反复编辑HOSTS到各个主机的繁重工作,另一方面也为日后更新HOSTS文件的对应条目提供了更加便利的方法。
二,用路由器统筹HOSTS防范恶意站点攻击:
一般来说中小企业的接入路由器中都会有专门针对DHCP和DNS的设置功能,我们可以通过这些功能来完善DNS解析过滤,通过DNS解析过滤功能实现统筹管理HOSTS来防范恶意站点的攻击。
笔者以图形化管理界面的路由器为例进行介绍,使用的固件程序是TOMATO,当然如果实际环境中是其他诸如DD-WRT的固件的话通本文介绍的方法来实施也是没有任何问题的。具体操作步骤如下。
小提示:
如果要在命令行模式的路由器下统筹HOSTS防范恶意站点攻击的话我们必须参考说明文档中的相关命令来实施。
第一步:进入到路由器管理界面,然后选择Advanced->DHCP/DNS。(如图3)
第二步:在这里我们会看到名为dnsmasq custom configuration的区域,在这里输入要进行过滤的域名和IP地址。具体格式为address=/domain.name/127.0.0.1。(如图4)
小提示:
对于ddwrt固件来说相关功能选项在Administration->Services->DNSMasq下,我们可以在该参数下进行设置,具体实施结果和步骤与TOMATO中类似。
第三步:设置了过滤信息后我们在本地计算机中输入相关网页首先会出现GOOGLE查找页面,实际上这已经证实我们的设置是生效的,www.it168.com域名已经顺利的被我们过滤了。(如图5)
第四步:再次输入www.it168.com或者通过刚才的GOOGLE页面访问时将出现“Internet Explorer无法显示该页面“的提示,实际上在本机访问时我们会发现www.it168.com被我们指向了127.0.0.1这个本地地址,自然无法打开任何页面信息。(如图6)
第五步:当然如果要针对多个域名和站点进行过滤的话,我们只需要按照上文介绍的方法依次添加多个条目即可,每个过滤条目单独一行显示,我们可以通过复制粘贴等操作快速添加过滤条目。最终实现的效果和对单一站点进行过滤是一样的。(如图7)
DNSMasq是tomato/ddwrt都带的dns服务器,通过他我们可以顺利实现转发/dns cache等信息,本文正是利用此功能来实现统筹HOSTS防范恶意站点攻击的。最后还需要额外说明几点的是——
(1)在路由器中配置一次,内网所有机器各种系统都将生效。
(2)通过此方法可以实现泛域名解析,这是hosts不可能实现的。例如输入*.domain.name->127.0.0.1则将会把所有domain.name下的域名都指向127.0.0.1,从而实现过滤功能。
小提示:
例如过滤时输入*.it168.com->127.0.0.1,那么不管我们访问wireless.it168.com还是safe.it168.com都将被过滤掉而无法顺利显示相应页面。而编辑HOSTS时我们则需要针对wireless.it168.com和safe.it168.com两个地址添加两个不同的条目才能实现过滤规则。
三,总结:
我们可以通过此方法来防范恶意站点的攻击,避免员工计算机访问相关的危险网站,同时我们还可以用这个方法屏蔽软件升级和在线验证等操作。另外相比HOSTS文件的单域名过滤而言,此方法的泛域名更得到网络管理员的青睐,毕竟通过泛域名过滤功能可以同一时间针对多站点多域名信息的统一过滤。如果还按照HOSTS编辑法来过滤的话恐怕需要填写几十行的过滤条目。