当前位置导航:炫浪网>>网络学院>>操作系统>>Linux教程

DNS欺骗


  【摘要】
  
  DNS欺骗可以用来上BBS隐藏ip,但其作用远远不止这些。
  
  【简述】
  
  熟悉网络的人都知道,当客户向一台服务器请求服务时,服务器方一般会
  根据客户的ip反向解析出该ip对应的域名。这种反向域名解析就是一个查DNS
  (Domain Name Service)的过程。
  
  如果客户的ip对应有域名,那么DNS查询会返回其域名。服务器端得到这
  一机器名后会将其记录下来并传递给应用程序,于是我们可以看到有人上bbs
  来自argo.zsu.edu.cn,其实她来自202.116.64.6——“逸 仙 时 空” BBS。
  细心的人会发现BBS上显示ip的栏是有长度局限的,因此若客户机的域名足够
  长便可隐藏住自己机器名,如parallelcomput其实是parallelcomputing.xx.
  xxx.xxx.xx。这便是隐藏ip的方法之一,此法要和网管比较熟或者咱自己就
  是DNS网管。
  
  让我们换个思路:如果服务器在进行DNS查询时能够人为地给它我们自己
  的应答信息结果会怎样呢?答案显然不用我说了,这就是著名的DNS欺骗(dns
  spoofing)。说实话,DNS欺骗威力巨大,把它用来在BBS上隐藏ip实在是杀
  鸡用牛刀。
  
  【详述】
  
  现有的大多数DNS服务实现存在两个比较“好”的性质。
  
  其一为当DNS服务器收到一合法的DNS应答信息时它会接受这一返回包中的
  所有信息,并存入CACHE。举一个例子:在10.10.1.2的用户要TELNET到100.100
  .100.100上,100.100.100.100使用的DNS为100.100.100.200。三次握手后100.
  100.100.100会向100.100.100.200发一PTR类型的DNS查询(由IP查主机名):
  
  100.100.100.100 -> 100.100.100.200 [Query]
  NQY: 1 NAN: 0 NNS: 0 NAD: 0
  QY: 2.1.10.10.in-addr.arpa PTR
  
  而100.100.100.200并没有关于用户IP对应域的信息。它首先根据DNS协议
  极其配置查找出10.10.1.2的授权DNS服务器——10.10.1.5。然后向其发出查
  询包:
  
  100.100.100.200 -> 10.10.1.5 [Query]
  NQY: 1 NAN: 0 NNS: 0 NAD: 0
  QY: 2.1.10.10.in-addr.arpa PTR
  
  这里隐蔽了iterative与recursive两种方式的区别,一般的DNS设置为
  iterative,recursive为可选。详见rfc1034。
  
  10.10.1.5收到该查询信息后便可返回10.10.1.2对应的域名:
  
  10.10.1.5 -> 100.100.100.200 [Answer]
  NQY: 1 NAN: 2 NNS: 1 NAD: 1
  QY: 2.1.10.10.in-addr.arpa PTR
  AN: 2.1.10.10.in-addr.arpa PTR client.host.com DNS欺骗
相关内容
赞助商链接