作者重装过电脑,好多图片不在了,大家当成科普看吧:

DDOS:

DDoS分布式拒绝服务(群殴):

一对一的攻击完全拼是 各自的资源,效果差 多对一的攻击汇聚资源能力,重点在于量大,属于资源耗尽型

现在:

现在:最强大最危险的攻击,攻击方式众多(专业化的要求勒索) 亲身经历:电商网站被勒索、Bill gates僵尸程序 贩卖和租用肉鸡已经成为黑产中重要的一部分 最终的办法就是拼资源,投资抗D,或者乖乖交保护费

攻击方式:
  • 连接耗尽型(包括SYN Flood其实就是伪造地址进行syn请求, 连接数攻击等)
  • 宽带耗尽型(Ack Flood, UDP Flood)
  • 应用层攻击(HTTP Get Flood, HTTP Post 慢速攻击)
D网络

基于巨量的Flood耗尽目标网络带宽资源 如:ICMP Flood, UDP Flood

D协议:

攻击协议漏洞发起的拒绝服务攻击 如:Syn Flood、Ping of Death、ARP、DNS、802.11、SSL

D应用:

针对应用软件和操作系统漏洞发起的拒绝服务攻击 大量频繁访问消耗系统资源严重的应用(CC) 通常表现为操作系统运行正常,网络流量不大,但服务停止响应 可以是一击毙命的,也可以是耗尽目标资源的

为何会被DOS:

从攻击者到被害者

网络->FW->服务器OS->服务应用

资源耗尽

网络:带宽 FW:吞吐量、并发连接 服务器:CPU、内存、I/O 应用:处理请求能力,对 OS资源的使用权

程序漏洞攻击

缓冲区溢出 协议、程序逻辑漏洞 链路上任何一点都可成为目标

Syn-Flood:

常伴随ip欺骗 真正的攻击目标

攻击脚本:./syn_flood.py -iptables -A OUTPUT -p tcp --tcp-flags RST RST -d 1.1.1.1 -j DROP -netstat -n I awk ‘/^ tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}‘ Windows系统默认半开连接数10个

IP地址欺骗:

经常用于DoS攻击 ■根据IP头地址寻址 -伪造IP源地址 ■边界路由器过滤 一入站、出战 ■受害者可能是源、目的地址 ■绕过基于地址的验证 ■压力测试模拟多用户 ■上层协议(TCP序列号)

Smurf攻击:

世界上最古老的DDoS攻击技术 -向广播地址发送伪造源地址的ICMP echo Request (ping)包 -LAN所有计算机向伪造源地址返回响应包 -对现代操作系统几乎无效(不响应目标为广播的ping)

Scapy -i=IP() -i.dst="1.1.1.255" -p=ICMP() -p.display() -r=(i/p) -send(IP(dst="1.1.1.255",src="1.1.1.2")/ICMP(),count=100,verbose=1)

sockstress:

2008年由 Jack C. Louis 发现,针对TCP服务的拒绝服务攻击 -消耗被攻击目标系统资源 -与攻击目标建立大量socket链接 -完成三次握手,最后的ACK包window大小为0 (客户端不接收数据) -攻击者资源消耗小(CPU、内存、带宽) -异步攻击,单机可拒绝服务高配资源服务器 -Window窗-实现的TCP流控

防御措施 -直到今天sockstress攻击仍然是一种很有效的DoS攻击方式 -甶于建立完整的TCP三步握手,因此使用syn cookie防御无效 -根本的防御方法是采用白名单(不实际) -折中对策:限制单位时间内每IP建的TCP连接数 ■封杀每30秒与80端口建立连接超过10个的IP地址 ■iptables -I INPUT -p tcp --dport 80 -m state --state NEW -m recent --set ■ iptables -I INPUT -p tcp --dport 80 -m state --state NEW -m recent --update --seconds 30 --hitcount 10 -j DROP ■以上规则对DDoS攻击无效

TearDrop:

主要针对早期微软操作系统(95、98、3.x、nt) -近些年有人发现对2.x版本的android系统、6.0 IOS系统攻击有效

原理很有趣 -使用IP分段偏移值实现分段覆盖,接收端处理分段覆盖时可被拒绝服务

攻击效果 -被攻击者蓝屏、重启、卡死

DNS放大攻击:

■产生大流量的攻击方法 -单机的带宽优势 -巨大单机数量形成的流量汇聚 -利用协议特性实现放大效果的流量

■ DNS协议放大效果 -查询请求流量小,但响应流量可能非常巨大 -digANYhp.com @202.106.0.20 (流量放大约8倍)

■攻击原理 -伪造源地址为被攻击目标地址,向递归域名查询服务器发起查询 -DNS服务器成为流量放大和实施攻击者,大量DNS服务器实现DDoS

SNMP放大攻击:

简单网络管理协议 -Simple Network Management Protocol -服务端□ UDP 161 / 162 -管理站(manager /客户端)、被管理设备(agent /服务端) -管理信息数据库(MIB)是一个信息存储库,包含管理代理中的有关配置和性能 的数据,按照不同分类,包含分属不同组的多个数据对象 -每一个节点都有一个对象标识符(OID)来唯一的标识 -IETF定义便准的MIB库/厂家自定义MIB库 ■攻击原理 -请求流量小,查询结果返回流量大 -结合伪造源地址实现攻击

NTP放大攻击

Network Time Protocol -保证网络设备时间同步 -电子设备互相干扰导致时钟差异越来越大 -影响应用正常运行、日志审计不可信 -服务端□ UDP 123

攻击原理 -NTP服务提monlist (MON_GETLIST)查询功能 监控NTP服务器的状况 -客户端查询时,NTP服务器返回最后同步时间的600个客户端IP 每6个IP—个数据包,最多100个数据包(放大约100倍)

发现NTP服务 —nmap -sU -p123 1.1.1.1

发现漏洞 —ntpdc -n -c monlist 1.1.1.1 —ntpq -c rv 1.1.1.1

  • ntpdc -c sysinfo 192.168.20.5

配置文件 -/etc/ntp.conf restrict -4 default kod nomodify notrap nopeer noquery restrict -6 default kod nomodify notrap nopeer noquery

NTP攻击对策 -升级到ntpd 4.2.7p26及以上的版本(默认关闭monlist查询) -手动关闭monlist查询功能

应用层Dos:

应用服务漏洞 -服务代码存在漏洞,遇异常提交数据时程序崩溃 -应用处理大量并发请求能力有限,被拒绝的是应用或OS

缓冲区溢出漏洞 -向目标函数随机提交数据,特定情况下数据覆盖临近寄存器或内存 -影响:远程代码执行、DoS -利用模糊测试方法发现缓冲区溢出漏洞

CesarFTP 0.99 服务漏洞 -ftp_fuzz.py # MKD/RMD MS12-020远程桌面协议DoS漏洞

Slowhttptest (源自google)

-低带宽应用层慢速DoS攻击(相对于CC等快速攻击而言的慢速) -最早由Python编写,跨平台支持(Linux、win、Cygwin、OSX) -尤其擅长攻击apache、tomcat (几乎百发百中)

攻击方法 -Slowloris、Slow HTTP POST 攻击

耗尽应用的并发连接池,类似于Http层的Syn flood HTTP协议默认在服务器全部接收请求之后才开始处理,若客户端发送速度缓慢或不完整,服务器时钟为其保留连接资源池占用,此类大量并发将导致DoS Slowloris:完整的http请求结尾是\r\n\r\n,攻击发\r\n...... Slow POST: HTTP头content-length声明长度,但body部分缓慢发送

攻击方法 -Slow Read attack攻击 与slowloris and slow POST目的相同,都是耗尽应用的并发连接池 不同之处在于请求正常发送,但慢速读取响应数据 攻击者调整TCP window窗口大小,是服务器慢速返回数据

-Apache Range Header attack 客户端传输大文件时,体积查过HTTP Body大小限制时进行分段 耗尽服务器CPU、内存资源

ulimite -n 70000

HTTP Post攻击模式 —slowhttptest -c 1000 -B -g -o body_stats -i 110 -r 200 -s 8192 -t FAKEVERB -u http://1.1.1.1 -x 10 -p 3

slowloris攻击模式 -slowhttptest -c 1000 -H -g -o header_stats -i 10 -r 200 -t GET -u http:// 1.1.1.1 -x 24 -p 3

支持代理 大量应用服务器和安全设备都无法防护慢速攻击

邮件攻击:

■炸邮箱

使用垃圾邮件塞满邮箱

■无意识的/非故意的拒绝服务攻击 -数据库服务器宕机恢复后,引用队列大量请求洪水涌来 -告警邮件在邮件服务器修改地址后洪水攻击防火墙

拒绝服务攻击工具:

-RUDY -慢速应用层HTTP POST攻击,与slowhttptest原理相同 -每次只传输一个字节的数据 -美剧“黑客军团”中曾提到此攻击手段 -攻击有表单WEB页面,攻击时需指定攻击的参数名称 -https://sourceforge.net/projects/r-u-dead-yet/

Hping3 -几乎可以定制发送任何TCP/IP数据包,用于测试FW、端口扫描、性能测试

Syn Flood 攻击 -hping3 -c 1000 -d 120 -S -w 64 -p 80 --flood --rand-source 1.1.1.1 -hping3 -S -P -U -p 80 --flood --rand-source 1.1.1.1 -hping3 -SARFUP -p 80 --flood --rand-source 1.1.1.1 (TCP Flood)

ICMP Flood 攻击 -hping3 -q -n -a 1.1.1.1 --icmp -d 56 --flood 1.1.1.2

UDP Flood 攻击 -hping3 -a 1.1.1.1 --udp -s 53 -d 100 -p 53 --flood 1.1.1.2

■LAND攻击 -特殊种类的SYN Flood攻击 -源地址、目的地址都是受害者,受害者于自己完成三次握手 —hping3 -n –a 1.1.1.1 -S -d 100 -p 80 –flood 1.1.1.1

■TCP全链接DoS攻击 —nping --tcp-connect --rate=10000 -c 1000000000 -q 1.1.1.1

■查公网丨P —nping --echo-client "public" echo.nmap.org --udp

■Siege -http/https压力测试工具,模拟多个用户并发访问请求 —siege

Siege

  • http/https压力测试工具,模拟多个用户并发访问请求
  • siege -g http://1.1.1.1/a.php //扫描网站banner信息
  • siege -i -c 1000 http://1.1.1.1/a.php -A siegehttp -vv 同时攻击多个url,使用-f调用字典文件 /etc/siege/urls.txt,也可以直接 编辑urls.txt把要攻击的地址放进去直接使用siege –i –c 1000 -vv就可以攻击

T50网络压力测试

  • t50 1.1.1.1 --flood --turbo -S --protocol TCP --dport 80 t50 1.1.1.1 --flood --turbo -S TCP UDP OSPF EIGRP --dport 22

Nmap -grep dos /usr/share/nmap/scripts/script.db |cut -d """ -f 2

匿名者发布的DoS工具 –LOIC – HOIC —DDoSer ■招募志愿者发放以上工具 ■以上DoS工具不隐藏真实IP地址

-XOIC -攻击任意IP地址的指定端口 — git clone git://git.code.sf.net/p/xoic/code xoic-code — https://xoicdoser.wordpress.com/ — 三种模式:test、normal、DoS Attack — 支持协议:TCP/HTTP/UDP/ICMP

■ HULK - Http Unbearable Load King -Python脚本 -随机产生大量唯一的地址请求,避免缓存命中 -耗尽WEB服务器资源池 https://packetstormsecurity.com/files/download/112856/hulk.zip

DDOSIM -7层拒绝服务工具(模拟多个僵尸机) -随机IP地址 一基于TCP连接的攻击 -应用层DDoS攻击 -正常的HTTP请求、非正常的HTTP请求式DDoS -SMTP DDoS -随机端口的TCP连接洪水

GoldenEye -http/https拒绝服务攻击工具 -安全研究为目的Python脚本 -随机攻击向量,keep-alive,避免缓存命中 —wget https://github.com/jseidl/GoldenEye/archive/master.zip -unzip master.zip —./goldeneye.py http://1.1.1.1 -w 50

sockstress攻击:

特征码识别:需要分析多个同种类攻击的包分析

脚本在httpslow:

用法: python torshammer.py -t 192.168.88.165 -p 81 192ip的81端口

缓冲区溢出漏洞 -向目标函数随机提交数据,特定情况下数据覆盖临近寄存器或内存 -影响:远程代码执行、DoS -利用模糊测试方法发现缓冲区溢出漏洞

CesarFTP 0.99 服务漏洞 -ftp_fuzz.py # MKD/RMD MS12-020远程桌面协议DoS漏洞

拒绝服务攻击工具:
Hping3

-几乎可以定制发送任何TCP/IP数据包,用于测试FW、端口扫描、性能测试

Syn Flood 攻击

-hping3 -c 1000 -d 120 -S -w 64 -p 80 --flood --rand-source 1.1.1.1 -hping3 -S -P -U -p 80 --flood --rand-source 1.1.1.1 -hping3 -SARFUP -p 80 --flood --rand-source 1.1.1.1 (TCP Flood)

ICMP Flood 攻击

-hping3 -q -n -a 1.1.1.1 --icmp -d 56 --flood 1.1.1.2

UDP Flood 攻击

-hping3 -a 1.1.1.1 --udp -s 53 -d 100 -p 53 --flood 1.1.1.2

LAND攻击 -特殊种类的SYN Flood攻击 -源地址、目的地址都是受害者,受害者于自己完成三次握手 —hping3 -n –a 1.1.1.1 -S -d 100 -p 80 –flood 1.1.1.1 ■TCP全链接DoS攻击 —nping --tcp-connect --rate=10000 -c 1000000000 -q 1.1.1.1 ■查公网丨P —nping --echo-client "public" echo.nmap.org --udp ■Siege -http/https压力测试工具,模拟多个用户并发访问请求 —siege

匿名者: LOIC工具, XOIC工具

远程控制软件:My ddos 4.0 批量控制

流量分析:

wireshark用法:https://blog.csdn.net/zzwwhhpp/article/details/113077747

或者科来:

网络溯源:流量可以恢复

p3:

ddos的防御,冰盾

0几年特别赚钱。

SYN攻击:

黑洞防火墙:

分析DDOS攻击:
SYN攻击判断:

看网卡状态:每秒大于1000以上的接收包。 看连接状态:netstat –na,看到大量SYN_RECEIVED状态的连接。 用冰盾DDoS监控器查看:SYN>100 被攻击的直接感受: Ping主机不通或丢包严重。 即便没有开放端口,CPU占用很高甚至100%

SYN Flood防护方法:

Random Drop: 随机丢包的方式虽然可以减轻服务器的负载,但是正常连接成功率也会降低很多。

特征匹配: 在攻击发生的当时统计攻击报文的特征,定义特征库;例如过滤不带TCP Options 的SYN 包等。如果攻击包完全随机生成则无能为力。

SYN Cookie: 可以避免由于SYN攻击造成的TCP传输控制模块TCB资源耗尽,将有连接的TCP握手变成了无连接模式,减轻了被攻击者的压力,但是SYN Cookie校验也是耗费性能的。

SYN Proxy: 完美解决SYN攻击的算法,但是非常耗费设备性能,在非对称网络不适用

ACK Flood攻击与防护:

发送大量的 ACK 包冲击设备 服务器回应 ACK/RST 包,消耗资源 正常连接ACK包承载数据传输,容易误判 带宽阻塞

ACK Flood防护:

抽取攻击包的指纹,动态模式匹配 Random Drop 对所有连接进行Syn Cookie 带宽阻塞

ICMP Flood攻击:

表象:针对同一目标IP的ICMP包在一侧大量出现 内容和大小都比较固定

UDP Flood 攻击:

表象:大量UDP冲击服务器 受害者带宽消耗 UDP Flood流量不仅仅影响服务器,还会对整个传输链路造成阻塞

UDP Flood原理:

发送大量的 数据包冲击设备 多采用大数据包,使得带宽阻塞 对于UDP 应用(视频音频)导致数据丢失 对于ICMP应用,使得管理员无法判断网络状态(ping)

UDP Flood的防护:

抽取攻击包的指纹,动态模式匹配 Random Drop 带宽限制 UDP verify via TCP Sessions 客户端认证

DNS Query Flood:
攻击手段:

Spoof IP 随机生成域名使得服务器必须使用递归查询向上层服务器发出解析请求,引起连锁反应。 蠕虫扩散带来的大量域名解析请求。 利用城域网 DNS服务器作为Botnet发起攻击

危害性:

字符串匹配查找是 DNS 服务器的主要负载。 一台 DNS 服务器所能承受的递归动态域名查询的上限是每秒钟50000个请求。 一台家用PC主机可以很轻易地发出每秒几万个请求。 DNS是互联网的核心设备,一旦DNS服务器被攻击,影响极大。 运营商城域网DNS服务器被攻击越来越频繁

TCP Connection Flood 攻击与防护:
攻击:

使用Proxy或者Botnet,向服务器某个应用端口(如80)建立大量的TCP连接 建立连接后,模拟正常应用的数据包以便长时间占用连接 通常一个应用服务都有连接数上限,当达到这个上限时,正常的客户端就无法再连接成功

Tcp Connection Flood防护:

限制单个IP地址的连接数量 探测源地址是否是Proxy 对于Botnet目前没有太好的方法去防护

Http Flood/ CC 攻击:

表象:

利用代理服务器向受害者发起大量HTTP Get请求 主要请求动态页面,涉及到数据库访问操作 数据库负载以及数据库连接池负载极高,无法响应正常请求

HTTP Get Flood 攻击与防护
攻击:

使用Proxy向服务器的WEB服务请求大量动态页面,从而产生大量的数据库查询,消耗服务器CPU资源 此攻击也称CC(Challenge Collapsar)攻击 可以实现单点攻击,而且攻击流量不需要很大 除了发送HTTP的GET方法,还可以使用HTTP的POST方法

防护:

探测源地址是否是HTTP Proxy,检查HTTP头中是否包含X_FORWARDED_FOR,VIA,CLIENT_IP,XONNECTION,XROXY_CONNECTION等等Proxy服务加入的特征字符 HTTP Refresh HTTP Cookie URL Cookie

游戏服务攻击与防护:
攻击:

使用HTTP Proxy对游戏服务端口进行大量请求,造成连接耗尽或者游戏服务程序占用大量CPU资源 利用游戏协议,发起大量的登录请求,消耗游戏服务器的CPU资源。

防护:

过滤HTTP请求 过滤非正常游戏数据 限制单个IP登录请求的数量 攻击包特征值过滤

VoIP(SIP) Flood 攻击与防护:
攻击:

VoIP是近期非常流行的服务,VoIP目前使用最广泛的协议是SIP 一个典型的 SIP INVITE 请求大约 1 KB。利用Botnet发送大量的SIP INVITE消息,可让服务器连续向伪造的来源发送数十个 kbps 的数据流媒体,从而迅速填满目标的上行链路。攻击者发送大量伪造SIP Invite包,使得服务器疲于应付、堵塞链路,达到拒绝服务目的

防护:

限制单个IP地址发送的INVITE消息数量

变种攻击:

利用很多攻击防范设备会将正常访问加入白名单的特性,利用正常访问的IP发动攻击。改良后的SYN Flood,DNS Query Flood等 针对清洗设备衍生的攻击手段,表象为脉冲攻击,首先发小股流量促使清洗设备引流,然后停止,调用PC进行正常访问,然后更换源IP进行大流量攻击

反射攻击及原理:

采用受害者的IP作为源IP,向正常网络发送大量报文,利用这些正常主机的回应报文达到攻击受害者的目的。Smurf, DNS反射攻击等 攻击者既需要掌握Botnet,也需要准备大量的存活跳板机,比如开放DNS服务器 反射攻击会有流量放大的效应,制造出的大流量攻击非常难以防御

多层次的DDoS攻击防御架构:

静态/动态过滤

ACL过滤 TCP协议状态过滤

客户端真实性检测

Cookie验证 重传验证 TCP反弹验证

特征识别:

网络层特征

传输层特征

应用层特征

自定义特征

应用层分析:

HTTP get攻击

DNS Query攻击

限速:

源ip限速

目的ip限速

应用层信息限速


分析DDOS攻击:

Ping 203.81.19.1 HTTP抓包分析:Smsniff.exe(一个抓包工具) HTTPDebug协议分析 Netstat命令 Telnet命令(使用见https://blog.csdn.net/m0_46015143/article/details/119379275) 冰盾DDoS攻击监控器 查看网卡接包与发送情况 任务管理器查看进程CPU占用和网络带宽占用

#####