syed-sidd/Advanced-Packet-Sniffer-ARP-Spoofing-Detector
GitHub: syed-sidd/Advanced-Packet-Sniffer-ARP-Spoofing-Detector
基于 Python 和 Scapy 构建的网络流量监控工具,能够实时捕获并分析多种协议的数据包,同时通过 IP-MAC 映射检测潜在的 ARP 欺骗攻击。
Stars: 0 | Forks: 0
# 🛡️ 高级数据包嗅探器 + ARP 欺骗检测器
一个基于 Python 的网络安全工具,利用 Scapy 库实时捕获网络数据包并检测可能的 ARP 欺骗攻击。
## 📌 项目概述
ARP 欺骗 (ARP Poisoning) 是一种常见的中间人攻击 (MITM) 技术,攻击者会将其 MAC 地址与另一个设备的 IP 地址进行绑定。
本项目通过监控网络流量、捕获数据包、分析协议,并检测可疑的 IP 到 MAC 映射变化,来发现潜在的 ARP 欺骗攻击。
## ✨ 功能
- 实时数据包捕获
- 检测 TCP、UDP、ICMP 和 ARP 数据包
- 显示:
- 源 IP
- 目标 IP
- 源端口
- 目标端口
- 数据包长度
- 协议
- 时间戳
- 检测可能的 ARP 欺骗攻击
- 将捕获的数据包记录到日志文件中
- 显示会话统计信息
- 模块化的 Python 代码结构
## 📂 项目结构
```
Advanced-Packet-Sniffer/
│
├── logs/
│ └── packet_logs.txt
│
├── reports/
│
├── screenshots/
│
├── main.py
├── packet_sniffer.py
├── arp_detector.py
├── logger.py
├── config.py
├── requirements.txt
├── README.md
└── LICENSE
```
## 🏗️ 架构图

## 🛠️ 使用的技术
- Python 3
- Scapy
- Npcap (Windows)
- pathlib
- datetime
## 🚀 安装说明
克隆代码库。
```
git clone https://github.com/yourusername/Advanced-Packet-Sniffer.git
```
安装依赖项。
```
pip install -r requirements.txt
```
运行项目。
```
python main.py
```
## 📸 示例输出
应用程序显示:
- 源 IP
- 目标 IP
- 协议
- 源端口
- 目标端口
- 数据包长度
- 时间戳
它还会提供一份会话摘要,包含:
- 总数据包数
- TCP 数据包数
- UDP 数据包数
- ICMP 数据包数
- ARP 告警
## ⚠ ARP 欺骗检测
程序会维护一个 IP 到 MAC 的映射表。
如果观察到某个 IP 地址对应的 MAC 地址与之前记录的不同,该工具将生成安全警报,提示可能发生了 ARP 欺骗攻击。
## 📄 日志文件
捕获的数据包存储在:
```
logs/packet_logs.txt
```
## 🔮 未来改进
- GUI 仪表板
- 将日志导出为 CSV
- 支持 PCAP 文件
- 电子邮件告警通知
- 实时数据包图表
- 支持 IPv6
- 网络接口选择
## ⚠ 免责声明
本项目仅供教育目的和授权的安全测试使用。
请仅在您拥有或获得明确授权可以监控的网络上使用此工具。
## 👨💻 作者
**Syed Siddique Ahmed**
计算机科学工程(网络安全)学士
网络安全与云安全爱好者
标签:ARP欺骗检测, Python, Scapy, 无后门, 网络安全, 逆向工具, 防御绕过, 隐私保护