此工具扫描您的网络,查找运行易受攻击版本 OpenSSH (CVE-2024-6387) 的主机。它可以处理单个 IP、多个 IP、CIDR 范围以及包含自定义端口的 CSV 文件。
使用 pip 安装所需库:
pip install paramiko netaddr pandas termcolor
命令行参数
python CVE-2024-6387-Checker.py [-h] [-p PORT] [-c] input [-w WORKERS]
input:要扫描的主机(单个 IP、逗号分隔、CIDR 或文件路径)-p, --port:SSH 端口(默认:22)-c, --csv:输入是一个包含 IP 和端口列的 CSV 文件-w, --workers:指定工作线程数(默认:10)单个主机(默认端口 22)
python CVE-2024-6387-Checker.py 192.168.1.1
多个主机(逗号分隔)
python CVE-2024-6387-Checker.py 192.168.1.1,192.168.1.2
CIDR 表示法
python CVE-2024-6387-Checker.py 192.168.1.0/24
从文件读取主机 创建一个文件 hosts.txt,每个主机占一行:
python CVE-2024-6387-Checker.py hosts.txt
指定替代端口
python CVE-2024-6387-Checker.py 192.168.1.1 -p 2222
从 CSV 文件扫描
创建一个 CSV 文件 hosts.csv,包含 ip 和 port 列:
ip,port
192.168.1.1,22
192.168.1.2,2222
使用 CSV 文件扫描:
python CVE-2024-6387-Checker.py -c hosts.csv -c
指定工作线程数:
python scan_openssh.py 192.168.1.0/24 -w 20
check_ssh_version(host, port)
尝试连接到指定的主机和端口,获取 SSH 横幅,并检查是否与易受攻击的 OpenSSH 版本匹配。
scan_hosts(hosts, port)
在指定端口上扫描主机列表。
scan_csv(file_path)
读取包含 ip 和 port 列的 CSV 文件,并扫描每个主机。
main()
解析命令行参数,并根据输入格式启动相应的扫描。
本项目基于 MIT 许可证。详情请参阅 LICENSE 文件。
欢迎贡献。请提交拉取请求以进行任何增强或错误修复。