原文 http://drops.wooyun.org/tips/2457
0x00 背景
这两天一个客户反映自己的网站经常出现mysql 1040错误,他的在线用户才不到一千,mysql配置也没问题,vps用的时linode160+刀一个月的。
没理由出现这种情况,于是,我进行了一系列的排查。top了一下,mysqld跑到了900%多。
0x01 解决方案&思路
我怀疑是CC攻击,鉴于系统是centos,我运行了下面的这两行命令。
netstat -anlp|grep 80|grep tcp|awk '{print $5}'|awk -F: '{print $1}'|sort|uniq -c|sort -nr|head -n20 | netstat -ant |awk '/:80/{split($5,ip,":");++A[ip[1]]}END{for(i in A) print A[i],i}' |sort -rn|head -n20
把请求过多的IP记录下来。
174.127.94.* 199.27.128.* 199.27.133.*
开始封禁IP,具体可以看我下面运行的命令。本文主要是采用iptables进行封禁,iptables使用方法请见:Iptables入门教程
iptables -I INPUT -s 174.127.94.0/16 -j DROP iptables -I INPUT -s 199.27.128.0/16 -j DROP iptables -I INPUT -s 199.27.133.0/16 -j DROP iptables -I INPUT -s 193.1.0.0/8 -j DROP 【慎用封禁整个段】
运行上面这些命令之后我们已经完成封禁操作了,不过还得保存一下,如果不保存的话重启系统之后上面设定的规则会消失。
service iptables save
运行下面这行命令,来查看谁的访问量最高(需要服务器安装tcpdump)
tcpdump -i eth0 -tnn dst port 80 -c 1000 | awk -F"." '{print $1"."$2"."$3"."$4}' | sort | uniq -c | sort -nr |head -20 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on eth0, link-type EN10MB (Ethernet), capture size 65535 bytes 1000 packets captured 1000 packets received by filter 0 packets dropped by kernel 1420 IP 174.7.7.*
然后将packets过多的IP记录下来,用上面的方法封禁。
运行
service iptables save
保存然后重启
iptables service iptables restart
这一步建议多进行几次,发现异常IP用上面的办法封禁。如果出现误封可以参考下面这行解封命令进行解封
iptables -D INPUT -s 222.142.2.0/16 -j DROP
0x02 常用命令
封单个IP的命令是:
iptables -I INPUT -s 211.1.0.0 -j DROP
封IP段的命令是:
iptables -I INPUT -s 211.1.0.0/16 -j DROP iptables -I INPUT -s 211.2.0.0/16 -j DROP iptables -I INPUT -s 211.3.0.0/16 -j DROP
封整个B段的命令是:
iptables -I INPUT -s 211.0.0.0/8 -j DROP
封几个段的命令是:
iptables -I INPUT -s 61.37.80.0/24 -j DROP iptables -I INPUT -s 61.37.81.0/24 -j DROP
0x03 后续
进行了上面的操作之后,客户的网站正常了,几乎秒开,当然这和他的vps给力也有一定的关系。top了一下,服务器资源也正常了。
相关推荐
通过组合使用这些参数,可以创建一个更加安全的防火墙规则,保护 Linux 主机免受 CC 攻击和 DDoS 攻击。 Linux 主机防 CC 攻击的方法需要根据实际情况选择合适的防火墙规则和参数,并且需要小心避免内核恐慌状态...
安全狗4.0防火墙坑DDOS坑CC攻击 网站安全狗是一款集网站内容安全防护、网站资源保护及网站流量保护功能为一体的服务器工具,有了它服务器管理员就不必再担心服务器IIS出现故障、服务器受到黑客攻击等苦恼。 网站...
Linux下的vps被ddos攻击的解决办法.docx
DDoS 攻击是一种常见的网站攻击方法,CC 攻击是其中的一种,俗称 Challenge Collapsar 攻击。CC 攻击针对 Web 服务在第七层协议发起攻击,攻击者通过匿名代理服务器在互联网上寻找匿名的 HTTP 代理或者 SOCKS 代理,...
服务器安全狗的ddos攻击实例和设置
被ddos攻击状态显示
中新金盾是一家专注于提供专业抗DDoS(分布式拒绝服务)和CC攻击硬件设备的网络安全解决方案供应商。其产品和服务致力于保护网络基础设施免受恶意流量的冲击,确保业务的稳定运行。在网络安全领域,DDoS攻击和CC攻击...
centos,linux使用ddos的防止流量攻击。 一般的vps小服务器使用 小范围的阻止
DDoS(Distributed Denial of Service)分布式拒绝服务攻击是一种常见的网络攻击手段,它通过大量恶意请求淹没目标服务器,导致其无法正常处理合法用户的请求,从而瘫痪服务。本案例将深入探讨DDoS攻击的原理、类型...
"Linux 下 DoS 和 DDoS 攻击的防范" setTitle:Linux 下 DoS 和 DDoS 攻击的防范 DoS(Denial of Service)是一种拒绝服务攻击,指故意攻击网络协议实现的缺陷或直接通过野蛮手段耗尽被攻击对象的资源。目的是让...
Linux系统提供了多种方式来防御DDOS攻击,本文将介绍其中的一些方法。 1. 调整TCP/IP协议参数 DDOS攻击 thường利用TCP/IP协议的弱点,通过大量的SYN请求来填满服务器的网络队列,使得服务器无法响应正常的用户...
SYN/ACK Flood攻击是经典最有效的DDoS方法,通过向受害主机发送大量伪造源IP和源端口的SYN或ACK包,导致主机的缓存资源被耗尽或忙于发送回应包而造成拒绝服务。TCP全连接攻击就是通过许多僵尸主机不断地与受害服务器...
Linux 防止 DOS 和 DDOS 攻击方法 DOS(Denial of Service)和 DDOS(Distributed Denial of Service)是两种常见的网络攻击方式,它们可以对服务器造成很大的影响,导致服务器瘫痪或崩溃。 Linux 操作系统提供了...
DDOS攻击的三种类型 Linux服务器预防DDoS攻击的措施.docx
3. **僵尸网络**:由黑客控制的一群被感染的计算机组成的网络,用于发动大规模DDoS攻击。 4. **CC攻击**(Challenge Collapsar):主要针对Web应用层,通过大量HTTP请求消耗服务器资源。 每种类型的DDoS攻击都有其...
DDoS防火墙能否打败DDoS攻击 随着网络攻击方式越来越狡诈,网络平安专家表示。以网络应用为主营业务的企业应该寻求更好的防火墙对自身进行防护,尤其是针对分布式拒绝服务攻击(DDOS 超越80%网络攻击是针对网络...
项目名称:基于SVM算法的DDoS攻击识别系统 项目概述: DDoS(分布式拒绝服务)攻击是一种常见的网络攻击手段,它通过占用目标系统的资源,使得合法用户无法获得服务。为了有效识别和防御DDoS攻击,本项目将利用...
DDOS 攻击防护解决方案 I. 联想网御DDoS攻击防护解决方案概述 联想网御针对电信骨干网DDoS攻击防护解决方案旨在为电信运营商提供一整套抵御DDoS流量攻击的系统。该方案通过异常流量过滤设备和异常流量管理系统,...