2.4 DNS欺骗实现
2.4.1 硬件与软件要求
(1)硬件设备:攻击者PC、USB无线网卡、局域网(无线路由器)、被攻击者设备(可以是手机或PC)
(2)软件要求:KaliLinux
2.4.2 搭建攻击环境
该步骤针对windows系统,Kali Linux系统可直接跳过。
(1)安装虚拟机与KaliLinux
首先在windows系统中安装VMware虚拟机,在虚拟机中安装KaliLinux
图3 Kali Linux登录界面
出现登录界面,如图3所示,则说明系统安装成功,输入用户名和密码之后可以进入系统。为了更好的操作Kali Linux,可以选择安装VMware Tools,但是这并不是DNS攻击的必要步骤
(2)设置Kali Linux网络连接
首先设置虚拟的网络连接方式:桥接模式。单击确定完成修改。如图4所示。设置Kali Linux与无线网卡连接,如图5所示。
图4 设置Kali Linux网络连接
图5 虚拟机与无线网卡连接设置
设置Kali Linux通过无线网卡与无线网络直接连接,这样就可以在网络上实现windows与Kali Linux分离,变成网络中的两台主机。在浏览器中输入baidu.com。出现百度的首页,如图6所示,则说明网络连接成功。
图6 测试网络连接成功
(3)将用于被攻击的设备连入局域网。(如果是采用虚拟机,则可用宿主机当作被攻击者,如果不采用虚拟机,则要在局域网中连接新设备)。
2.4.3 设置欺骗内容
Kali Linux系统中自带apache服务器,在/var/www/html目录下可以找到index.html文件,如图7所示,该文件是默认的首页。根据自己的设计对首页进行修改。
在/var/www/html目录下打开Terminal,输入vim index.html,按“i”键进入编辑模式,将文件中的内容替换为以下内容。
1701210869KANG YU CHENG |
编辑完成后按ESC键退出编辑模式,执行命令“:wq”保存并退出。
完成编辑后,执行命令“/etc/init.d/apache2/restart”重启服务器。重启之后查询本机IP地址后,在浏览器中输入本机IP地址,其显示内容与index.html内容一致,如图7所示。欺骗内容设置完毕。
图7 修改欺骗首页
2.4.4 设置欺骗网址
这里所说的欺骗网址,是指用户原本想要访问的网址,以www.baidu.com为例,假定用户想要访问的网址是www.baidu.com。DNS欺骗要做的就是要在用户访问www.baidu.com之时,跳转到的页面是上文所设置的欺骗页面。
在etc/ettercap目录下打开Terminal,输入命令“vim etter.dns”,并修改文件内容,在相应位置添加www.baidu.com与本机IP的映射,如图8所示。编辑完成后按ESC键退出编辑模式,执行命令“:wq”保存并退出。
此外也可以对所有的用户输入网址进行欺骗,该设置办法如图9所示
图8 修改欺骗网址
图9 修改欺骗网址2
2.4.5 DNS欺骗攻击
输入命令ettercap -G打开ettercap,如图10所示。按下快捷键Ctrl+u选择合适的网卡,单击OK确认选择。
图10 ettercap初始界面
按下快捷键Ctrl+s完成Scan for hosts, Ctrl+H显示搜索结果,并在结果中发现了本机IP,将本机IP执行“Add to Target1”将要攻击的IP执行“Add to Target2”,如图11所示。
图11 添加攻击目标
设置结果如图12所示。Target2中所列的IP地址是诱导被攻击者访问的IP地址,Target2中所列的IP地址是被攻击的IP地址。其中192.168.1.103是虚拟机宿主机的IP地址。
图12 添加攻击目标结果
接下来进行ARP攻击,选择Mitm下的ARP poisoning,勾选Sniff remote connections,如图12所示。
图13 Sniff remote connections
最后进行DNS欺骗,选择Plugins选项下的Manage the plugins或使用快捷键Crtl+P,如图14所示。双击dns_spoof,如图15所示。
图14 选择dns_spoof
图15 开启dns_spoof
至此攻击端的工作完成。
2.5 DNS欺骗结果测试
在宿主机上,打开火狐浏览器,随机输入域名访问网站,其中火狐网、新浪网、优酷网,均不能避免DNS欺骗,而北大邮件系统能够避免DNS攻击。其测试结果如图13所示。
图16 火狐浏览器测试结果
在宿主机上,打开谷歌浏览器,随机输入域名访问网站,其中CSDN、icbc.com(可当作工商银行钓鱼域名)、news.baidu.com,均不能避免DNS欺骗;而百度首页能够避免DNS攻击。其测试结果如图17所示。
图17 谷歌浏览器测试结果