DNS欺骗技术研究与实现

来源 :硅谷 | 被引量 : 0次 | 上传用户:fiveboy0714
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  [摘要]DNS欺骗攻击是攻击者常用的手法,它具有隐蔽性强、打击面广、攻击效果明显的特点。分析在以太网中利用对网络数据监听,来截获DNS报文,进而伪造DNS报文进行DNS欺骗的技术,并给出基于WinPcap的实现。
  [关键词]DNS 欺骗 监听 WinPcap
  中图分类号:TP3文献标识码:A文章编号:1671-7597(2009)0810042-01
  
  一、DNS欺骗的基本原理
  
  我们在设置我们的网络时经常要设置DNS地址。当我们输入一个网址的时候,就有一个DNS请求发到设置的DNS服务器上去,然后DNS服务器告诉你你访问的网站对应的IP。于是你的浏览器就会到相应的IP上面去取回网页。那么如果我想欺骗你,我只需要在DNS服务器给你答复之前给你一个假的回答就可以了。但在三层交换网络中,只有广播包会发到所有端口,其他包都只会在对应端口之间传送。要让他的DNS查询发到你的机器上来就需要伪装成网关,因为我们是通过网关上网,所以所有外发的包都要过网关。
  而且ARP是后更新的,他和DNS相反,DNS对先到的回答做相应,ARP对后到的消息做缓存更新,于是我们就想出了一个好办法,比如我的MAC是01:02:03:04:05:06。首先,我告诉我想欺骗的主机,我是网关,比如我给172.30.52.174的主机发一个ARP查询或应答包说172.30.52.1(网关)对应的MAC是01:02:03:04:05:06,同时告诉网关172.30.52.174
  的IP对应的MAC是01:02:03:04:05:06于是172.30.52.174把发给网关的包都给了我,同时网关也把给172.30.52.174的包都给了我,我在他们之间做一个包转发,就行了,这样所有的包都通过我了,后面的DNS欺骗就和前面一样了。
  
  二、系统流程图
  
  三、打开网卡并捕获数据流
  
  DNS欺骗的基础是捕获DNS请求的数据包。首先我们就介绍如何捕获数据包。promisc指明网卡处于混杂模式,在正常情况下网卡只接受去往它的包而去往其他主机的数据包则被忽略。相反当网卡处于混杂模式时他将接收所有的流经它的数据包:这就意味着在共享介质的情况下我门可以捕获到其它主机的数据包。大部分的包捕获程序都将混杂模式设为默认,所有我们在下面的例子里也将网卡设为混杂模式。
  to_ms参数指定读数据的超时控制,超时以毫秒计算。当在超时时间内网卡上没有数据到来时对网卡的读操作将返回。还有,如果网卡处于统计模式下to_ms还定义了统计的时间间隔。如果该参数为0那么意味着没有超时控制,对网卡的读操作在没有数据到来是将永远堵塞。如果为-1那么对网卡的读操作将立即返回不管有没有数据可读。
  一旦网卡被打开,就可以调用pcap_dispatch()或pcap_loop()进行数据的捕获,这两个函数的功能十分相似不同的是pcap_dispatch()可以不被阻塞,而pcap_loop()在没有数据流到达时将阻塞。在简单的例子里用pcap_loop()就足够了,而在一些复杂的程序里往往用pcap_dispatch()。
  这两个函数都有返回的参数,一个指向某个函数(该函数用来接受数据如该程序中的packet_handler)的指针,libpcap调用该函数对每个从网上到来的数据包进行处理和接收数据包。另一个参数是带有时间戳和包长等信息的头部,最后一个是含有所有协议头部数据报的实际数据。
  
  四、一些协议和数据结构
  
  首先我们来看DNS的包结构,我们知道DNS可以通过TCP也可以通过UDP传输,不过实际使用中99%以上使用UDP。所以下面只是对UDP的DNS做阐述。
  DNS包结构是:以太网头+IP头+UDP头+DNS部分(B代表字节)
  从以太网头开始:目的MAC(6B) | 源MAC(6B) | 0x0800(2B表示上层是IP)
  IP头:协议版本和IP头长度(1B) | 服务(1B) | IP包长度(2B,去以太网头的长度) | ID号(2B) | 标识(1B) | 偏移(1B) | TTL(1B) | 0x11(上层协议UDP) | IP校验和(2B) | 源IP(4B) | 目的IP(4B)
  UDP头:源端口(2B) | 目的端口(2B) | UDP包长度(2B,去以太网头和IP头) | UDP校验和(2B)
  DNS部分:ID号(2B很重要) | 标识(2B) | 问题数目(2B) | 回答数目(2B) | 权威回答数目(2B) | 附加数目(2B) | 问题字段(长度不定) | 回答字段(长度不定) | 权威字段(长度不定) | 附加字段(长度不定)
  问题和回答,权威,附加都是RR记录格式,格式如下:
  名字(2B) | 类型(2B) | 类(2B) | 存活时间(4B) | 数据长度(2B) | IP地址(4B)
  我们本着越简单越好的做法,构造尽量短的回复,所以回答个数为1,权威和附加都为0。如果是请求包,到问题字段就完了,如果是回答,还有构造回答字段。
  
  五、DNS应答包
  
  下面开始构造伪造包:
  以太网部分:交换源和目的的MAC地址。IP部分:计算修改包长度为你构造的假包IP部分长度,标识改为0x04(不分段),校验和改为你计算的IP首部校验和,交换源和目的IP。UDP部分:交换源和目的端口号,包长度改为你构造的假包UDP部分长度。校验和可以添0x0000或者自己算(是可选字段,首先计算费时间,影响发包速度,其次容易算错,我算了3天,老是错,原来要加一个UDP伪头,参考《TCP/IP祥解》)。DNS部分:问题数0x0001,回答数0x0001,权威0x0000,附加0x0000,问题字段直接拷贝,回答字段如下:名字0xc00c,类和类型都是0x0001,时间添长点,长0x0004,IP:你想转向的IP地址。
  到这里假的应答就伪造好了。先简要说说代码,这里只有构造DNS回应部分的代码,我们还做了网址匹配,捕获到数据包以后首先判断是否欺骗此IP,如果欺骗再构造欺骗数据包并发送给改机器,否则不处理。同时对不同的域名返回不同的地址。只有别人输入相应的网址才给转向指定的IP地址。
  
  参考文献:
  [1]蒋东兴、林鄂华,Windows Sockets网络程序设计指南,北京:清华大学出版社,1995年,7-29.
  [2]Mclean著,《Windows 2000 TCP/IP技术内幕》,北京机械工业出版社,2001.10.
  [3]Thomposn著,《MFC开发人员参考手册》,北京:机械工业出版社,1998.8.
其他文献
[摘要]从多个层面分析sniffer的嗅探原理,能攻击的协议,可能造成的危害,并介绍对其的防范技术,为研究Sniffer技术和防范网络嗅探,保障网络安全提供了技术支持。  [关键词]Sniffer 攻击 Sniffer原理 Sniffer防范  中图分类号:TP3文献标识码:A文章编号:1671-7597(2009)0810039-01    一、引言    随着Internet及电子商务的日益普
期刊
[摘要]把LiAlO2晶体中掺杂V3+离子后的晶体结构近似成 对称;利用晶体场理论计算 晶体的详细能级,而且能级值与实验值吻合很好,从而说明掺杂V3+离子后的晶体结构对称性降低。  [关键词]电子自旋共振 Racah理论 d-d跃迁   中图分类号:O74文献标识码:A文章编号:1671-7597(2009)0810001-02    一、引言  掺杂过渡金属离子晶体光磁性质的研究已经受到广泛的关
期刊
[摘要]阐述CPLD的嵌入式包过滤型硬件防火墙的原理,并使用MAX+PLUS II软件进行软件的编译和仿真,通过实例说明防火墙的实现方式,从实践和理论结合的角度论述其存在的可行性。  [关键词]嵌入式网络硬件防火墙 CPLD Max+plus II  中图分类号:TP3文献标识码:A文章编号:1671-7597(2009)0810041-01    一、引言    防火墙的作用主要是保护系统不受未
期刊
[摘要]随着互联网的迅猛发展。对网站建设提出更高的要求。主要阐述PHP技术在网页设计与实现。网页自动生成工具是为解决传统建站方法的不足,在市场需求的大环境下应运而生的,从而降低制作网页的技术门槛,使非专业技术人员也可以快速、高效地完成自己的网页,从而实现网址自助建设、管理和更新。  [关键词]PHP技术 网页自动生成 网站建设  中图分类号:TP3文献标识码:A文章编号:1671-7597(200
期刊
[摘要]阐述一种基于LabVIEW的线性电子线路实验系统。该系统采用自行设计的电路硬件系统与虚拟测量系统相结合的模式,为线性电子线路实践教学提供更为科学、更为有效的解决方案。  [关键词]LabVIEW 虚拟仪器 Protel 线性电子线路  中图分类号:TN4文献标识码:A文章编号:1671-7597(2009)0810016-01    一、引言    《线性电子线路》是一门实践性较强的电子类
期刊
[摘要]根据实际工作经验,详细讲解Windows组策略的基本知识及各个部分的作用,并利用组策略的特点,适当地进行设置,使其能更有效地提高系统的安全性及实用性,并用实例说明组策略的设置方法。  [关键词]组策略 管理 系统安全 权限设置  中图分类号:TP3文献标识码:A文章编号:1671-7597(2009)0810047-02    一、组策略的基本知识    组策略是管理员为用户和计算机定义并
期刊
[摘要]介绍Mastercam X数控加工软件在生产铝合金轮毂实际中的应用,提高生产效率、增强企业竞争力。  [关键词]Mastercam X 加工 铝合金轮毂 CAD/CAM  中图分类号:TP2文献标识码:A文章编号:1671-7597(2009)0810051-01    Mastercam X是美国CNC公司开发的基于PC平台的CAD/CAM软件。由CAD和CAM两部分组成,其中CAD设计
期刊
[摘要]针对传统的A*算法在无人机航迹规划问题中的局限性,提出一种改进的A*算法,并结合无人机的性能约束直接对三维空间进行航迹搜索。算法有效的减少搜索空间,缩短搜索时间。仿真结果证明改进算法的有效性。  [关键词]航迹规划 三维航迹 改进A*算法  中图分类号:TP2文献标识码:A文章编号:1671-7597(2009)0810017-02    一、基于改进A*算法的无人机三维航迹规划  (一)
期刊
[摘要]设计一套具有交互式图形界面的直流电机虚拟测控网络,它由下位机现场监控、现场总线通信和上位机集中管理三部分组成。该测控网络具有以下功能:(1)控制现场设备;(2)监视测试过程;(3)记录、整理并分析测试结果。  [关键词]CAN总线 虚拟仪器 LabVIEW 数据库  中图分类号:TP3文献标识码:A文章编号:1671-7597(2009)0810050-01    一、引言    目前,许
期刊
中图分类号:TP2文献标识码:A文章编号:1671-7597(2009)0810052-01    随着科技的飞速发展,传统身份识别(如口令、身份卡等)容易遗失、易被破解等问题逐渐暴露,已不能满足各种安全需要。人们期望有一种更加可靠的技术来进行身份鉴别。生物特征识别技术给这一切带来了可能。由于人的面部特征难以复制和假冒,从而被应用到最现代化的小区门禁管理系统中。人脸识别门禁技术是利用计算机分析人脸
期刊