入侵防御之拒绝服务攻击
2021/5/3 10:28:17
本文主要是介绍入侵防御之拒绝服务攻击,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
是什么
DOS攻击(Denial-of-Service Attack),拒绝服务攻击,目的是破坏目标系统的可用性,使用目标网络或系统资源耗尽,使服务暂时中断或停止,导致其合法用户无法访问对服务干涉。其中资源包括但不限于:
网络——带宽
服务器——内存、CPU、I/O…
应用程序——处理请求能力,对OS的使用权占比
防火墙——吞吐量,并发连接数
DDOS(Distributed Denial-of-Service Attack),分布式拒绝服务攻击,处于不同位置的多台计算机同时向一个或多个目标发起拒绝服务攻击。
**目的:**炫耀,经济,信息战,政治原因。
为谋求经济效益,或商业竞争,电商平台之间可能会在特定日期相互攻击,干扰对方平台正常工作;出于一些政治目的,攻击者可能会在重大节日或政治敏感日期,攻击学校,政府等官方网站。
**特点:**往往不需要多么高超的技巧,但是很难防护,是影响网络信息系统可用性的重要危害之一,可以说是一种乱拳打死老师傅的技术。
有什么
按实施攻击思路分类:
1.滥用合理的服务请求——占用过多服务资源
2.制造高流量无用数据——占据网络带宽
3.利用传输协议缺陷——构造畸形包,目标主机崩溃
4.利用服务程序漏洞——发送特殊格式数据,导致服务处理错误
#怎么做
##剧毒包型——杀手包
#####(目前以基本失效,只作为思路扩展了解)
碎片攻击/泪滴攻击/Teardrop
目标系统:早期windows 95,98,3.x,NT/2.x版本的android/6.0 IOS
攻击效果:系统蓝屏、重启,手机卡死
原理:利用异常数据分片导致接收方在处理分片数据时崩溃——利用IP分段偏移值实现分段覆盖
分片包测试过程:
1-kali启动wireshark抓包
2-win7 ping命令:ping -l 3800 IP地址
3-分析ping分片包:ID/Fragment offset/Total length/…
死亡之Ping
原理:利用协议实现的漏洞,向目标主机发送超长的ping包
目标系统:早期存在处理ICMP协议数据 包存在漏洞的OS
测试:ping -l 65540 192.168.134.131 | ping -s 65540 IP地址 查看系统返回信息
效果:目前的系统已修正,失效。
Land攻击(局域网拒绝服务攻击)
这种攻击方式采用了特别构造的TCP SYN数据包(通常用于开启一个新的连接),使目标机器开启一个源地址与目标地址均为自身IP地址的空连接,持续地自我应答,消耗系统资源直至崩溃。这种攻击方法与SYN洪泛攻击并不相同
攻击特征:数据包中的源地址和目标地址相同
攻击效果:系统崩溃、重启。但目前新型系统也已修正,windows xp前的系统可能会中招。
##风暴型
什么是风暴型?通过大量的无用数据包占用过多的资源,以达到拒绝服务的目的。
分类:
直接风暴型——曾经很风光,但由于目前信息安全领域的发展,直接风暴型除了简单外没有别的好处,自身为源地址,容易追溯暴露;
反射型——通过向第三方发起请求,将流量扩大反射到攻击目标上,现在成主流。
Ping风暴
原理:向目标主机发送大量的ICMP回应请求消息,使目标主机系统忙于处理这些消息降低性能。
效果:这种方式只凭一台主机的攻击效果可以说是基本没有,在尝试中,就算使用Linux系统发送最大数据报,被攻击者的网络波动也相当小。而且还可能一些路由器或运营商会自动过滤大量ICMP报文,所以这种方法在实践中基本无效。
SYN风暴
思路:利用TCP连接建立三次握手
原理:发送大量的SYN报文,但对服务器的SYN+ACK应答报文不作应答,造成服务器维护大量的半连接列表,消耗服务器半连接资源
半连接资源:连接数!
测试步骤:
1-kali开启wireshark抓包
2-kali使用scapy构造“攻击数据包”
i=IP() i.dst="192.168.***.***" # i.display() t=TCP() t.dport=135 # t.display() sr1(i/t)
3-wireshark抓包分析:有RST包(TCP连接异常终止)——操作系统自作主张发包 终止挂起的tcp连接,影响攻击效果
4-kali设置本地防火墙iptables,禁止操作系统向目标主机发reset包
命令:iptables -A OUTPUT -p tcp --tcp-flags RST RST -d IP地址 -j DROP
5-重复scapy构造“攻击数据包”
6-wireshark抓包分析:目标主机连发三条SYN+ACK,但得不到第三个ACK,等待一段时间目标主机reset
注意:常伴随IP欺骗(伪造IP地址)——一方面逃避追踪;另一方面为了攻击能成功。
应对方法
1.缩短SYN Timeout时间
2.设置SYN Cookie
3.负反馈策略
4.退让策略
5.分布式DNS负载均衡
6.防火墙
##其他直接风暴方法
TCP连接耗尽攻击
UDP风暴攻击
HTTP风暴攻击
邮件系统DoS攻击
反射型
反射型DDoS(Distributed Reflection Denial of Service, DRDoS)
·特点/原理:
1-利用应用层协议
2-反射节点——开放特定服务的服务器
3-将源IP地址伪造成攻击目标的的IP地址
NTP反射攻击
**NTP:**是用来使计算机时间同步化的一种协议,它可以使计算机对其服务器或时钟源(如石英钟,GPS等等)做同步化,它可以提供高精准度的时间校正(LAN上与标准间差小于1毫秒,WAN上几十毫秒),且可介由加密确认的方式来防止恶毒的协议攻击。时间按NTP服务器的等级传播。按照离外部UTC源的远近把所有服务器归入不同的Stratum(层)中。(端口号123)
攻击效果保证:开放时间服务器(原子时间)约有80万台(1800左右常用服务器)
攻击原理:Monlist功能
测试:
1-Ubuntu开启NTP服务
2-kali扫描网段内开启NTP服务主机:nmap -sU -p123 192.168.134.0/24
扫描结果:发现192.168.134.130开放NTP服务
3-kali开启wireshark抓包
4-kali测试monlist功能,命令:ntpdc -n -c monlist 192.168.134.130
5-对照kali返回结果,wireshark抓包分析:查询包234B——>响应包410B(5条记录,6条记录就是482B)
6-攻击win7测试:利用IP欺骗,kali中scapy伪造源地址NTP查询包
(1)scapy按照NTP数据包格式构造发包:send(IP(dst=“192.168.134.130”, dst=“192.168.134.129”)/UDP(sport=40874)/NTP(version=2,mode=7,stratum=0,poll=3,precision=42))
(2)wireshark抓包分析:查询包90B——>响应包410B(5条记录,6条记录就是482B)
禁用monlist功能(可用4.2.7以上版本)
1-配置NTP策略文件:sudo vi /etc/ntp.conf
2-找到两行,去掉前面的注释号#,表示禁用
restrict -4…
restrict -6 …
3-关停NTP服务再开启,即:sudo service ntp stop/start
###DNS放大攻击
DNS协议放大效果——查询请求流量小,但响应流量可能非常巨大
前提:利用配置缺陷——DNS服务器配置不当,成为递归查询服务器
测试:
环境:目标主机win7 192.168.134.129/攻击主机Kali 192.168.134.131
过程:
1-kali启动wireshark抓包(测试效果)
2-DNS查询:命令 dig any qq.com @114.114.114.114
反复试探多个域名,找到放大效果最好的
3-scapy构造数据包
i=IP() i.dst="114.114.114.114" i.src="192.168.134.131" # i.display() u=UDP() # u.display() u.dport=53 d=DNS() d.rd=1 d.qdcount=1 q=DNSQR() q.qname='[baidu.com](http://baidu.com)' q.qtype=255 d.dq=q r=(i/u/d) # r.display() sr1(r)
4-wireshark抓包分析——查询包和响应包
5-重复scapy构造数据包过程——源地址改为192.168.134.129
攻击原理
伪造源地址为被攻击目标地址,向递归域名查询服务器发起查询;DNS服务器成为流量放大和实施“攻击者”,大量DNS服务器实现DDoS
小结:产生大流量的攻击方法
1-单机的带宽优势
2-巨大单机数量形成的流量汇聚
3-利用协议特性实现放大效果
#怎么防
对于各厂商来说最简单有效的办法就是买更多更好的服务器,当你提供服务的算力能比攻击者调动起来一切资源的总和还大时,就没人能让你拒绝服务。在资源有限的情况下,想完全阻止是不可能的,因为无法分辨请求的好坏,所以只能尽量减少被攻击的机会。
防御措施
防范手段:
1.限制带宽
2.终端防御
3.入口过滤
###检测方法:
检测难点在于不容易定位攻击者的位置,反射攻击已成为主流,可能构造合理请求,系统无法分辨。
1.依据攻击工具的“特征标志”检测
特定端口:不同攻击工具常使用的端口固定且不相同
标志位:序列号
特定数据内容
2.统计检测
3.主机网络连接特征检测
4.根据异常流量来检测
检测原理/思路:DoS工具产生的网络通信信息有两种
1-网络通信——在DoS攻击代理与目标主机之间
2-控制信息——在DoS管理者与攻击代理之间
异常现象
1-明显超出网络正常工作时的极限通信流量现象
2-特大型ICMP和UDP数据包
3-不属于正常连接通信的TCP和UDP数据包
4-数据段内容只包含文字和数字字符
###响应
丢弃恶意分组
源端控制
追溯攻击源端,阻止它发起新攻击
流量清洗——最有效的对抗风暴型DDoS方法
对DDoS攻击与正常业务数据混合在一起的流量进行净化,净化掉DDoS攻击流量,保留正常业务流量
过程:攻击监测和判断、流量牵引、清洗过滤、流量回送
这篇关于入侵防御之拒绝服务攻击的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-23Springboot应用的多环境打包入门
- 2024-11-23Springboot应用的生产发布入门教程
- 2024-11-23Python编程入门指南
- 2024-11-23Java创业入门:从零开始的编程之旅
- 2024-11-23Java创业入门:新手必读的Java编程与创业指南
- 2024-11-23Java对接阿里云智能语音服务入门详解
- 2024-11-23Java对接阿里云智能语音服务入门教程
- 2024-11-23JAVA对接阿里云智能语音服务入门教程
- 2024-11-23Java副业入门:初学者的简单教程
- 2024-11-23JAVA副业入门:初学者的实战指南