aaruzzz/mint712-security-tool-chest

GitHub: aaruzzz/mint712-security-tool-chest

一套用纯 Python 从零实现的网络诊断工具包,包含端口扫描、UDP Ping、路由追踪、DNS 和 WHOIS 查询,专为学习网络协议底层原理而设计。

Stars: 0 | Forks: 0

# 🧰 Aarush 的 IT 工具箱 ### Python 网络实用工具套件 (MINT 712 - 阿尔伯塔大学) 这是一个模块化的 **网络诊断与分析工具包**,使用 Python 开发,用于 **阿尔伯塔大学** 的 **MINT 712** 课程。 本项目 **利用 socket 编程从零开始** 实现了多种经典网络工具,包括 **多线程 TCP 端口扫描器**、**基于 UDP 的 ping**、**ICMP 路由追踪**、**DNS 查询** 以及 **WHOIS 客户端**。 本作业的目标是理解 **真实网络工具的内部运作原理**,而非依赖现有工具。 ## 🚀 功能特性 | 工具 | 描述 | | ---------------------- | -------------------------------------------------------------------- | | 🔍 **端口扫描器** | 支持多线程的 TCP 端口扫描器,支持 IP 范围和端口范围 | | 📡 **UDP Ping** | 发送 UDP 探测包并监听 ICMP 端口不可达响应 | | 🌍 **ICMP 路由追踪** | 使用受 TTL 限制的 ICMP Echo Requests 探测网络路径 | | 🔎 **NSLookup** | 执行正向和反向 DNS 查询 | | 📜 **WHOIS 查询** | 查询 WHOIS 服务器以获取域名/IP 注册信息 | ## ⚙️ 技术亮点 * 使用 **底层 Python socket 编程** 实现 * 使用 Python 线程实现 **多线程 TCP 扫描** * 用于网络探测的 **原生 ICMP socket** * 用于路由追踪的 **TTL 操作** * 通过系统解析器进行 **DNS 解析** * 通过 TCP 43 端口进行 **WHOIS 查询** * 模块化架构,包含可复用工具 * 输入验证与错误处理 ## 🧱 项目结构 ``` mint712-network-tool-chest │ ├── main.py # CLI entry point and menu system ├── port_scanner.py # Threaded TCP port scanner ├── udp_ping.py # UDP ping implementation ├── traceroute_icmp.py # ICMP traceroute utility ├── nslookup.py # DNS lookup tool ├── whois_lookup.py # WHOIS client ├── utils.py # Shared helper functions │ └── README.md ``` ## 🖥️ 示例命令行界面 ``` --------- Aarush's IT Tool Chest --------- --------------- Main Menu ---------------- 1) Port Scanner 2) UDP Ping 3) ICMP Traceroute 4) NSLookup 5) WHOIS 6) Under Development 0) Exit ``` # 📸 截图 ### 启动工具 ![程序启动](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/f09e6307e1172319.png) ``` python3 main.py ``` ### 运行端口扫描器 ![端口扫描器](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/367e71157a172321.png) ### UDP Ping (需要 sudo) ![UDP Ping](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/3742217b09172323.png) ``` sudo python3 main.py ``` ### ICMP 路由追踪 (需要 sudo) ![路由追踪](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/fb7d591dea172324.png) ### DNS 查询 ![NSLookup](https://raw.githubusercontent.com/aaruzzz/mint712-security-tool-chest/main/screenshots/nslookup.png) ### WHOIS 查询 ![WHOIS](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/5bcf0c3660172356.png) # 🛠️ 安装 克隆仓库: ``` git clone https://github.com/aaruzzz/mint712-security-tool-chest.git cd mint712-network-tool-chest ``` 运行应用程序: ``` python3 main.py ``` # 🔐 管理员权限 某些工具需要 **原生 socket 访问权限**,这通常需要管理员权限。 包括: * UDP Ping * ICMP 路由追踪 使用 sudo 运行: ``` sudo python3 main.py ``` # 🧠 展示的网络概念 本项目展示了对以下内容的理解: * TCP 连接扫描 * UDP 探测 * ICMP 消息类型 * 基于 TTL 的路由发现 * DNS 解析 * WHOIS 协议 * Socket 编程 * 线程与并发 * 网络诊断 # 📚 学术背景 本项目是 **MINT 712 作业** 的一部分: **课程:** 互联网安全 **大学:** 阿尔伯塔大学 **讲师:** Leonard Rogers 该作业要求使用 Python **从零开始实现自定义网络工具**。 # 🧑‍💻 作者 **Aarush Timalsina** 互联网络硕士 阿尔伯塔大学 * LinkedIn: *https://www.linkedin.com/in/aaruzzz/* * GitHub: *https://github.com/aaruzzz/* # 🔮 未来改进 该工具包计划的扩展功能: * ICMP Ping 实现 * DNS 记录查询工具 * Banner 抓取 * OS 指纹识别 * 并行 IP 扫描 * IPv6 支持 # ⭐ 项目意义 许多流行的网络工具(如 **nmap**、**traceroute**、**ping**)都建立在与此处实现的相同基本原则之上。 从零开始构建这些工具有助于理解: * **网络诊断的实际工作原理** * **操作系统如何处理 socket** * **数据包如何通过网络传输** # 📜 许可证 本项目仅供 **教育和学术目的** 使用。 # 💡 结语 如果您正在学习网络或安全,请尝试使用以下附加功能扩展此工具: * 数据包构建 * 漏洞扫描 * DNS 记录枚举 * 网络映射
标签:Awesome, CDN识别, DNS枚举, DNS查询, DNS查询工具, GitHub, ICMP, MINT 712, Python, Traceroute, TTL探测, UDP Ping, WHOIS客户端, 低级网络编程, 后渗透, 套接字编程, 情报分析, 插件系统, 教育项目, 数据泄露防护, 无后门, 端口扫描器, 系统管理, 网络安全工具, 网络实用程序, 网络探测, 网络诊断, 逆向工具, 阿尔伯塔大学