ARP欺骗和DNS劫持

实验目标

攻击者实现对目标机的ARP欺骗;搭建恶意的DNS服务器,攻击机实现对目标机的DNS劫持,使用kali劫持同一网络下其他人的设备,让他使用浏览器访问任何网页,最终都跳转到你精心伪造的恶意网站。

实验环境

VMware Workstation 16.2、kali 2022.03操作系统

实验思路

  1. 攻击者利用ARP欺骗技术欺骗目标机,通过修改ARP表中IP地址和MAC地址的对应关系,使其将网络通信流量发送到攻击方的设备,达到监控流量和行为的目的。
  2. 攻击者自己搭建一个恶意的DNS服务器和网站,通过修改IP地址和域名的对应关系,将合法的域名解析重定向到攻击者控制的恶意网站上,实施DNS劫持。

实验步骤

  • ARP欺骗

 首先攻击方和被攻击方需要处于同一网段中。

使用ettercap发起ARP欺骗,查找同一个网络下的所有存活设备,将想要欺骗的对象,分别添加到target1和target2。

中间人攻击方式,选择ARP poisoning。

进行ARP欺骗攻击后,攻击者会发送虚假的ARP响应,将目标主机的网关IP地址与MAC地址的映射关系更改为攻击者控制的IP地址和MAC地址。这意味着,目标主机会错误地认为攻击者的MAC地址是网关的MAC地址,从而发送数据包到攻击者的设备上,而不是真正的网关。因此,攻击者可以拦截、修改或重定向目标主机与网关之间的通信。

  • DNS劫持

开启kali的apache服务,搭建恶意网站。

service apache2 start #这一步我们是为了演示被攻击者中招后的效果,被劫持后会默认跳转到/var/www/html/index.html。

修改ettercap的DNS记录(搭建恶意DNS服务器)。

vi /etc/ettercap/etter.dns     #编辑DNS记录文件

#在最后一行添加以下记录

*  A  192.168.98.32     #*代表所有域名都会被解析为该IP地址,A记录用于将域名映射到IP地址。

开启DNS劫持。

被攻击者访问任何网站,都会被劫持到我们的搭建的恶意网站,如图所示。

正常的域名解析:

攻击后的域名解析:

攻击效果如下图所示:

实验总结

通过实验,可以在连接上共享wifi后,对该网络下的其他设备利用ARP欺骗和DNS劫持技术,监控其他用户的流量、窃取敏感信息,并引导用户访问恶意网站、钓鱼网站等。

攻击者进行ARP欺骗后,该目标机的网关MAC地址一定会变为攻击机的MAC地址吗?

在ARP欺骗攻击中,攻击者通过篡改目标主机的ARP缓存,将网关的IP地址与攻击者的MAC地址关联起来。这样,目标主机会将攻击者的MAC地址错误地认为是网关的MAC地址。因此,在目标主机的ARP中,网关的MAC地址会被设置为攻击者的MAC地址,而实际上网关本身的MAC地址并没有改变。

该攻击对https类型的网站有用吗?

HTTPS协议提供了端到端的加密机制,确保通信过程中的数据传输安全性。即使攻击者通过ARP欺骗或DNS劫持将用户重定向到HTTPS网站,但由于HTTPS的加密保护,攻击者无法直接查看或篡改用户与网站之间的通信内容。故虽然ARP欺骗和DNS劫持能够成功攻击部分网络,但对于使用HTTPS协议的网站,其通信数据仍然是安全的。

好的,ARP欺骗DNS劫持是一种较为复杂的中间人攻击(Man-in-the-Middle Attack, MitM),它可以让攻击者拦截篡改局域网内的网络流量。在Kali Linux中,您可以使用Ettercapdriftnet等工具来实现这一过程。下面是详细的步骤说明: ### ARP欺骗 + DNS劫持操作步骤 #### 1. 准备工作 确保您有足够的权限法律许可来执行这些操作,未经授权的网络攻击是违法行为。 ##### 安装必要的工具 ```bash sudo apt-get update sudo apt-get install ettercap-graphical driftnet ``` #### 2. 设置网络接口 确保选择了正确的网络接口(如`eth0`或`wlan0`)。可以通过`ifconfig`或`ip a`命令查看当前网络接口的状态。 ```bash ifconfig ``` #### 3. 启动Ettercap 打开Ettercap图形界面: ```bash sudo ettercap -G & ``` #### 4. 扫描局域网中的主机 进入Ettercap图形界面后: - 点击`Hosts` > `Scan for hosts`。 - 查看`Hosts List`,确认局域网内的所有活动主机。 #### 5. 选择攻击目标 选择要攻击的目标: - `Target 1`:通常是路由器(默认网关),例如`192.168.1.1`。 - `Target 2`:受害者计算机或目标设备,例如`192.168.1.100`。 在`Hosts List`中右键点击相应的IP地址,选择`Add to Target 1``Add to Target 2`。 #### 6. 启动ARP欺骗 启动ARP欺骗以进行中间人攻击: - 点击`Mitm` > `Arp poisoning`。 - 选择`Sniff remote connections`。 此时,攻击者机器会伪装成目标主机之间的网关,截获它们之间的通信。 #### 7. 配置DNS劫持 为了劫持DNS查询,可以使用Ettercap的内置插件或修改DNS响应。 ##### 方法一:使用Ettercap插件 - 点击`Plugins` > `Manage the plugins`。 - 启用`dns_spoof`插件。 - 修改`/etc/ettercap/etter.dns`文件,添加自定义的DNS映射规则,例如: ```plaintext www.targetwebsite.com A 192.168.1.100 ``` 这会将`www.targetwebsite.com`的DNS请求重定向到`192.168.1.100`。 ##### 方法二:使用`dns2proxy`工具 `dns2proxy`是一个更强大的DNS劫持工具,可以与Ettercap结合使用。 1. 安装`dns2proxy`: ```bash git clone https://github.com/LeonardoNve/dns2proxy.git cd dns2proxy sudo python dns2proxy.py ``` 2. 在Ettercap中配置DNS劫持指向`dns2proxy`运行的机器。 #### 8. 抓取显示图像 使用`driftnet`工具可以实时抓取显示网络中的图像数据。 1. 打开一个新的终端窗口,运行`driftnet`: ```bash sudo driftnet -i eth0 ``` `-i eth0`指定网络接口,确保与Ettercap使用相同的接口。 2. `driftnet`会自动捕捉并显示局域网中的图片视频帧。 #### 9. 结束攻击 完成攻击后,停止所有相关的工具服务: - 在Ettercap中,点击`Stop`按钮结束会话。 - 关闭`driftnet`窗口。 - 如果使用了`dns2proxy`,按`Ctrl+C`停止服务。 ### 注意事项 - **合法性**:确保您有权对目标网络进行此类操作。未经授权的攻击行为是违法的。 - **安全性**:进行此类攻击可能会对网络稳定性隐私造成影响,谨慎使用。 - **道德责任**:只在合法授权的测试环境中进行这些操作,不要用于恶意目的。 ### 知识点 1. **ARP欺骗**:通过伪造ARP响应,使目标设备误认为攻击者是网关。(详解:截获目标间的通信) 2. **DNS劫持**:篡改DNS查询结果,将域名解析到攻击者控制的IP地址。(详解:重定向流量到攻击者服务器) 3. **中间人攻击(MitM)**:通过拦截篡改网络流量,实现对通信的监控控制。(详解:利用ARP欺骗DNS劫持实现流量控制) 希望这些步骤能帮助您理解并正确操作ARP欺骗DNS劫持。如果有任何进一步的问题,请随时提问!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值