局域网Arp与DNS劫持

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 一、局域网通信相关概念
    • [1.1 ARP概述:](#1.1 ARP概述:)
    • [1.2 MAC地址:](#1.2 MAC地址:)
    • [1.3 OSI七层模型的数据传输](#1.3 OSI七层模型的数据传输)
  • 二、断网攻击(单向欺骗)
    • [2.1 准备环境](#2.1 准备环境)
    • [2.2 打开科来](#2.2 打开科来)
    • [2.3 打开工具mac地址扫描器](#2.3 打开工具mac地址扫描器)
    • [2.4 得到目标主机的MAC地址](#2.4 得到目标主机的MAC地址)
    • [2.5 添加ARP数据包](#2.5 添加ARP数据包)
    • [2.6 输入目的mac地址和目的ip地址](#2.6 输入目的mac地址和目的ip地址)
    • [2.7 发送](#2.7 发送)
    • [2.8 开始](#2.8 开始)
    • [2.9 对比](#2.9 对比)
  • 三、局域网内ARP攻击(双向欺骗)
    • [3.1 开启kali,安装arpspoof](#3.1 开启kali,安装arpspoof)
    • [3.2 查看kali mac地址](#3.2 查看kali mac地址)
    • [3.3 使用arpspoof进行双向欺骗攻击](#3.3 使用arpspoof进行双向欺骗攻击)
    • [3.4 开启端口转发功能,并再次实施ARP欺骗攻击](#3.4 开启端口转发功能,并再次实施ARP欺骗攻击)
    • [3.5 arp 欺骗------抓取图片](#3.5 arp 欺骗——抓取图片)
    • [3.6 arp 欺骗------获取http登录账号密码](#3.6 arp 欺骗——获取http登录账号密码)
  • 四、DNS劫持
    • [4.1 首先修改一下DNS配置文件](#4.1 首先修改一下DNS配置文件)
    • [4.2 打开kali机器的ettercap工具](#4.2 打开kali机器的ettercap工具)
    • [4.3 扫描当前局域网的主机列表](#4.3 扫描当前局域网的主机列表)
    • [4.4 将网关和目标主机分别添加到Target1和Target2中](#4.4 将网关和目标主机分别添加到Target1和Target2中)
    • [4.5 归类好之后,开启插件](#4.5 归类好之后,开启插件)
    • [4.6 选择DNS欺骗插件,点击开始按钮](#4.6 选择DNS欺骗插件,点击开始按钮)
    • [4.7 靶机访问发现被劫持](#4.7 靶机访问发现被劫持)

一、局域网通信相关概念

1.1 ARP概述:

ARP(Address Resolution Protocol)即地址解析协议,用于实现从 IP 地址到 MAC 地址的映射,即询问目标IP对应的MAC地址。在网络通信中,主机和主机通信的数据包需要依据OSI模型从上到下进行数据封装,当数据封装完整后,再向外发出。所以在局域网的通信中,不仅需要源目IP地址的封装,也需要源目MAC的封装

1.2 MAC地址:

MAC地址(Media Access Control Address)是一种标识网络设备的唯一地址,也被称为物理地址或硬件地址。它由网络设备制造商在生产过程中写入网卡。例如:00-16-EA-AE-3C-40就是一个MAC地址。其中前3个字节的十六进制数00-16-EA代表网络硬件制造商的编号,由IEEE(电气与电子工程师协会)分配。而后3个字节的十六进制数AE-3C-40代表该制造商生产的某个网络产品(如网卡)的系列号。只要不更改自己的MAC地址,MAC地址在全球范围内是唯一的。

1.3 OSI七层模型的数据传输

OSI七层模型的数据传输详解:

1、应用层数据封装,将封装好的数据传输到传输层;

2、传输层将应用层传递下来的数据包添加上相应的TCP头部信息(源端口、目的端口)后传递给网络层;

3、网络层收到传输层传递的数据包后添加上相应的IP信息(源IP、目的IP)后将数据包传递给数据链路层;

4、数据链路层收到数据包后添加上相应的Ethernet头部信息(源MAC地址、目的MAC地址)和FCS帧尾后将数据帧传递给物理层;

5、物理层收到数据包之后根据物理介质的不同,负责将数字信号转换成电信号、光信号、电磁波信号等;

6、转换完成的信号在物理介质(网线,光纤,空气)中开始传递。

局域网内两台主机在互相通信的过程中,会互相交换自己的IP地址和MAC地址,然后存储到本地的ARP缓存表中方便后续通信。

复制代码
arp -a


二、断网攻击(单向欺骗)

2.1 准备环境

首先准备环境:同一网段下能够正常上网的主机

2.2 打开科来

打开科来网络分析系统,"实时分析"模块选择对应的局域网

2.3 打开工具mac地址扫描器

打开"工具"界面的MAC地址扫描器,得到目标主机的MAC地址

2.4 得到目标主机的MAC地址

复制代码
 00:0C:29:70:60:E0   

2.5 添加ARP数据包

点击"数据包生成器",添加ARP数据包

2.6 输入目的mac地址和目的ip地址

在目的MAC地址和目的IP中输入我们的目标主机的IP和MAC地址,源MAC地址任意输即可,源IP输入网关的IP地址

输入前:
输入后:

源MAC地址:随意填

目标MAC地址:想要攻击谁填谁的MAC地址

源IP地址:网关IP地址

目标IP地址:想要攻击谁填谁的IP地址

2.7 发送

点击发送,勾选"突发模式"和"循环发送"(循环次数改为0);点击"选择"选择对应的网卡

2.8 开始

点击"开始",即可发起攻击

目标主机即刻断网!点击"停止",目标主机恢复网络。

2.9 对比

有网状态

无网状态

单向欺骗做到让被骗的人没有网

三、局域网内ARP攻击(双向欺骗)

3.1 开启kali,安装arpspoof

复制代码
apt install dsniff

3.2 查看kali mac地址

看一下攻击机kali的MAC地

复制代码
ip a

00:0c:29:c8:10:6c |

3.3 使用arpspoof进行双向欺骗攻击

复制代码
arpspoof -i eth0 -t 10.0.0.4 -r 10.0.0.2
# arpspoof 10.0.0.4 10.0.0.2

假设目标主机是10.0.0.4,网关是10.0.0.2)

-t 10.0.0.4指定目标主机,-r 10.0.0.2指定网关; arpspoof会同时向 ** 目标主机(10.0.0.4)发送 "我是网关(10.0.0.2)" 的 ARP 欺骗包,也向网关(10.0.0.2)** 发送 "我是目标主机(10.0.0.4)" 的 ARP 欺骗包。 相当于这一条命令已经同时完成了 "欺骗目标" 和 "欺骗网关" 的双向操作

查看win10系统ARP 缓存表网关的MAC地址是kali的

停止攻击之后

3.4 开启端口转发功能,并再次实施ARP欺骗攻击

首先开启arp欺骗

复制代码
arpspoof -i eth0 -t 10.0.0.4 -r 10.0.0.2
复制代码
echo 1 > /proc/sys/net/ipv4/ip_forward
# ip 1 0
cat /proc/sys/net/ipv4/ip_forward
# 1 0
复制代码
Kali 默认iptables可能阻止了转发流量,需允许 IP 转发:
# 查看当前FORWARD链策略
iptables -L -n | grep FORWARD

# 若策略为DROP,设置为ACCEPT
iptables -P FORWARD ACCEPT

此时win10可以访问外网

此时靶机可以访问外网,但是靶机的ARP缓存表中的网关MAC地址已

经变成了攻击机kali的MAC地址

3.5 arp 欺骗------抓取图片

开启端口转发并开启arp 欺骗之后

复制代码
echo 1 > /proc/sys/net/ipv4/ip_forward
arpspoof -i eth0 -t 10.0.0.4 -r 10.0.0.2

开启新的 shell 执行命令,该命令会自动打开一个 shell 窗口并获取目的主机所浏览的图片。

复制代码
driftnet -i
driftnet -i eth0
driftnet -i eth0 -a -d /root/niko
#
-b
-i interface
-f file pcap
-p
-a
-m number
-d directory
-x prefix



重要限制:Driftnet无法处理加密流量(如 HTTPS),只能捕获未加密的 HTTP 传输内容

3.6 arp 欺骗------获取http登录账号密码

利用 ettercap 来抓取账号密码。在终端输入

复制代码
ettercap -Tq -i eth0

# 格式:ettercap -Tq -i 网卡 -M arp:remote /目标主机IP// /网关IP//
ettercap -Tq -i eth0 -M arp:remote /10.0.0.4// /10.0.0.2//

这个的使用也仅仅局限在http请求的网站

ARP攻击的其他相关运用:https://www.jianshu.com/p/de44827f839e

四、DNS劫持

4.1 首先修改一下DNS配置文件

复制代码
vim /etc/ettercap/etter.dns

加上

复制代码
*.baidu.com A 10.0.0.26
www.*.com A 10.0.0.26
*.*.com A 10.0.0.26
www.test.com A 10.0.0.26

劫持百度成功不了,用www.test.com代替一下

4.2 打开kali机器的ettercap工具

复制代码
ettercap -G

4.3 扫描当前局域网的主机列表

第一个是开始扫描,第二个是查看结果

4.4 将网关和目标主机分别添加到Target1和Target2中

4.5 归类好之后,开启插件


4.6 选择DNS欺骗插件,点击开始按钮

先双击dns_spoof

4.7 靶机访问发现被劫持

ping发现是来自10.0.0.26

但是靶机访问www.baidu.com还是会跳转到baidu,试一下www.test.com成功了

相关推荐
2503_9469718643 分钟前
【FullStack/ZeroDay】2026年度全栈魔法架构与分布式恶意节点清除基准索引 (Benchmark Index)
分布式·网络安全·架构·系统架构·区块链·数据集·全栈开发
DeepVis Research1 小时前
【BCI/Consensus】2026年度脑机接口协同与分布式共识机制基准索引 (Benchmark Index)
人工智能·网络安全·数据集·脑机接口·分布式系统
深圳市恒讯科技1 小时前
防止服务器被黑:终极防范网络攻击指南
运维·服务器·网络安全
2503_946971861 小时前
【P2P/Blockchain】2026年度去中心化P2P协议与不可变智能合约审计基准索引 (Benchmark Index)
网络安全·区块链·数据集·架构设计·分布式系统
Whoami!2 小时前
❿⁄₁ ⟦ OSCP ⬖ 研记 ⟧ 密码攻击 ➱ 针对网络服务的密码攻击
网络安全·信息安全·密码攻击
刘婉晴18 小时前
【Kali 渗透测试】信息收集
网络安全·渗透测试
暗流者18 小时前
ctf wiki中kernel pwn 学习编译内核(2026年最新版)
学习·安全·网络安全·pwn
vortex519 小时前
NetExec 全模块使用手册
windows·网络安全
上学的小垃圾1 天前
基于Centos9部署OpenVP*
网络·网络协议·网络安全·信息与通信
Bruce_Liuxiaowei1 天前
网络连通性实战:如何判断进出口流量能否通行
网络·网络安全·内网渗透