一、域名系统(DNS)
域名系统DNS是Internet上使用的命名系统,用于将系统名称转换为人们易于使用的IP地址。域名系统是基于互联网的前身ARPANET开发的,在ARPANET时代,主机名和对应的IP地址是通过HOST.TXT文件集中管理的,但是随着网络的发展,流量负载也越来越大。方法与方法、域名冲突等问题为了解决这些问题,域名系统的作用越来越突出。域名系统实际上是一个名称系统。在互联网上与主机通信时,用户显然不愿意使用难以记住的32位二进制主机地址。即使是点分十进制IP地址也不容易获得。记住。因此,用户希望使用易于记忆的主机名。
1.DNS安全性分析
DNS协议是保证使用域名服务的用户正常通信的基础,DNS协议在设计上为了追求运行效率而忽略了协议的安全性。首先,完整的域名解析过程涉及到一组域名服务器,它们仅仅是信任关系。这是因为域名解析返回的查询结果正确性的前提是所有参与解析的域名服务器都提供正确的响应,并且所有的域名服务器都假设返回的结果是更高级别的。域名服务器正确,数据在传输过程中没有被恶意修改。其实这个简单的信任模型是非常脆弱的,所以如果在解析过程中修改了域名服务器上的信息或者域名服务器受到攻击,返回给客户端的查询结果就会不准确,这肯定会对用户造成影响。
其次,DNS 协议没有正确的认证机制。DNS协议支持UDP和TCP,端口号为53。但是,在大多数情况下,DNS 数据报是通过UDP 发送的,因此不需要三向握手和连接来加速数据传输。然而,为了追求DNS数据传输速度,数据的准确性还没有得到验证。DNS 客户端可以确定查询结果是否正确的唯一方法是比较查询数据报和响应数据报的相同序列号。如果不是,则丢弃响应数据报。这种身份验证方法非常不可靠。例如,通过监控网络上的数据,提取DNS查询请求,根据请求数据报中的序列号向客户端发送伪造的数据包,客户端判断响应数据报是否正确。所以在这种情况下,如果伪造的响应数据包在实际数据包之前到达客户端,客户端就会认为响应数据报是正确的。因此,这些DNS协议中存在的安全漏洞很容易被攻击者利用,发起DNS欺骗攻击,在攻击者预期的网站上定位用户,对用户的合法网站访问产生一定的影响。
此外,DNS协议的无状态性对DNS系统的安全构成了一定的威胁。所谓无状态是指DNS 协议没有用于事务处理的内存容量。随着客户不断查询同一个域名,DNS服务器不断响应查询请求,不会中断服务。如上所述,DNS服务器没有正确的认证机制,如果你控制了很多客户端,并使用这些客户端不断向DNS服务器发送虚假的域名查询请求,DNS服务器将继续匹配域名中的字符.快速消耗DNS服务器的可用资源,造成DNS服务器拥塞,造成严重的拒绝服务攻击,用户无法正常浏览网页。
2.DNS常见攻击方式介绍
2.1 DNS Query Flood攻击
DNS Query Flood攻击本质上是一种UDP泛洪攻击,属于拒绝服务攻击的范畴。这是因为对当前网络层的攻击得到了很好的解决。DNS协议位于UDP协议之上,简单地说,协议越高,涉及的工作量越大,防御系统也越复杂。并且由于DNS服务器的不可替代性,一旦DNS服务器瘫痪,攻击通常很严重。因此,近期针对DNS服务器的DNS Query Flood攻击频繁发生。
2.2 DNS欺骗攻击
DNS 查询请求数据报和响应数据报通过DNS 消息中的ID 标识号进行匹配,这也是DNS 数据报验证响应数据报有效的唯一方式。在域名解析过程中,客户端使用特定的标识号向DNS服务器发送域名查询请求数据报。当DNS服务器找到要解析的域名对应的IP地址时,DNS服务器将查询结果发送给具有相同ID标识号的客户端,客户端收到响应数据报后,查询数据报首先由对应的数据报标识,与的ID标识号进行比较。如果相等,则客户端接受响应数据报并进行下一步,否则客户端直接丢弃响应数据报并继续向DNS服务器发送查询请求。利用查询-响应原理,攻击者可以监听网络上的DNS数据,从DNS查询数据报中提取ID标识号,并根据该ID标识号伪造DNS响应数据报文返回给DNS服务器。客户。只要伪造的数据报在正确的响应数据报之前到达客户端,这个技巧就可以成功。这是最简单、最有效的DNS 欺骗攻击方法。
2.3 DNS反弹服务器攻击
反弹服务器攻击原本是一种针对网络层的攻击方式,但反弹服务器攻击通过省略入侵代理主机的步骤加快了攻击速度。反弹服务器攻击使用一组反弹服务器将所有数据包反弹到攻击目标。DNS 服务器可用作反弹服务器。由于DNS查询请求报文和响应数据报文的大小比较大,基于DNS服务器的反弹攻击流量放大效应较大。最初的协议规定UDP报文的最大长度为512字节,但随着互联网的飞速发展,为支持DNS系统的扩展,域名服务器对特殊查询请求报文返回的响应报文长度可能大于512字节,研究根据,当服务器收到请求空间服务ENDS的查询请求报文时,其生成的响应数据报文长度相应增加,如果有64字节的查询请求,则可以生成超过4000 字节消息的响应消息。由于以太网MTU 的限制,响应报文被拆分为3 个IP 数据包在网络上传输,流量放大率为1:73。
3.Ettercap嗅探工具
Ettercap 最初是一个“拥挤”的交换局域网嗅探器,但技术的进步使Ettercap 在开发过程中获得了越来越多的功能,成功地将其转变为强大而灵活的中间人攻击工具。角色。它支持许多协议的主动和被动分析,包括加密协议,并包括用于Internet 和用户计算机分析的功能。
有两种主要的嗅探选项:
(1)UNIFIED模式(中间人嗅探):同时欺骗A和B,在两者之间发送一个数据包给第三方C分析数据包,窃取原本只从A那里获取的信息和B,然后C 将它传递给目标did。这样,C 就充当了中介。
(2)BRIDGED模式(双网卡情况下嗅探两个网卡之间的数据包):比如你的电脑有两个网卡:一个无线网卡和一个有线网卡。通过将有线网卡的网络连接共享给无线网卡,电脑就变成了无线AP。来自无线网卡的所有数据流量都发送到有线网卡。所以BRIDGED 方法嗅探的是两个网卡之间的数据包。本文中描述的DNS 欺骗攻击使用UNIFIED 方法。
二、DNS欺骗攻击实战
Ettercap 包含一个DNS 插件,这使得它非常容易用于测试DNS 欺骗。在Kali Linux中输入ipconfig命令查看机器IP地址,进入etc/Ettercap目录,编辑etter.dns文件,在终端输入/etc/init.d/apachhe2start命令启动web服务器。然后启动ettercap图形界面,完成各种配置。最后测试一下效果。如果在指定IP电脑上输入原网址,就可以进入黑客创建的网站,随意访问其他网站。显示所有无法访问的网页。
1.获取目标主机的IP地址
事实上,黑客主要是利用社会工程来获取目标主机的IP地址,这是一种利用人为弱点通过通信获取有价值信息的非技术渗透手段,是对企业安全的最大威胁之一。威胁在于隐蔽,有时在与人交流时,会暴露出一条或多条信息,例如用户名、手机号码等看似无关紧要的信息,让黑客可以通过社会工程获取互联网上的一切。有信息的痕迹。有四种主要的社会工程攻击方式。
(1) 冒名顶替:复制网址,伪装成与网站界面相同的网页,用户打开网站后即可完成预定任务。
(2) 报答真相:双方通过利益交换来交易自己的需求,骗子每次都提供更多的利润,从而诱使对方在后续的攻击中提供帮助。
(3)被异性吸引:利用情绪从诡计中获取信息。
(4)许以利益:利用人性的贪婪,诱使他们点击链接等方式获取信息。
2.进行Ettercap图形界面的攻击
2.1 编辑 Ettercap 所使用的 DNS 配置文件并打开 Ettercap 图形化界面。
leafpad /etc/ettercap/etter.dns //通过Leafpad打开配置文件修改
DNS配置文件
* A 211.80.208.5 //在www.linux.org下增加一条记录,使所有网站都映射到此IP地址ettercap -G //打开Ettercap图形化界面
2.2 选择工作网卡
选择Sniff一栏下的Unified sniffing进行工作网卡的选择(默认选择eth0,如果有无线网卡,则可以选择wlan0)
2.3 扫描并显示主机列表
在Hosts下选择Scan for hosts开始扫描主机,出现5 host added to the hosts list表示扫描出5个地址,然后选择Hosts选项下的Hosts list显示扫描主机列表。
2.4 添加目标主机 IP 地址
选择要添加的主机地址,点击 Add to Target 1 添加被攻击目标主机,显示 Host 192.168.226.137 added to TARGET 表示添加成功。
2.5 选择APR毒化攻击
选择Mitm选项下的ARP poisoning,再在弹出的选项框中选择Sniff remote connections 进行ARP毒化攻击。
2.6 选择DNS欺骗攻击,并启动攻击
选择Plugins选项下的Manage the liugins,再在弹出的Pliugins界面中选择dns_spoof,点击Start选项下的Start sniffing开始DNS欺骗攻击。
2.7 检验攻击效果
在目标主机上面访问www.baidu.com,跳转到了前面映射的网站211.80.208.5。
2.8 停止攻击
选择 Start 选项下的 Stop sniffing 停止 DNS 欺骗攻击;显示 Unified sniffing was stopped 表示已停止 DNS 欺骗攻击;停止攻击后用户上网恢复正常;ipconfig /flushdns //Windows 系统清除 DNS 缓存。
3.DNS欺骗攻击防御方法
从社会工程学角度出发,不轻易相信他人,坚信天上不可能掉馅饼。
保护自己的网络设备,如果自己的网络设备很安全,那么就很难被木马所感染。
鉴于DNS欺骗攻击原理,即改变DNS服务器当中的IP地址来实现欺骗攻击,我们可以尝试绑定DNS服务器中的IP地址以及网卡的MAC地址,然后通过得到的DNS服务器应答数据来判断是否为真。