【网络攻击】ARP断网、ARP欺骗和DNS欺骗实验解析_arp实现断网

实验中模拟的攻击行为仅仅是为了让读者了解和认识这些网络攻击方式,以提高对网络安全的认识和意识。请不要将这些技术用于未经授权的活动,也不要对他人造成任何形式的伤害或损失。

实验中涉及的工具和方法仅仅是为了演示攻击原理和展示可能的防御措施。在进行任何实际部署和操作中,请务必遵守法律法规,仅在授权范围内进行操作。

这是本篇文章的脉络图:


一、ARP概述

1.1 什么是ARP

ARP(Address Resolution Protocol)是一种用于在TCP/IP网络中根据IP地址获取物理地址(MAC地址)的协议。在主机发送数据时,需要知道目标设备的物理地址来进行通信。ARP通过发送广播请求并接收返回消息的方式,来确定目标设备的物理地址。同时,收到返回消息后,主机将目标设备的IP地址和物理地址存入本机的ARP缓存表中,并在一定时间内保持有效,这样下次通信时就可以直接查询ARP缓存,节约资源。

1.2 ARP协议的基本功能

ARP协议的基本功能是通过目标设备的IP地址查询其对应的MAC地址,以确保通信的进行。它在局域网内进行操作,并且只能在局域网中工作。ARP协议将IP地址和MAC地址建立映射关系,以便在网络通信中能够正确地将数据传输到目标设备。

1.3 ARP缓存表

ARP缓存表是一个用于存储IP地址和MAC地址的缓冲区,实质上就是一个IP地址到MAC地址的映射表。每个主机或网络适配器都有自己的ARP缓存表。当需要查询已知IP地址对应的MAC地址时,ARP首先查找本地的ARP缓存表,如果存在相应的记录,则直接返回对应的MAC地址。如果在缓存中没有找到对应的记录,ARP才会发送ARP请求广播到局域网上,以查询目标设备的MAC地址。

1.4 ARP常用命令

在ARP协议中,有一些常用的命令用于管理和操作ARP缓存表。

(1)

'arp -a' 或 'arp -g'

这个命令用于查看ARP缓存表中的所有项目。在UNIX平台上,可以使用-g选项,而在Windows上则使用-a选项。这两个选项的结果是一样的,都用于显示ARP缓存中的所有项目。

(2)

'arp -a <ip>'

如果有多个网络接口,可以使用此命令加上接口的IP地址,以仅显示与该接口相关的ARP缓存项目。

二、ARP断网实验

ARP断网是指攻击者通过欺骗目标主机和网关的ARP缓存表,将目标主机和网关的IP地址对应的MAC地址修改为攻击者自己的MAC地址。这样,被断网的主机发送的数据包会被发送到攻击者的网卡,而不会继续流向网关或其他目标,从而导致目标主机无法正常连接到网络。

前提信息:

本文中提到的win7和kali是虚拟机,而且它们处于同一个网段。

受害者:win7
        ip:192.168.216.128
        mac:00-0C-29-9C-CD-25
win7网关:
        ip:192.168.216.2
        mac:00-50-56-f0-6a-ce

攻击者:kali
        ip:192.168.216.129
        mac:00:0c:29:be:d4:09

实验步骤:

2.1

通过fping命令,查看当前局域网还存在那些主机,以确定要攻击的主机的ip地址:

fping -g 192.168.216.0/24

或者用nmap扫描:

nmap -sn 192.168.216.0/24

2.2

arpspoof是一个常用于进行ARP欺骗攻击的命令行工具。其使用方法如下所示:

arpspoof -i <网卡名称> -t <目标IP> <网关>

通过运行这个命令,它会发送虚假的ARP响应包给目标主机和网关,将目标主机和网关的ARP缓存表中的IP地址对应的MAC地址修改为攻击者的MAC地址。这样,所有发往网关的数据包都会被截获并转发给攻击者,从而实现ARP欺骗攻击。

执行断网攻击:arpspoof -i eth0 -t 192.168.216.128 192.168.216.2

可以看到,当ARP攻击开始时,就出现了请求超时的提示:

2.3

arp -a 查看靶机网关mac地址的变化。

这是原来的mac地址:

这是现在的mac地址:

三、ARP欺骗实验

ARP欺骗是一种针对以太网地址解析协议(ARP)的攻击技术。攻击者通过欺骗局域网内的主机,将其ARP缓存表中的IP地址与MAC地址的映射关系更改为攻击者所指定的对应关系。这样,当主机发送数据时,数据将被发送到攻击者的主机而不是真正的目标主机,从而实现网络欺骗和窃取数据的目的。

ARP欺骗的常见手法是同时对局域网内的一台主机和网关进行欺骗。攻击者发送虚假的ARP响应包给被攻击的主机和网关,将其ARP缓存表中的IP地址对应的MAC地址修改为攻击者的MAC地址。这样,被攻击的主机和网关会将所有的数据包发送到攻击者的主机,攻击者可以截获、篡改或窃取这些数据包。此外,由于ARP是局域网内的协议,ARP欺骗攻击只对同一局域网内的主机有效。

前提信息:

本文中提到的win7和kali是虚拟机,而且它们处于同一个网段。

受害者:win7

ip:192.168.216.128
        mac:00-0C-29-9C-CD-25
win7网关:
        ip:192.168.216.2
        mac:00-50-56-f0-6a-ce

攻击者:kali
        ip:192.168.216.129
        mac:00:0c:29:be:d4:09

3.1内网截获图片

实验步骤:

3.1.1

要在Linux系统中允许流量转发,可以通过修改sysctl.conf配置文件来实现。下面是修改步骤:

(1)打开终端窗口,输入以下命令以使用root权限打开sysctl.conf文件:

   sudo vim /etc/sysctl.conf

(2)在sysctl.conf文件中找到以下行:

   #net.ipv4.ip_forward=1

(3)将这一行的注释符号“#”去掉,修改为如下内容:

   net.ipv4.ip_forward=1

(4)保存并关闭文件。在vim编辑器中,可以按Esc键,然后输入冒号(:)并输入wq,然后按回车键。

(5)应用新的配置,可以输入以下命令使sysctl.conf配置生效:

   sudo sysctl -p /etc/sysctl.conf

3.1.2

进行ARP欺骗:arpspoof -i eth0 -t 192.168.216.128 192.168.216.2

因为开启了ip流量转发,所以此时win7是可以上网的(与ARP断网攻击的不同)。

查看一下ARP缓存表,可以发现欺骗成功。

3.1.3

此时,我的kali就会成为win7和网关之间数据流量的中转,所有经过kali的数据包都将被截获,可以进行进一步的网络攻击。

例如,driftnet是一个命令行工具,可以用于监听网络流量,并从其中提取出所有能够识别为图像的数据。

在kali运行以下命令:

driftnet –i eth0

这样,driftnet就会开始监听eth0网卡上的流量,并在图形界面窗口中实时显示图像,这些图像是从网络流量中提取出来的。

需要注意的是,driftnet只能提取出网络中传输的图像,而不是所有的文件或数据。而且它只能截取到http协议的图片。

在win7中使用火狐浏览器访问百度,搜索图片进行访问的时候,这个driftnet窗口就能捕捉到你在win7访问的图片(在火狐浏览器搜索图片时,一些网站显示的是不安全连接,而当一个网站显示不安全连接时,通常意味着它使用的是http协议而不是https协议)。

3.2 HTTP账户密码获取

实验步骤:

ettercap是一款非常常用的基于ARP欺骗方式的网络嗅探工具,它能够对交换型局域网进行嗅探,并拦截、修改、替换或注入网络数据包,从而实现多种攻击方式和安全检测方法。

比如,在一个本地网络中,你可以运行ettercap命令来嗅探流通数据,并查看被嗅探到的数据,如下所示:

ettercap -Tq -i eth0

此命令是将ettercap启动在文本模式下,并使用eth0网卡嗅探数据包,同时关闭Ettercap的交互式模式和输出所有嗅探信息的详情,以方便进行安静的数据监控。在ettercap中,还有许多参数和插件可供配置和使用,具体可参考其文档和官方网站。

启动ettercap:

在win7访问网址(我访问的是一个仅为了做实验而诞生的盗版网站),输入用户名及密码。这里我输入filotimo/666666。

返回kali攻击机,查看记录。

四、DNS欺骗实验

DNS(Domain Name System,域名系统)是一种分布式的关键网络服务,它将域名解析成相应的IP地址,帮助用户轻松访问互联网资源。

DNS欺骗是指攻击者利用DNS的工作原理和弱点,将用户的域名解析请求重定向到攻击者控制的虚假的域名服务器,使得用户被导向错误的网站或资源,或者受到其它类型的攻击或欺诈。

前提信息:

本文中提到的win7和kali是虚拟机,而且它们处于同一个网段。

受害者:win7
        ip:192.168.216.128
        mac:00-0C-29-9C-CD-25
win7网关:
        ip:192.168.216.2
        mac:00-50-56-f0-6a-ce

攻击者:kali
        ip:192.168.216.129
        mac:00:0c:29:be:d4:09

实验步骤:

首先打开ettercap的dns文件进行编辑,在kali,linux2.0下的文件路径为/etc/ettercap/etter.dns:

在对应的位置添加对应的标识和IP地址, * 代表所有域名。

 题外话

很多小伙伴想要一窥网络安全整个体系,这里我分享一份打磨了4年,已经成功修改到4.0版本的《平均薪资40w的网络安全工程师学习路线图》对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。

     如果你想要入坑黑客&网络安全工程师,这份282G全网最全的网络安全资料包!

  网络安全大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享

​​​​​
 学习资料工具包

压箱底的好资料,全面地介绍网络安全的基础理论,包括逆向、八层网络防御、汇编语言、白帽子web安全、密码学、网络安全协议等,将基础理论和主流工具的应用实践紧密结合,有利于读者理解各种主流工具背后的实现机制。

​​​​​

网络安全源码合集+工具包

​​​​

视频教程

​​​​

 视频配套资料&国内外网安书籍、文档&工具

​​​
​​ 因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

黑客/网安大礼包:CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享

好了就写到这了,大家有任何问题也可以随时私信问我!希望大家不要忘记点赞收藏哦!

<think>好的,我现在需要帮助用户了解如何进行ARP欺骗攻击的实验。首先,用户明确提到要在安全测试环境下进行实验,所以必须强调合法性授权,避免用户误用。接下来,根据用户提供的引用内容,我需要整合这些信息来构建实验步骤原理的解释。 首先,引用[1][2]详细说明了ARP欺骗的原理,包括伪造ARP响应、缓存中毒等步骤。而引用[4][5]则提到了具体的工具使用,比如arpspoofKali Linux中的工具。用户还提到了实验方法或教程,所以需要一步步的指导。 我需要确保实验环境的安全,比如使用虚拟机或封闭网络,防止影响真实网络。然后,列出所需的工具,如Kali Linux(内置arpspoof、dsniff等)、目标设备网络设备。接下来,分步骤说明如何配置环境、启用IP转发、使用arpspoof发送伪造的ARP响应,以及如何验证攻击是否成功,比如检查ARP缓存表的变化,引用[3]中的命令ip -all netns exec arp -n可以用来查看ARP缓存。 同时,用户可能需要了解如何防御这种攻击,所以补充防御措施也是必要的,比如静态ARP绑定或使用ARP防护工具。此外,引用[2]提到的中间人攻击数据截获可以进一步扩展,说明攻击后的数据监控方法,比如使用Wireshark进行流量分析。 需要确保步骤清晰,每个部分都对应到引用的内容,比如在步骤3中详细说明arpspoof的命令参数,引用[4]解释了sudo、-i、-t等参数的意义。在验证步骤中,引用[3][5]提供了查看ARP缓存欺骗成功的例子。 最后,生成相关问题时要覆盖原理、工具、防御实际应用,帮助用户全面理解ARP欺骗攻击的实验过程相关知识。</think>### ARP欺骗攻击实验方法 #### 实验环境要求 1. **合法授权**:必须在隔离的实验室或虚拟网络(如VMware/VirtualBox搭建的局域)中实施[^1] 2. **测试工具**:Kali Linux(含arpspoof/dsniff工具包)、至少两台虚拟机(攻击机+靶机) 3. **网络配置**:所有设备需处于同一局域段(如192.168.1.0/24) #### 实验原理 通过发送伪造的ARP响应包,使目标设备将攻击机的MAC地址与关IP绑定,实现流量劫持[^2]。核心公式描述: $$ \text{伪造ARP报文} = \text{目标IP} \xrightarrow{\text{映射}} \text{攻击者MAC} $$ #### 实验步骤 1. **环境准备** - 关闭防火墙:`sudo systemctl stop firewalld`(Linux靶机) - 确认IP-MAC对应关系:`arp -a` 2. **启用IP转发(攻击机)** ```bash echo 1 > /proc/sys/net/ipv4/ip_forward # 防止网络引起怀疑[^5] ``` 3. **实施ARP欺骗** ```bash sudo arpspoof -i eth0 -t 192.168.1.100 192.168.1.1 # 欺骗靶机[^4] sudo arpspoof -i eth0 -t 192.168.1.1 192.168.1.100 # 双向欺骗关 ``` 4. **验证攻击效果** ```bash # 在靶机执行(Windows:arp -a,Linux:arp -n) ns531> arp -n | grep 192.168.1.1 # 应显示攻击机MAC地址[^3] ``` 5. **流量监控(可选)** ```bash sudo tcpdump -i eth0 host 192.168.1.100 # 查看明文流量 driftnet -i eth0 # 可视化图片捕获 ``` #### 防御措施 - 静态ARP绑定:`arp -s 192.168.1.1 00:11:22:33:44:55` - 网络层防护:启用DHCP Snooping+DAI(动态ARP检测)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值