中间人攻击的基本原理

admin 2026-04-02 04:30:19 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: 本文深入解析了中间人攻击,重点讲解了其如何利用ARP协议的工作机制与缺陷(如无加密、依赖缓存、操作系统信任未经请求的响应)实施ARP欺骗。文中详细说明了攻击者如何通过工具ettercap伪造ARP响应,将自己插入客户端与网关之间,从而监听并窃取网络流量中的明文凭据。文章还探讨了进阶的伪造SSL/TLS证书攻击,并指出在楼宇控制、工业网络等特定场景中,此类攻击依然存在风险。 综合评分: 85 文章分类: 渗透测试,红队,内网渗透,WEB安全,恶意软件


cover_image

中间人攻击的基本原理

原创

寰宇秘阁 寰宇秘阁

寰宇密阁

2026年3月31日 10:02 安徽

在内网攻击与防御中,一个非常“古老”、却依然重要的事实是:

只要认证数据以明文形式在网络中传输,就一定有被窃取的可能。

本节将从最基础的网络通信原理出发,解释 ARP 协议为何成为中间人攻击的突破口,以及攻击者是如何利用这一点实现内网监听与凭据窃取的。


一、从网络通信说起:数据是如何被发送的?

在大多数企业网络中,底层仍然以 IPv4 作为主要协议。 一台计算机向另一台计算机发送数据包,至少需要以下信息:

  • 目标 IP 地址
  • 目标 MAC 地址
  • 使用的 端口号(如 HTTP、HTTPS)

这些信息分别对应 ISO/OSI 模型中的不同层级:

| OSI 层级 | 层名称 | 典型信息 | | — | — | — | | 第 2 层 | 数据链路层 | MAC 地址 | | 第 3 层 | 网络层 | IP 地址 | | 第 4 层 | 传输层 | TCP / UDP 端口 |


二、补充基础:ISO/OSI 七层模型

ISO/OSI 模型由 ITU 于 1984 年发布,目的是:

规范不同系统之间的通信方式,降低协议交互复杂度

七层从低到高分别是:

  1. 物理层(Physical)
  2. 数据链路层(Data Link)
  3. 网络层(Network)
  4. 传输层(Transport)
  5. 会话层(Session)
  6. 表示层(Presentation)
  7. 应用层(Application)

在本文讨论的攻击中,第 2 层和第 3 层 是关键。


三、为什么需要 ARP?

通常情况下:

  • 我们知道目标的 IP 地址
  • 但并不知道它的 MAC 地址

而在局域网内传输数据时,最终转发依赖的是 MAC 地址

因此就出现了一个问题:

IP 地址 → MAC 地址,如何映射?

答案是:ARP(Address Resolution Protocol)


四、ARP 的工作机制

1. ARP 请求(ARP Request)

当主机需要与某个 IP 通信时,会向整个局域网广播:

“谁拥有这个 IP 地址?请告诉我你的 MAC 地址。”

这一过程具有几个重要特征:

  • 使用 广播
  • 不加密
  • 无完整性校验

2. ARP 响应(ARP Reply)

如果某台主机拥有该 IP,它会回复一个 ARP 响应,其中包含:

  • 自己的 IP 地址
  • 自己的 MAC 地址

同样:

  • 不加密
  • 无完整性保护

五、ARP 的“天生缺陷”

1. ARP 只工作在同一网络内

  • ARP 请求无法跨越路由器
  • 跨网段时,数据会交给 默认网关

2. 操作系统“过于信任”

为了提高稳定性和容错性:

多数操作系统接受“未经请求”的 ARP 响应

其后果是:

  • 新的 ARP 响应可以覆盖旧条目
  • 不需要先发 ARP 请求

3. ARP 表的缓存时间

ARP 映射被缓存在本地 ARP 表中:

| 操作系统 | 默认有效期 | | — | — | | Linux | ~60 秒 | | Windows | ~120 秒 |

查看 ARP 表的命令:

arp -a

六、ARP 欺骗(ARP Spoofing)的本质

攻击者可以:

  1. 伪造 ARP 响应
  2. 告诉受害者:
  • “某个 IP 地址对应的是我的 MAC
  1. 把真实通信引流到自己

在交换网络中(交换机位于 OSI 第 2 层):

  • 转发依据是 MAC 地址
  • 攻击者成为流量接收者

七、从 ARP 欺骗到完整中间人攻击

完整的 Man-in-the-Middle(MITM) 攻击意味着:

  • 攻击者同时欺骗:

  • 客户端

  • 网关

  • 所有数据包必须经过攻击者

攻击者可以:

  • 被动监听数据
  • 记录明文凭据
  • 选择性篡改流量

八、ettercap:ARP 欺骗的实战工具

1. 工具简介

常见 ARP 欺骗工具包括:

  • arpspoof
  • ettercap
  • bettercap

其中:

  • arpspoof:只负责发送 ARP 响应
  • ettercap / bettercap:提供完整 MITM 功能

由于 ettercap 预装在 Kali Linux 中,以下示例使用 ettercap。


九、实验环境与目标信息

  • 攻击者:Kali Linux
  • 目标主机:Windows 10
  • 已知信息(通过 ipconfig 获取):
IPv4 Address:     10.10.101.10
Default Gateway:  10.10.101.1

十、使用 ettercap 实施 ARP 欺骗

1. 参数说明

常用参数如下:

| 参数 | 说明 | | — | — | | -T | 文本模式 | | -q | 安静模式 | | -M | 指定 MITM 方法 | | arp:remote | 使用 ARP 欺骗 |

2. 目标格式

ARP 欺骗只需要 IP 地址:

/<IP地址>//

3. 启动 ARP 欺骗

root@kali:~# ettercap -TqM arp:remote /10.10.101.10// /10.10.101.1//

此命令表示:

在 Windows 10(10.10.101.10) 与 网关(10.10.101.1)之间 建立中间人位置


十一、明文凭据的捕获效果

一旦 Windows 10 访问 未加密 HTTP 网站并登录, ettercap 会自动识别常见字段名并输出:

HTTP : 176.28.**.***:80 ->
USER: testuser
PASS: secretpass
INFO: http://test***.com/login.php
CONTENT: uname=testuser&pass=secretpass

如果未显示信息,可能原因包括:

  • 网站使用 HTTPS
  • 表单字段名不常见

字段配置文件位于:

/usr/share/ettercap/etter.fields

十二、正确退出 ettercap(非常重要)

❌ 不要直接使用 Ctrl + C ✅ 使用 交互模式下按 Q

原因是:

ettercap 会自动发送正确的 ARP 响应,恢复网络状态,避免断网事故


十三、进阶:伪造 SSL/TLS 证书

ettercap 支持:

  • 复制目标网站证书字段
  • 动态生成伪造证书

但需要额外配置:

1. 修改配置文件

编辑:

/etc/ettercap/etter.conf
  • 将 ec_uidec_gid 改为 0
  • 启用 redir_command_on / redir_command_off(iptables 部分)

2. 重新启动 ettercap

ettercap&nbsp;-TqM&nbsp;arp:remote /10.10.101.10// /10.10.101.1//

浏览器将提示证书不受信任,如果用户手动忽略警告,攻击者即可监听 HTTPS 流量。


十四、现实情况与趋势

如今在普通办公网络中:

  • ARP 欺骗 已不再常见
  • HTTPS / HSTS 广泛部署
  • 浏览器警告更明显

但在以下场景中仍然危险:

  • 楼宇和门禁控制系统
  • 工业控制网络(ICS)
  • 老旧生产系统
  • 嵌入式设备网络

免责声明:

本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。

任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。

本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我

本文转载自:寰宇密阁 寰宇秘阁 寰宇秘阁《中间人攻击的基本原理》

中间人攻击的基本原理 网络安全文章

中间人攻击的基本原理

文章总结: 本文深入解析了中间人攻击,重点讲解了其如何利用ARP协议的工作机制与缺陷(如无加密、依赖缓存、操作系统信任未经请求的响应)实施ARP欺骗。文中详细说
评论:0   参与:  0