中间人攻击之DNS欺骗

时间:2024-03-29 08:24:02

2.4  DNS欺骗实现

2.4.1  硬件与软件要求

(1)硬件设备:攻击者PC、USB无线网卡、局域网(无线路由器)、被攻击者设备(可以是手机或PC)

(2)软件要求:KaliLinux

2.4.2  搭建攻击环境

该步骤针对windows系统,Kali Linux系统可直接跳过。

(1)安装虚拟机与KaliLinux

首先在windows系统中安装VMware虚拟机,在虚拟机中安装KaliLinux

中间人攻击之DNS欺骗

图3  Kali Linux登录界面

出现登录界面,如图3所示,则说明系统安装成功,输入用户名和密码之后可以进入系统。为了更好的操作Kali Linux,可以选择安装VMware Tools,但是这并不是DNS攻击的必要步骤

(2)设置Kali Linux网络连接

首先设置虚拟的网络连接方式:桥接模式。单击确定完成修改。如图4所示。设置Kali Linux与无线网卡连接,如图5所示。


中间人攻击之DNS欺骗

图4 设置Kali Linux网络连接

中间人攻击之DNS欺骗

图5  虚拟机与无线网卡连接设置

设置Kali Linux通过无线网卡与无线网络直接连接,这样就可以在网络上实现windows与Kali Linux分离,变成网络中的两台主机。在浏览器中输入baidu.com。出现百度的首页,如图6所示,则说明网络连接成功。

中间人攻击之DNS欺骗

图6  测试网络连接成功

(3)将用于被攻击的设备连入局域网。(如果是采用虚拟机,则可用宿主机当作被攻击者,如果不采用虚拟机,则要在局域网中连接新设备)。

2.4.3  设置欺骗内容

Kali Linux系统中自带apache服务器,在/var/www/html目录下可以找到index.html文件,如图7所示,该文件是默认的首页。根据自己的设计对首页进行修改。

在/var/www/html目录下打开Terminal,输入vim index.html,按“i”键进入编辑模式,将文件中的内容替换为以下内容。

<!DOCTYPE HTML>

<html>

<head>

<title>DNS by kangyucheng </title>

<body>

<h1>1701210869</h1>

<p>KANG YU CHENG</p>

</body>

</html>

编辑完成后按ESC键退出编辑模式,执行命令“:wq”保存并退出。

完成编辑后,执行命令“/etc/init.d/apache2/restart”重启服务器。重启之后查询本机IP地址后,在浏览器中输入本机IP地址,其显示内容与index.html内容一致,如图7所示。欺骗内容设置完毕。

中间人攻击之DNS欺骗

图7  修改欺骗首页

2.4.4  设置欺骗网址

这里所说的欺骗网址,是指用户原本想要访问的网址,以www.baidu.com中间人攻击之DNS欺骗为例,假定用户想要访问的网址是www.baidu.com。DNS欺骗要做的就是要在用户访问www.baidu.com之时,跳转到的页面是上文所设置的欺骗页面。

在etc/ettercap目录下打开Terminal,输入命令“vim etter.dns”,并修改文件内容,在相应位置添加www.baidu.com与本机IP的映射,如图8所示。编辑完成后按ESC键退出编辑模式,执行命令“:wq”保存并退出。

此外也可以对所有的用户输入网址进行欺骗,该设置办法如图9所示

 

中间人攻击之DNS欺骗

图8  修改欺骗网址

中间人攻击之DNS欺骗

图9  修改欺骗网址2

2.4.5  DNS欺骗攻击

输入命令ettercap -G打开ettercap,如图10所示。按下快捷键Ctrl+u选择合适的网卡,单击OK确认选择。


中间人攻击之DNS欺骗


图10  ettercap初始界面

按下快捷键Ctrl+s完成Scan for hosts, Ctrl+H显示搜索结果,并在结果中发现了本机IP,将本机IP执行“Add to Target1”将要攻击的IP执行“Add to Target2”,如图11所示。

中间人攻击之DNS欺骗

图11  添加攻击目标

设置结果如图12所示。Target2中所列的IP地址是诱导被攻击者访问的IP地址,Target2中所列的IP地址是被攻击的IP地址。其中192.168.1.103是虚拟机宿主机的IP地址。

中间人攻击之DNS欺骗

图12  添加攻击目标结果

接下来进行ARP攻击,选择Mitm下的ARP poisoning,勾选Sniff remote connections,如图12所示。


中间人攻击之DNS欺骗中间人攻击之DNS欺骗

图13  Sniff remote connections

最后进行DNS欺骗,选择Plugins选项下的Manage the plugins或使用快捷键Crtl+P,如图14所示。双击dns_spoof,如图15所示。

中间人攻击之DNS欺骗

图14  选择dns_spoof

中间人攻击之DNS欺骗 

图15  开启dns_spoof

至此攻击端的工作完成。

2.5  DNS欺骗结果测试

在宿主机上,打开火狐浏览器,随机输入域名访问网站,其中火狐网、新浪网、优酷网,均不能避免DNS欺骗,而北大邮件系统能够避免DNS攻击。其测试结果如图13所示。

中间人攻击之DNS欺骗

图16  火狐浏览器测试结果

在宿主机上,打开谷歌浏览器,随机输入域名访问网站,其中CSDN、icbc.com(可当作工商银行钓鱼域名)、news.baidu.com,均不能避免DNS欺骗;而百度首页能够避免DNS攻击。其测试结果如图17所示。

中间人攻击之DNS欺骗

图17  谷歌浏览器测试结果