利用tcpdump抓包分析CGI被刷案例一则
2014-05-05 13:25:18 来源:我爱运维网 评论:0 点击:
今天又遇见有业务CGI被刷的情况,随手整理分享一下,希望对大家有用。
空间的base小域名流量一直增长,但业务方面没有发布变更,其他SET也没有类似的趋势,根据以往的经验,怀疑有CGI被额刷了。
上机器,使用root用户开始抓包分析。
第一招,分析来源IP是否有聚集。
tcpdump -itunl0 -c30000 tcp dst port 80 | grep IP | awk '{print $3}' | awk -F. -v OFS=. '{print $1,$2,$3,$4}' | sort | uniq -c | sort -r | head -20
因为前端接入使用的是TGW,所以请求包抓tunl0就够了。
从第一招的结果来看,基本可以确认是被刷了,而且浙江电信不应该访问这个域名。
第二招,分析CGI请求是否有聚集。
一般有GET和POST两种请求,大家可以根据情况选用,也可以修改一下grep的正则表达式两种都抓。
tcpdump -itunl0 -s1500 -A -n -c30000 dst port 80 | grep -Eo "POST .*" | awk -F"?" '{print $1}' | sort | uniq -c | sort –r
tcpdump -itunl0 -s1500 -A -n -c30000 dst port 80 | grep -Eo "GET .*" | awk -F"?" '{print $1}' | sort | uniq -c | sort -r
从第二招的结果来看,也基本可以确认被刷的CGI了。
第三招,确认该IP是否真的在刷。
确认的逻辑比较简单,就是分析该IP的所有请求包,是否只针对一个CGI,一个正常用户是不可能在短时间内只访问一个CGI的。
tcpdump -itunl0 -s1500 -A -n -c3000 dst port 80 and host 60.190.219.211 | grep -Eo "POST .*" | awk -F"?" '{print $1}' | sort | uniq -c | sort -r
从第三招的结果可以肯定该IP是恶意在刷这个CGI,联系业务、安全中心的同时帮忙确认后实施打击策略即可。
一般恶意刷CGI的背后都是有利益在驱动的,如果以上三招还不够用,咱们还有其他几招,有空再分享出来。
评论排行
- ·Windows(Win7)下用Xming...(92)
- ·使用jmx client监控activemq(20)
- ·Hive查询OOM分析(14)
- ·复杂网络架构导致的诡异...(8)
- ·使用 OpenStack 实现云...(7)
- ·影响Java EE性能的十大问题(6)
- ·云计算平台管理的三大利...(6)
- ·Mysql数据库复制延时分析(5)
- ·OpenStack Nova开发与测...(4)
- ·LTPP一键安装包1.2 发布(4)
- ·Linux下系统或服务排障的...(4)
- ·PHP发布5.4.4 和 5.3.1...(4)
- ·RSYSLOG搭建集中日志管理服务(4)
- ·转换程序源码的编码格式[...(3)
- ·Linux 的木马程式 Wirenet 出现(3)
- ·Nginx 发布1.2.1稳定版...(3)
- ·zend framework文件读取漏洞分析(3)
- ·Percona Playback 0.3 development release(3)
- ·运维业务与CMDB集成关系一例(3)
- ·应该知道的Linux技巧(3)