Mangesh-Bhattacharya/Net-Sec-Scan

GitHub: Mangesh-Bhattacharya/Net-Sec-Scan

一款基于 Python 的实时网络扫描分析桌面应用,提供端口扫描、IP 定位和 DHCP 监听功能,帮助网络管理员和安全人员高效完成网络诊断与安全评估。

Stars: 0 | Forks: 0

# 网络扫描器应用 🖥️🔍 一款实时**网络扫描器应用**,旨在提供强大的网络分析功能,如端口扫描、地理位置查询和 DHCP 数据包监听。无论您是**网络管理员**、**安全专业人士**还是**技术爱好者**,这款应用都能帮助您轻松分析和排查网络问题。 ## ✨ 功能 - **端口扫描** 🛠️ 扫描任何 **IP 地址**的开放端口,支持**默认**和**自定义端口选择**。 - **地理位置** 🌍 获取 IP 地址的**地理位置**,包含**城市**、**国家**和**坐标**等详细信息。 - **DHCP 监听器** 📡 监听**传入的 DHCP 请求**,监控接入网络的设备,并捕获**MAC 地址**和**请求的 IP**等重要细节。 - **Verbose 模式** 🧐 启用 **Verbose 模式**,可在**GUI**和**日志文件**中查看**实时扫描进度**。 - **实时日志** 📜 将扫描结果记录到**详细的日志文件**中,包括**时间戳**以及每个端口状态(开放/关闭)的信息。 - **进度条** 📊 通过 GUI 中直观的进度条追踪**扫描进度**,轻松实时监控扫描状态。 ## 📦 安装说明 ### 前置条件 ⚙️ 确保您的计算机上安装了 **Python 3.6** 或更高版本。您还需要使用 `pip` 来安装必要的依赖项。 1. **克隆代码仓库**: git clone https://github.com/Mangesh-Bhattacharya/Net-Sec-Scan.git 2. **进入项目目录**: cd Net-Sec-Scan 3. **创建虚拟环境**(推荐): python -m venv env 4. **激活虚拟环境**: - **在 Windows 上**: .\env\Scripts\activate - **在 macOS/Linux 上**: source env/bin/activate 5. **安装所需依赖项**: pip install -r requirements.txt ### 地理位置 API Key 🌍 要使用**地理位置查询**功能,您需要一个来自 [ipinfo.io](https://ipinfo.io/) 的 **API key**。 1. 在 [ipinfo.io](https://ipinfo.io/) **创建一个账号**。 2. 从您的账号控制面板**获取您的 API access token**。 3. **将 token 存储为环境变量**: - **在 Windows 上**: set IPINFO_ACCESS_TOKEN=your-secure-token - **在 macOS/Linux 上**: export IPINFO_ACCESS_TOKEN="your-secure-token" ## 🚀 用法 ### 启动应用 💻 要运行该应用程序,只需执行以下命令: ``` python main.py ``` 这将打开一个包含三个主要选项的图形界面: 1. **端口扫描** 🛠️:扫描主机上的端口范围。 2. **IP 定位** 🌍:输入 IP 地址以获取地理位置详细信息。 3. **DHCP 监听器** 📡:监听网络上的 DHCP 请求。 ### 端口扫描 🛠️ 1. 点击 **"1- Port Scan"** 按钮。 2. 输入**主机的 IP 地址**和**端口范围**(例如 `22-80`)。 3. 应用程序将显示每个端口是**开放**还是**关闭**。 ### 地理位置 🌍 1. 点击 **"2- GEOLOCATE IP"** 按钮。 2. 输入您想要查询地理位置的 **IP 地址**。 3. 应用程序将从 **ipinfo.io** 获取并显示地理位置详细信息。 ### DHCP 监听器 📡 1. 点击 **"3- DHCP Listener"** 按钮。 2. 应用程序将开始监听 **DHCP 数据包**,并显示**MAC 地址**、**主机名**和**请求的 IP 地址**等详细信息。 ## ⚙️ 依赖项 该应用程序依赖于以下 Python 包: - `scapy==2.4.6` 🔧:用于强大的网络数据包处理。 - `paramiko==3.5.1` 🔑:用于 SSH 连接(如果需要)。 - `ipinfo==3.1.2` 🌍:用于获取地理位置数据。 - `tkinter` 🖱️:用于图形用户界面(GUI)。 - `threading` ⏳:用于运行后台任务,如监听 DHCP 数据包。 - `socket` 📡:用于执行网络相关任务。 ## 🛡️ 安全 请查阅[安全政策](SECURITY.md),了解有关保护应用程序和确保安全使用的重要信息。 ## 📄 许可证 本项目基于 **MIT License** 授权。详情请参阅 [LICENSE](LICENSE.md) 文件。 ## 🤝 致谢 - **Scapy**:提供强大的网络数据包处理能力。 - **ipinfo.io**:提供优秀的地理位置数据。 - **Tkinter**:提供 GUI 框架。 - **Paramiko**:在需要时提供 SSH 功能。 ## 📧 联系方式 如有任何疑问、建议,或者您发现了安全漏洞,请通过以下方式联系我们: - **电子邮箱**:[mangesh@ameyacloud.com](mailto:mangesh@ameyacloud.com) - **GitHub Issues**:[GitHub Issues 页面](https://github.com/Mangesh-Bhattacharya/Net-Sec-Scan/issues) 感谢您关注**网络扫描器应用**!祝您扫描愉快!🔍
标签:GUI工具, IP地理定位, Python, 云存储安全, 反取证, 安全评估, 情报分析, 插件系统, 数据统计, 无后门, 端口扫描, 网络扫描, 网络诊断, 逆向工具