urstrulykaran08-code/port-scanner-gui

GitHub: urstrulykaran08-code/port-scanner-gui

一款基于 Python 和 CustomTkinter 开发的多线程图形化网络端口扫描器,帮助安全人员快速识别目标主机的开放端口及运行服务。

Stars: 0 | Forks: 0

# 🔍 高级端口扫描器 一款高性能、多线程的网络端口扫描器,配备现代 GUI 界面。使用 Python 开发,专为网络安全专业人员和网络管理员打造。 ## ✨ 功能 - ⚡ **极速扫描** - 采用多线程技术,可在 60 秒内扫描 100+ 个端口 - 🎨 **现代 GUI** - 基于 CustomTkinter 构建的深色主题界面 - 🔍 **服务检测** - 识别 100+ 种常见服务及其端口 - 📡 **Banner Grabbing** - 捕获 HTTP、FTP、SSH 等服务的 Banner - 📊 **实时进度** - 实时进度跟踪并提供百分比更新 - 🎯 **灵活扫描** - 可选择扫描常用端口或自定义端口范围 - 🚀 **并发扫描** - 100 个并行线程以实现最高性能 ## 🛠️ 安装说明 ### 前置条件 - Python 3.7 或更高版本 - tkinter 8.6.15 或更高版本 - pip 包管理器 ### 第一步:克隆仓库 ``` git clone https://github.com/urstrulykaran08/port-scanner.git cd port-scanner Step 2: Install Dependencies bash pip install customtkinter Step 3: Run the Scanner bash python port_scanner.py 📖 Usage Guide Basic Scan Enter Target - IP address (e.g., 192.168.1.1) or hostname (e.g., google.com) Select Port Mode: Standard Ports - Scans 100+ common ports (HTTP, SSH, FTP, etc.) Custom Range - Define your own port range (1-65535, max 1000 ports for speed) Click "Start Scan" - Watch real-time results appear Review Results - Open ports, services, and banners displayed with color coding Example Output text ====================================================================== 🔍 PORT SCAN REPORT Target: scanme.nmap.org Started at: 2024-01-15 14:30:22 ====================================================================== PORT STATE SERVICE | BANNER ---------------------------------------------------------------------- 22 OPEN SSH | OpenSSH 7.2p2 Ubuntu 4ubuntu2.10 80 OPEN HTTP | Apache/2.4.18 (Ubuntu) 443 OPEN HTTPS | nginx/1.10.3 ====================================================================== ✅ Scan Complete! 📊 Total ports scanned: 105 🔓 Open ports found: 3 🗒️ Open port list: 22, 80, 443 ⏱️ Finished at: 2024-01-15 14:30:45 ====================================================================== 🎯 Supported Services (100+ Common Ports) Port Service Port Service Port Service 21 FTP 80 HTTP 443 HTTPS 22 SSH 110 POP3 445 SMB 23 Telnet 139 NetBIOS 3306 MySQL 25 SMTP 143 IMAP 3389 RDP 53 DNS 161 SNMP 5432 PostgreSQL ...and 90+ more! 🏗️ Technical Architecture Multi-threading: Uses concurrent.futures.ThreadPoolExecutor with 100 workers Socket Timeout: 2-second timeout per port for optimal speed Banner Grabbing: Protocol-specific requests for HTTP/FTP/SSH services GUI Framework: CustomTkinter for modern, cross-platform interface Thread Safety: All GUI updates are thread-safe using after() method 📁 Project Structure text port-scanner/ ├── port_scanner.py # Main application file ├── README.md # Documentation └── requirements.txt # Dependencies 🔒 Legal Disclaimer ⚠️ Important: This tool is designed for educational purposes and authorized security testing only. Only scan systems you own or have explicit permission to test Unauthorized port scanning may violate laws and network policies The author assumes no liability for misuse of this software 🚀 Future Enhancements Export results to CSV/JSON/PDF Service version detection (deep banner grabbing) Scan speed configuration (adjustable thread count) Live graph visualization of open ports Save/load scan configurations Port knocking simulation OS fingerprinting 🤝 Contributing Contributions are welcome! Please feel free to submit a Pull Request. Fork the repository Create your feature branch (git checkout -b feature/AmazingFeature) Commit your changes (git commit -m 'Add some AmazingFeature') Push to the branch (git push origin feature/AmazingFeature) Open a Pull Request 📝 License This project is licensed under the MIT License - see the LICENSE file for more details. 📧 Contact Karan Sodari - @Memy968051 - urstrulykaran08@gmail.com Project Link: https://github.com/yourusername/port-scanner 🙏 Acknowledgments Python socket library documentation CustomTkinter development team Nmap project for service port inspiration Cybersecurity community for testing and feedback ⭐ Star this repository if you found it useful! ```
标签:GUI工具, Python, 插件系统, 数据泄露防护, 数据统计, 无后门, 端口扫描, 网络安全, 网络探测, 逆向工具, 隐私保护