rb410161-lgtm/Port-Scanner

GitHub: rb410161-lgtm/Port-Scanner

一个面向初学者的 Python TCP 端口扫描器,能够探测常见开放端口、识别运行服务并抓取 Banner 信息,帮助学习者掌握网络安全侦察的基础原理。

Stars: 0 | Forks: 0

# Python 端口扫描器 一个使用 Python 和 Socket 编程构建的适合初学者的 TCP 端口扫描器。 本项目扫描目标机器上的常见端口,识别开放端口,检测常见服务,并执行基本的 Banner 抓取,适用于教育和网络安全学习目的。 # 功能 - TCP 端口扫描 - 服务检测 - Banner 抓取 - 超时处理 - 错误处理 - 适合初学者的代码结构 # 使用技术 - Python 3 - Socket 编程 # 扫描端口 | 端口 | 服务 | |------|----------| | 21 | FTP | | 22 | SSH | | 23 | TELNET | | 25 | SMTP | | 53 | DNS | | 80 | HTTP | | 110 | POP3 | | 139 | NETBIOS | | 143 | IMAP | | 443 | HTTPS | | 445 | SMB | | 3306 | MySQL | | 3389 | RDP | | 8080 | HTTP-ALT | # 工作原理 扫描器: 1. 从用户处获取目标 IP 地址 2. 遍历预定义的端口 3. 使用 Python sockets 尝试 TCP 连接 4. 检查端口是开放还是关闭 5. 识别在开放端口上运行的常见服务 6. 尝试基本的 Banner 抓取以获取服务信息 # 安装说明 克隆仓库: ``` git clone https://github.com/YOUR_USERNAME/python-port-scanner.git ``` 进入项目文件夹: ``` cd python-port-scanner ``` # 使用说明 运行扫描器: ``` python3 scanner.py ``` 输入目标 IP: ``` Enter Target IP: 192.168.0.105 ``` # 示例输出 ``` Scanning Target: 192.168.0.105 -------------------------------------------------- [+] Port 22 OPEN Service: SSH Banner: SSH-2.0-OpenSSH_8.2p1 Ubuntu [+] Port 80 OPEN Service: HTTP Banner: Apache/2.4.41 (Ubuntu) Scan Completed. ``` # 学习目标 本项目帮助初学者理解: - Python 基础 - Socket 编程 - TCP 网络 - 端口扫描概念 - Banner 抓取 - 网络安全自动化 - 服务枚举 - 错误处理 # 免责声明 此工具创建用于: - 教育目的 - 个人实验室 - 仅限授权的安全测试 请勿在未经许可的情况下扫描系统。 # 未来改进 - 多线程扫描 - 全端口范围扫描 - 操作系统检测 - UDP 扫描 - 服务版本检测 - GUI 界面 - 导出扫描报告 # 作者 作为使用 Python 的网络安全学习项目创建。
标签:GraphQL安全矩阵, Python, Python 3, Socket编程, TCP协议, Windows内核, 二进制发布, 协议分析, 安全扫描器, 局域网扫描, 开源工具, 插件系统, 数据统计, 新手友好, 无后门, 服务器安全, 服务枚举, 本地模型, 权限提升, 横幅抓取, 白帽子, 端口扫描, 网络安全, 脚本编程, 隐私保护, 黑客技术