
此脚本由 R4Tw1z 创建,用于扫描 IP 地址,检查它们是否运行可能存在漏洞的 OpenSSH 版本。此脚本是 OpenSSH 漏洞扫描器的一个更快、更简单的版本。该工具利用多线程来优化扫描性能,并同时处理多个 IP 地址。
输入处理: 该脚本接受 IP 地址、域名、包含 IP 地址的文件路径或 CIDR 网络范围作为输入。 IP 地址可以直接提供或从文件中读取。
端口与超时配置: 用户可以指定要检查的端口(默认为 22 端口,常用于 SSH)。 还可以设置连接超时值,默认为 1 秒。
多线程: 该脚本使用线程池并发处理 IP 地址,从而提高扫描速度。 可以配置工作线程的数量(默认为 10)。
端口状态检查: 该脚本首先检查每个 IP 地址上指定端口是否开放。
SSH Banner 获取: 如果端口开放,该脚本会尝试从服务器获取 SSH Banner。 分析 Banner 以确定 SSH 服务是否属于可能存在漏洞的 OpenSSH 版本。
漏洞评估: 将一组预定义的存在漏洞的 OpenSSH 版本与获取到的 Banner 进行比对。 结果分为存在漏洞、不存在漏洞以及端口关闭三种状态。
结果输出: 该脚本输出不存在漏洞、可能存在漏洞以及端口关闭的服务器数量。
python r4tw1z.py <targets> [options]
"目标":要扫描的 IP 地址、域名、包含 IP 地址的文件路径或 CIDR 网络范围。
--port PORT (default: 22): Specify the port number to check.
-t, --timeout TIMEOUT (default: 1.0): Set the connection timeout in seconds.
-w, --workers NUM (default: 10): Define the number of worker threads for concurrent scanning.
-o, --output FILE (optional): Output the results to a specified file.
-c, --custom_banners BANNER1 BANNER2 ... (optional): List custom SSH banners to check for vulnerabilities.
-v, --verbose: Enable verbose mode to display detailed information about each scanned server.
-r, --retries NUM (default: 3): Set the number of retries for each connection attempt.
python r4tw1z.py 192.168.1.1 192.168.1.2
python r4tw1z.py 192.168.1.0/24 -v
python r4tw1z.py ips.txt -o results.txt
python r4tw1z.py 192.168.1.1 -c "SSH-2.0-CustomBanner1" "SSH-2.0-CustomBanner2"
python r4tw1z.py 192.168.1.1 -r 5 -w 20
欢迎 fork 本仓库并提交拉取请求。始终欢迎为改进该工具做出贡献!