LUCIFERLAMO/Network_scanner

GitHub: LUCIFERLAMO/Network_scanner

一个用 Python 和 Scapy 从零实现的 ARP 局域网扫描器,提供设备发现、厂商识别、设备变更监控和 ARP 欺骗检测功能。

Stars: 1 | Forks: 0

# 🔍 NetScan — ARP 网络扫描器与威胁检测工具 ![Python](https://img.shields.io/badge/Python-3.x-blue) ![License](https://img.shields.io/badge/License-MIT-green) ![Root Required](https://img.shields.io/badge/Requires-Root-red) ## 功能 - 📡 ARP 扫描,发现您网络中的所有活动设备 - 🏷️ 使用 IEEE OUI 数据库进行供应商查询 - 🆕 新增/移除设备检测(基准对比) - 🚨 ARP 欺骗检测(重复 MAC + 网关 MAC 更改) - 💾 将结果导出为 JSON ## 安装说明 ``` git clone https://github.com/LUCIFERLAMO/network_scanner.git cd network_scanner pip install scapy rich requests ``` ## 使用方法 ``` sudo python3 network_scanner.py # auto-detects your subnet sudo python3 network_scanner.py -i 192.168.1.0/24 # scan specific subnet sudo python3 network_scanner.py -o results.json # save output sudo python3 network_scanner.py -c # detect new/removed devices sudo python3 network_scanner.py -s # ARP spoof detection sudo python3 network_scanner.py -i 192.168.1.0/24 -o results.json -c -s # all flags ``` ## 工作原理 | 功能 | 作用 | |---|---| | `scan()` | 发送广播 ARP 请求并收集响应 | | `get_default_network()` | 如果未提供 IP,则自动检测您的子网 | | `Download_OUI()` / `load_OUI()` | 下载并缓存 IEEE 供应商数据库 | | `call_OUI()` | 通过 MAC 地址的前 3 个字节查询制造商 | | `print_details()` | 以格式化表格形式打印结果 | | `store_output()` | 将 IP、MAC、供应商保存到 JSON 文件 | | `save_baseline()` / `detect_changes()` | 为网络拍摄快照,并标记新增或丢失的设备 | | `detect_arp_spoofing()` | 标记重复的 MAC 和网关 MAC 更改 | ## 许可证 该项目采用 [MIT 许可证](LICENSE) 授权。
标签:ARP, Python, Scapy, 云存储安全, 字符串匹配, 插件系统, 无后门, 网络安全, 网络扫描, 逆向工具, 隐私保护