mysydiouf/port_scanner

GitHub: mysydiouf/port_scanner

一个基于 Python 的 TCP 端口扫描器,用于发现开放端口并识别常见服务。

Stars: 0 | Forks: 0

# port_scanner 使用 Python 编写的 TCP 端口扫描器。用于发现目标机器上开放的端口,并识别其上运行的服务。 ## 功能特性 - 扫描目标(IP 或域名)的 TCP 端口 - 识别已知服务(HTTP、SSH、FTP、MySQL 等) - 通过 banner grabbing 获取服务版本 - 当危险端口(如 Telnet、RDP、SMB 等)开放时发出警告 - 扫描期间显示进度条 ## 运行程序 ``` python3 port_scanner.py ``` 只需输入目标地址并选择端口范围。如需进行安全的测试,请使用 `scanme.nmap.org`(这是 Nmap 专门为此提供的测试服务器)。 要求 Python 3.8+,无外部依赖。 ## 示例 ``` === PORT SCANNER === Cible : scanme.nmap.org (45.33.32.156) Ports : 1 -> 100 === RESULTATS === 2 port(s) ouvert(s) : PORT SERVICE STATUT 22 SSH OUVERT 80 HTTP OUVERT /!\ HTTP non chiffre Duree : 28.43s Scannes : 100 Ouverts : 2 ``` ## 工作原理 该扫描器使用 TCP socket。对于每个端口,它会尝试通过 `connect_ex()` 建立连接:如果返回 0,则说明该端口是开放的。这是一种经典的 TCP connect 扫描方式。 banner grabbing 会发送一个基础的 HTTP 请求,并读取服务器的响应以识别服务版本。 ## 免责声明 请仅在获得授权的机器上使用。未经授权扫描他人机器是违法的。 ## 作者 Sokhna Oumou Diouf
标签:Banner Grabbing, DNS查询工具, Python, TCP协议, 安全工具, 插件系统, 无后门, 端口扫描器, 网络审计