局域网DNS欺骗 dns 欺骗

原理介绍域名系统(DNS)是一种用于TCP/IP应用程序的分布式数据库,提供主机名字和IP地址之间的转换信息,通常网络用户通过UDP和DNS服务器进行交换,服务器通常会在53号端口监听域名查询的请求。在DNS数据报中有个字段为id,windows下是根据这个id是否匹配来判断是否是自己发出的域名查询结果。欺骗原理:Client<-----------response-----------|.......................DNSServerClient|<--------[a.b.c=0.0.0.0]----YourComputer这里讨论的是局域网内的欺骗,本地的主机或者DNS服务器中至少有一台是与自己的主机在同一个局域网内。首先我们以客户端的名义向网关发送ARP响应数据报,不过其中将源MAC地址改为我们自己主机的MAC地址;同时以网关的名义向客户端主机发送ARP响应数据报,同样将源MAC地址改为我们自己主机的MAC地址。这样以来,网关看来客户端的MAC地址就是我们主机的MAC地址;客户端也认为网关的MAC地址为我们主机的MAC地址。由于在局域网内数据报的传送是建立在MAC地址之上了,所以网关和客户端之间的数据流通必须先通过本地主机。

  在监视网关和客户端主机之间的数据报时,如果发现了客户端发送的DNS查询数据报(目的端口为53),那么我们可以提前将自己构造的DNS响应数据报发送到客户端。注意,我们必须提取有客户端发送来的DNS查询数据报的ID信息,因为客户端是通过它来进行匹配认证的,这就是一个我们可以利用的DNS漏洞。这样客户端会先收到我们发送的DNS响应数据报并访问我们自定义的网站,虽然客户端也会收到DNS服务器的响应报文,不过已经来不及了。

工具、环境

windows系统、visualstudio集成开发环境、wpdpack4.1

核心代码

1.DNS相关

  //将网卡设置为混杂模式

 PacketSetHwFilter(lpadapter,NDIS_PACKET_TYPE_PROMISCUOUS);

  //设置网络适配器的内核缓存; 

  PacketSetBuff(lpadapter,500*1024);

//设置等待时间

  PacketSetReadTimeout(lpadapter,1);

//接收网络数据

  PacketReceivePacket(lpadapter,lppacketr,TRUE);

  //计算校验和

  checksum((USHORT*)temp,sizeof(PSD)+sizeof(UDPHDR)+sizeof(DNS)+ulen+sizeof(QUERY)+sizeof(RESPONSE));

  //初始化一个PACKET结构,发送DNS响应数据报

  PacketInitPacket(lppackets,sendbuf,sizeof(ETHDR)+sizeof(IPHDR)+sizeof(UDPHDR)+sizeof(DNS)+ulen+4+sizeof(RESPONSE));

2.ARP欺骗相关

//初始化ARP响应数据报

PacketInitPacket(lppackets,sendbuf,sizeof(eth)+sizeof(arp));

  //发送ARP欺骗的响应数据报

  PacketSendPacket(lpadapter,lppackets,TRUE);

  //获取网络适配器的属性

局域网DNS欺骗 dns 欺骗

  GetAdaptersInfo(padapterinfo,&adapterinfosize);

  //发送ARP请求数据报,请求网络主机的MAC地址

  SendARP(destip,0,pulmac,&ullen);

3.一些核心的数据结构

主要包括DNS请求、响应、ARP报文、网络适配器信息结构,具体可查看相关材料,这里不列出。

  

爱华网本文地址 » http://www.aihuau.com/a/25101017/333257.html

更多阅读

DNS服务器未响应怎么办? dns辅服务器未响应原因

DNS服务器未响应怎么办?——简介碰到这个情况的用户太多了,但是基本没有同一的解决方法,笔者当然也经常碰到,尤其是这几天,都快砸电脑了,太影响工作了,没有办法自己动手了,不过终于解决了,过程如下:DNS服务器未响应怎么办?——方法/步骤DNS服

宽带路由器DNS已被恶意篡改怎么办 网站被恶意篡改怎么办

宽带路由器DNS已被恶意篡改怎么办——简介什么叫DNS被篡改DNS负责域名到IP地址的映射工作,是整个互联网的基石。由于DNS异常重要,任何修改你DNS设置的行为,如果没有明确告知欲将你的DNS改换成什么IP、并征得你同意,都可以视为DNS篡

dns是什么 dns服务器是什么? dns服务器未响应

dns是什么 dns服务器是什么?——简介DNS是什么,DNS服务器是什么?有很多朋友都问过小编这样的问题,小编也一一进行了详细的,然而还是有一些没有接触过的朋友不是太懂,所以小编今天给大家来进行详细的介绍,下面让我们一起来看看DNS是什么,DNS

找不到服务器或 DNS错误 手机dns或ip错误

找不到服务器或 DNS错误——简介这个故障也是我们平时在上网的时候经常碰到的,很让人烦恼,那么怎么解决这一问题呢?笔者分享一下解决的过程找不到服务器或 DNS错误——方法/步骤找不到服务器或 DNS错误 1、首先确定输入的网址是否正确

修复 dns故障 360dns修复工具

修复 dns故障——简介DNS 是域名系统(Domain Name System) 的缩写,是因特网的一项核心服务,它作为可以将域名和IP地址相互映射的一个分布式数据库,能够使人更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。DNS故障的最常见

声明:《局域网DNS欺骗 dns 欺骗》为网友奈何空海有泪分享!如侵犯到您的合法权益请联系我们删除