指桑骂槐--谈伪DNS解析

    名词解释:伪DNS解析,指与互联网正规域名解析不相符的DNS解析,如在自己的私有DNS服务器上添加私有的DNS记录,在主机本地解析查询文件 hosts 中添加的IP地址域名映射等等。

    也许有人会问为什么要这么做,直接在域名服务商处添加合法的A记录不就可以了吗?所谓万事皆有因果可循,存在即为合理。伪DNS解析的存在是有它的道理的。

    1、内部应用的便捷高效访问

      这把戏被很多网管使用,比如我们有一台服务器A,内部IP地址为192.168.0.100,通过路由器B对其进行了发布,发布外部地址为 211.211.211.211,对应域名为 www.novosupport.com ,如果我们内部人员访问这个服务器照常理是应该是用www.novosupport.com的外部地址 211.211.211.211来访问,势必会经过路由器B;而我们在内部的DNS服务器上增加伪DNS解析,将 www.novosupport.com 解析到 192.168.0.100 就可以不经过路由器B了,一方面提高了访问速度,缩短了访问路径,另一方面减轻了B的负担。

    2、非公开互联网应用的发布

      当我们只想授权某些公网用户能访问我们的某些特殊Web应用而不必通过***等复杂手段的时候,我的通常做法是建立基于域名的虚拟主机,邦定非法域名,进行映射发布,同时将域名、地址对应关系告知相应访问人,让其在hosts中添加伪解析。这个伪域名可以和你的企业没有任何关系,甚至有时候会特意的使用一些知名的域名,比如baidu.com,我们发布一个web应用使用 zhidao.baidu.com 来访问,只有添加了伪记录的人才能正确访问到我们的应用,而其他人只能打开baidu自己的网站了。

    3、简易上网控制、内部侦查自动登记

      其实这个工作防火墙会解决的更好,但在没有能力购买专业防火墙的时候可以考虑这样来钓鱼。比如我们在内部的DNS服务器上添加了一个 *.kaixin123.com 的泛域名伪记录,而将其指定到我们自己的服务器上,并且制作了和原网站一模一样的页面,这时候当员工访问这个网站并且按照常理输入用户名密码之后,还要担心抓不到这个人吗?(这么做好像不怎么道德……)其实很多时候是充当了一种简易的防火墙,当我们不希望员工访问baidu.com时,我们可以添加泛域名解析*.baidu.com到我们自己的DNS服务器中,而对应的IP是一个简易的拒绝访问提示的页面,这样就简单的实现了上网控制和通知的功能。如果我们在提示页面程序上加上一些用于登记的应用,就可以做审计登记了。

    ……

    其实用处很多,写本文的最直接原因是对一些下载软件的流氓行为。通常我下载大文件都是通过自己外部托管的服务器做中转,然后使用其WEB服务发布这些下载内容,再下载到客户端中。前一阵检查Web服务日志时,发现每天都有不同的IP连接那些已经被移除的下载资源。没有找到任何搜索引擎的访问记录,那问题肯定出在迅雷这个下载工具上,当我们下载时,迅雷会把我们的下载地址和文件名收录,并开放给其它人……

    对这种事情的防治可以采取上面的第二种应用,这次中转下载文件使用了support.lenovo.com的伪域名对我的网站进行了发布,同时自己的hosts中增添了对应的记录,让迅雷收录去吧,打死它也不会找到真正的资源,除非它把所有安装了迅雷的主机hosts都改了……

    伪DNS解析从名字上讲虽然不是很正统,但如果能巧妙灵活的加以应用,会为我们的工作提供很多便利。

  

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章