arshshukla99/Port_Scanner

GitHub: arshshukla99/Port_Scanner

基于 Python Socket 和多线程构建的快速 TCP 端口扫描器,支持自定义端口范围扫描、服务检测及结果导出。

Stars: 0 | Forks: 0

# Python TCP 端口扫描器 一个使用 Socket 构建的简单多线程端口扫描器。 它的制作目的是为了理解: - TCP 连接。 - 网络扫描。 - 开放和关闭的端口。 - 每个端口上的服务。 - Socket 编程。 - Python 中的多线程。 - 服务检测。 - Banner Grabbing。 - 错误管理。 - 处理 json 文件。 - Thread Lock。 ## 包含的功能: - 实时扫描自定义端口范围。 - 可以扫描全部 65535 个端口。 - 包含完善的错误处理。 - 支持多线程,提供快速的扫描结果。 - 支持全部 65535 个端口的服务检测。 - 对开放端口进行 Banner Grabbing。 - 将开放端口导出为 JSON。 - 将开放端口导出为 CSV。 ## 使用的技术: - Python 3.14.2 - Socket 模块 - Threading 模块 - Sys 模块 - Argparse 模块 - Colorama 模块 - JSON 模块 ## 工作原理: 它首先接收用户的几项输入,例如 - IP 地址和端口范围(即起始端口和结束端口)。 注意 - 仅支持提供 IPv4 地址。 然后,它会尝试连接到提供的 IP 地址上,处于起始端口到结束端口范围内的每一个端口。 - 如果连接成功 -> 端口 {端口号} 处于 OPEN(开放)状态: - 如果连接失败 -> 端口处于 CLOSED(关闭)状态 ## 如何使用: 第 1 步:克隆仓库 ``` $ git clone https://github.com/arshshukla99/Port_Scanner ``` 第 2 步:导航到项目文件夹 ``` $ cd port_scanner.py ``` 第 3 步:运行脚本 'port_scanner.py' ``` $ python3 port_scanner.py -t 192.168.43.169 -s 1 -e 1000 ``` ## 示例输出 ``` $ python3 port_scanner.py -t 192.168.43.169 -s 1 -e 1000 ---------------------------------------------------------------------------------------------------- Simple Port Scanner ---------------------------------------------------------------------------------------------------- Port 139 is OPEN : netbios-ssn Port 135 is OPEN : epmap Port 445 is OPEN : microsoft-ds Port 623 is OPEN : asf-rmcp Scan Performed in : 2.6426780223846436 ``` ## 示例截图 image
标签:Banner抓取, Homebrew安装, Python, 云存储安全, 插件系统, 数据统计, 无后门, 端口扫描, 网络安全, 网络扫描, 逆向工具, 隐私保护