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”键进入编辑模式,将文件中的内容替换为以下内容。

<!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所示。欺骗内容设置完毕。

图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  谷歌浏览器测试结果

中间人攻击之DNS欺骗相关推荐

  1. 深度好文 | 中间人攻击、ARP欺骗背后的原理及漏洞还原

    作者 | 杨秀璋 来源 | CSDN博客 头图 | 付费下载自视觉中国 出品 | CSDN(ID:CSDNnews) 本文将详细讲解中间人攻击或ARP欺骗攻击,从ARP原理到局域网配置进行描述,重点是 ...

  2. 投毒、伪装、攻击,DNS 欺骗和钓鱼网站如何一步步诱人掉入陷阱?

    [编者按]这篇文章将详细讲解DNS欺骗(DNS投毒)及钓鱼网站原理知识,并通过Ettercap工具复现某购物网站的钓鱼漏洞,本文的重点是让您对ARP欺骗.DNS欺骗和钓鱼攻击有一定认识.真心希望这篇基 ...

  3. [网络安全自学篇] 四十一.中间人攻击和ARP欺骗原理详解及防御机理

    这是作者的网络安全自学教程系列,主要是关于安全工具和实践操作的在线笔记,特分享出来与博友们学习,希望您们喜欢,一起进步.前文分享了一个phpMyAdmin 4.8.1版本的文件包含漏洞,从配置到原理, ...

  4. 从Linux内核角度看中间人攻击(ARP欺骗)并利用Python scapy实现

    邻居子系统与ARP协议 邻居子系统的作用就是将IP地址,转换为MAC地址,类似操作系统中的MMU(内存管理单元),将虚拟地址,转换为物理地址. 其中邻居子系统相当于地址解析协议(IPv4的ARP协议, ...

  5. Kali利用Ettercap实现中间人攻击之DNS劫持(DNS欺骗)

    今天学习了些与Ettercap相关的基础知识,再此记录 准备工作 1.确保80端口没有被任何程序占用,如果有程序占用,则根据PID结束进程. 2.开启端口转发(在root权限下才能修改成功,将ip_f ...

  6. 中间人攻击之ARP欺骗

    x00.软件安装及环境搭建 第一步.Kali下载导入 Kali下载地址(VMware版本): https://images.kali.org/virtual-images/kali-linux-202 ...

  7. 『网络协议攻防实验』DNS欺骗攻击与防御

    前言 靶机:seedubuntu 12.01,IP:192.168.199.138 攻击机:Kali-2020.4,IP:192.168.199.129 工具:ettercap 原理 DNS(Doma ...

  8. 反arp攻击软件_技术干货透析中间人攻击

    作者:甜橙安全团队 免责声明;下述内容用仅用于技术研究与探讨,禁止任何非法利用,由此造成的后果概不负责,如有侵权请联系版主,我们会及时处理. 欢迎各位添加微信号:qinchang_198231     ...

  9. wifi 中间人攻击_什么是中间人攻击?该如何防止?

    什么是中间人攻击?在中间人攻击中,攻击者将自己放置在两个设备(通常是Web浏览器和Web服务器)之间,并拦截或修改两者之间的通信.然后,攻击者可以收集信息并模拟这两个特工中的任何一个.除了网站之外,这 ...

最新文章

  1. 基于 eBPF 的新型追踪工具:bpftrace
  2. iOS组件化开发实践
  3. React Native在移动端APP上实现拍照与照片上传功能
  4. 使用PLSQL导入导出数据库
  5. ITK:使用Otsu阈值图像
  6. P5044-[IOI2018] meetings 会议【dp,笛卡尔树,线段树二分】
  7. 关于在MathType中内置样式的一些小知识
  8. 垂直布局的HTML表单
  9. e盾服务端源码_学习ZooKeeper源码,就从这篇开始吧
  10. 4207. 最长合法括号子序列
  11. 2020_1123_生活记录
  12. spring揭秘_理解透彻!Spring中BeanFactory与FactoryBean分析
  13. 小议新版GB9706.1-2020的基本性能
  14. 设计一个简单的权限管理系统
  15. 通过for循环生成简单的座位表
  16. 北京 Beijing
  17. [图像几何变换]——图像的仿射变换、透射变换及图像金字塔
  18. php 豆瓣api_豆瓣的账号登录及PHP api操作
  19. 华为P10手机有计算机功能吗,手机教程知识:华为P10支持NFC功能吗 华为P10新功能介绍...
  20. 批处理(batch)教程

热门文章

  1. python matplotlib.pyplot 如何实时绘制三维动态窗口?(可鼠标拖动角度)
  2. numpy数组如何将数组中的元素批量保留小数(或精确到指定位)?np.around()函数(与np.round()函数等价?)
  3. socket如何定义端口号才能避免和其他程序冲突?
  4. 通俗易懂的最长回文串图解、说明及Java代码(中心扩散法和Manacher算法)
  5. 【Object类、日期、StringBuilder】
  6. Java进阶:BlockingQueue阻塞队列的使用
  7. rs232 python_利用python发出rs232信号
  8. setcellvalue 格式_POI对EXCEL的操作【重点:如何设置CELL格式为文本格式】
  9. 与基础事务管理器的通信失败 存货申请_金九银十跳槽季,恶补分布式事务
  10. android listview 自动循环滚动条,ListView的自动循环滚动显示【原创】