DNS Spoof
DNS Spoof
摸上了Ettercap这款工具一直想做一下DNS劫持的,于是乎就开启了一个DNS劫持复现的过程~~~
(本演示仅用于教学,不可用于任何非法用途,违反法律造成的任何后果自行承担)
**Ettercap: ** Ettercap 是一个用于局域网流量分析与中间人攻击(MITM)实验的安全工具。
| 分类 | 内容 | 说明 |
|---|---|---|
| 工具类型 | 局域网安全测试工具 | 主要用于 MITM(中间人)攻击实验与防御验证 |
| 工作层级 | 二层为核心 | 依赖 ARP,而不是 ping / ICMP |
| 使用前提 | 同一局域网 | 不同子网、跨路由基本无效 |
| 典型环境 | 内网 / 实验网 | Kali、教学、授权测试 |
| 功能 | 作用 | 结果 |
|---|---|---|
| 主机发现 | 扫描局域网在线设备 | Host List 里出现多个 IP |
| ARP 欺骗 | 构造中间人 | 选 Target1 / Target2 |
| 流量嗅探 | 捕获通信数据 | 能看到 HTTP / DNS |
| 流量篡改 | 修改经过的数据 | 演示完整性破坏 |
| 插件系统 | 扩展攻击 / 检测 | dns_spoof、arp_cop |
接下来我就用集成了Ettercap工具的kali (linux虚拟机)来做演示:
演示前提条件 :
| 前提条件 | 是否必须 | 原因说明 |
|---|---|---|
| 同一局域网 | 必须 | DNS 劫持基于二层/三层,跨路由无效 |
| 能成为中间人(MITM) | 必须 | 必须“看到并拦截”DNS 请求 |
| ARP 可被欺骗 | 必须 | 常见实现方式(Ettercap 依赖) |
| 目标使用 非加密 DNS | 必须 | DoH / DoT 会直接失效 |
| 目标 DNS 请求能到达你 | 必须 | 不管是发给网关还是本地 DNS |
| 合法授权环境 | 必须 | 实验/教学前提 |
首先我们进入kali虚拟机的环境中:

输入对应名称就可发现相关使用的命令和功能 ; (一般多用ettercap -G图形化窗口)

在开始实验前,我需要做一下准备,首先需要一台受害者虚拟机(我这里是win10),保证kali与win10虚拟机可以互ping(win10防火墙全部关闭)
然后查询当前win10的IP/ipconfig

我这里用的是桥接模式(即网关是真实存在的网关:192.168.10.1)
同时需要保证二者在同一网关下.然后我们在kali上搭建自己的平台.
启动apache的服务
1 | |
同时进入linux的系统文件夹中,寻找配置文件(即想让受害者看到的页面),默认位置在
1 | |
同时对dns文件进行配置,这里添加如图两行的文本(可以理解为将所有DNS解析到对应的服务地址)

这里我们将DNS解析的位置定位到我们自己的IP上(即kali的IP地址),保存并退出.
然后我自己简单做了一个index.html的页面来展示DNS劫持成功的结果(用trae),我们自己做了以后,放在下面的路径中.
1 | |
然后我们可以自己测试一下,能否访问.

然后我们启动ettercap图形化的工具.默认选中eth0网卡,同时关闭sniffing at startup(网络嗅探).

然后点击在右上角的 √ 完成后.点击左上角的 🔍(搜索样式的图标),对该网段下的所有hosts进行扫描,再点击🔍右侧的图标

我们就能看到该网段下正在使用的IP.

第一个为网段也就是路由器的地址,第二个是我另一台物理机的地址,第三个是其他物理机地址,第四个就是win10(受害)虚拟机的IP地址.
我们可以用手机连接wifi重复刚才操作来观察这个表单是否改变.
其次我们选中我们当前的网关作为target1(192.168.10.1),选中我们要劫持的主机(win10: 192.168.10.19)加入到target2(可以选择多个)
接着我们点击MITM中间人攻击的表单,选择ARP欺骗

默认OK,然后点击右边的三个点,找到plugins选项,选择 manage plugins, 选择DNS_Spoof

配置成功后点击左上的三角,开启劫持.此时在win10虚拟机上访问任何网站都会解析成我们之前设置的指定的页面.

- Title: DNS Spoof
- Author: HuAmI
- Created at : 2026-01-03 18:12:57
- Updated at : 2026-01-03 17:26:17
- Link: https://redefine.ohevan.com/2026/01/03/DNS_Spoof/
- License: This work is licensed under CC BY-NC-SA 4.0.