DDOS攻击类型以及iptables防范ddos脚本
2011-10-19 13:27
204 查看
一. 常见的DDos攻击类型
SYN Flood:是当前最流行的DoS(拒绝服务攻击)与,这是一种利用TCP协议缺陷,发送大量伪造的TCP连接请求,从而使得被攻击方资源耗尽(CPU满负荷或内存不足)的攻击方式。
Smurf:该攻击向一个子网的广播地址发一个带有特定请求(如ICMP回应请求)的包,并且将源地址伪装成想要攻击的主机地址。子网上所有主机都回应广播包请求而向被攻击主机发包,使该主机受到攻击。
Land-based:攻击者将一个包的源地址和目的地址都设置为目标主机的地址,然后将该包通过IP欺骗的方式发送给被攻击主机,这种包可以造成被攻击主机因试图与自己建立连接而陷入死循环,从而很大程度地降低了系统性能
Ping of Death:根据TCP/IP的规范,一个包的长度最大为65536字节。尽管一个包的长度不能超过65536字节,但是 一个包分成的多个片段的叠加却能做到。当一个主机收到了长度大于65536字节的包时,就是受到了Ping of Death攻击,该攻击会造成主机的宕机。
Teardrop:IP数据包在网络传递时,数据包可以分成更小的片段。攻击者可以通过发送两段(或者更多)数据包来实现TearDrop攻击。第一个包的偏移量为0,长度为N,第二个包的偏移量小于N。为了合并这些数据段,TCP/IP堆栈会分配超乎寻常的巨大资源,从而造成系统资源的缺乏甚至机器的重新启动。
二. 如何检测是否遭受了DDos攻击
第一种方法:这里有一条非常实用的命令
# netstat -an|grep SYN_RECV|wc –l
如果显示的数据比较大的话,你很可能已经中招了。
第二种方法:用监控软件,比如mrtg或cacti都可以,比如下面显示,流量在某一时刻突然剧增
三. 如何预防DDos,这里有一个非常实用的脚本
#!/bin/bash
netstat -an|grep SYN_RECV|awk '{print$5}'|awk -F: '{print$1}'|sort|uniq -c|sort -rn|awk '{if ($1>5) print$2}'>/tmp/dropip
for i in $(cat /tmp/dropip)
do
/sbin/iptables -A INPUT -s $i -j DROP
echo “$i kill at `date`”>>/var/log/ddos
done
该脚本会把处于SYN_RECV并且数量达到5个的ip做统计,并且写到iptables的INPUT链做拒绝。
SYN Flood:是当前最流行的DoS(拒绝服务攻击)与,这是一种利用TCP协议缺陷,发送大量伪造的TCP连接请求,从而使得被攻击方资源耗尽(CPU满负荷或内存不足)的攻击方式。
Smurf:该攻击向一个子网的广播地址发一个带有特定请求(如ICMP回应请求)的包,并且将源地址伪装成想要攻击的主机地址。子网上所有主机都回应广播包请求而向被攻击主机发包,使该主机受到攻击。
Land-based:攻击者将一个包的源地址和目的地址都设置为目标主机的地址,然后将该包通过IP欺骗的方式发送给被攻击主机,这种包可以造成被攻击主机因试图与自己建立连接而陷入死循环,从而很大程度地降低了系统性能
Ping of Death:根据TCP/IP的规范,一个包的长度最大为65536字节。尽管一个包的长度不能超过65536字节,但是 一个包分成的多个片段的叠加却能做到。当一个主机收到了长度大于65536字节的包时,就是受到了Ping of Death攻击,该攻击会造成主机的宕机。
Teardrop:IP数据包在网络传递时,数据包可以分成更小的片段。攻击者可以通过发送两段(或者更多)数据包来实现TearDrop攻击。第一个包的偏移量为0,长度为N,第二个包的偏移量小于N。为了合并这些数据段,TCP/IP堆栈会分配超乎寻常的巨大资源,从而造成系统资源的缺乏甚至机器的重新启动。
二. 如何检测是否遭受了DDos攻击
第一种方法:这里有一条非常实用的命令
# netstat -an|grep SYN_RECV|wc –l
如果显示的数据比较大的话,你很可能已经中招了。
第二种方法:用监控软件,比如mrtg或cacti都可以,比如下面显示,流量在某一时刻突然剧增
三. 如何预防DDos,这里有一个非常实用的脚本
#!/bin/bash
netstat -an|grep SYN_RECV|awk '{print$5}'|awk -F: '{print$1}'|sort|uniq -c|sort -rn|awk '{if ($1>5) print$2}'>/tmp/dropip
for i in $(cat /tmp/dropip)
do
/sbin/iptables -A INPUT -s $i -j DROP
echo “$i kill at `date`”>>/var/log/ddos
done
该脚本会把处于SYN_RECV并且数量达到5个的ip做统计,并且写到iptables的INPUT链做拒绝。
相关文章推荐
- DDOS攻击类型以及iptables防范ddos脚本
- DDOS攻击类型以及iptables防范ddos脚本 推荐
- DDOS攻击类型以及iptables防范ddos脚本
- DDOS攻击类型以及iptables防范ddos脚本
- Java之戳中痛点 - (3)三目运算符的两个操作数类型尽量一致 Java之戳中痛点 - (4)i++ 和 ++i 探究原理 Java之戳中痛点 - (1)易变业务使用脚本语言编写 Java之戳中痛点 - (2)取余用偶判断,不要用奇判断 (5)switch语句break不能忘以及default不同位置的用法 Java之戳中痛点 - (7)善用Java整型缓存池
- iptables防火墙详解(三)规则的导出、导入以及编写防火墙脚本
- iptables防火墙详解(三)规则的导出、导入以及编写防火墙脚本
- 权限管理2 以及bash的特性 快捷键,补全功能以及变量的类型,登录类型,脚本
- Iptables DDOS/CC 自动屏蔽脚本
- linux下使用ddos脚本防止ddos攻击
- iptables防火墙详解(三)规则的导出、导入以及编写防火墙脚本
- DDoS deflate+iptables防御轻量级ddos攻击
- 认识了解DDOS攻击以及防范措施
- 轻量级防范DDOS攻击脚本
- 防范DDOS攻击脚本
- Iptables DDOS/CC 自动屏蔽脚本
- DDOS攻击四大工具及使用剖析,与DDOS防范措施(图)
- 分享一个iptables防火墙的脚本和防御ddos攻击的脚本