CC攻击应急:自动拉黑IP的Shell脚本

admin 2022年3月24日02:48:03评论140 views字数 1142阅读3分48秒阅读模式

CC攻击应急:自动拉黑IP的Shell脚本

前言


有人问我:如果攻击方采用代理ip进行cc攻击,我们应该如何应急?


由这个问题,引发了一些思考。他假定的场景是网站没有任何防护措施(就是在互联网上裸奔)好吧 ,既然没有任何的防护,在应急的时候,能不能通过脚本自动分析web日志,根据访问量自动拉黑ip?

脚本介绍

脚本设计思路:通过计划任务统计单位时间内的IP访问量,设定一个阀值,访问量超过阀值就自动拉黑。


#!/bin/bash#该脚本可以根据web日志的访问量,自动拉黑IP(加入计划任务,结合计划任务在固定时间段内执行,并根据该时间段内产生的日志进行分析) #首先把日志保存到根目录一份,计算日志有多少行line1=`wc -l /access_log|awk '{print$1}'`cp /var/log/httpd/access_log / #计算现有的日志有多少行line2=`wc -l /var/log/httpd/access_log |awk '{print$1}'` #根据上一次备份的日志和现在拥有的行数差值,作为单位时间内分析日志访问量tail -n $((line2-line1)) /var/log/httpd/access_log|awk '{print$1}'|sort -n|uniq -c|sort >/1.txtcat /1.txt|while read linedo echo $line >/linenum=`awk '{print$1}' /line` #设定阀值num,单位时间内操作这个访问量的ip会被自动拉黑if (($num>12))then  ip=`awk '{print$2}' /line`  firewall-cmd --add-rich-rule="rule family=ipv4 source address='${ip}' port port=80 protocol=tcp reject" --permanent  firewall-cmd --reload fidone


脚本测试


一台centos7虚拟机 搭建有http服务

  1. Web可以正常访


CC攻击应急:自动拉黑IP的Shell脚本


2.启动虚拟机centos的防火墙


CC攻击应急:自动拉黑IP的Shell脚本


3.把脚本加入计划任务


CC攻击应急:自动拉黑IP的Shell脚本


4.用nikto模拟大量的访问


CC攻击应急:自动拉黑IP的Shell脚本


5.再访问可以看到本地的IP已经无法访问网页


CC攻击应急:自动拉黑IP的Shell脚本


6.通过firewall-cmd –list-all 可以看到自己本地的ip地址已经被拉黑


CC攻击应急:自动拉黑IP的Shell脚本


7.我们也可以对在/etc/firewalld/zones/public.xml文件中对防火墙的规则进行直接操作,方便我们后期对拉黑的ip进行移除,修改等操作。


CC攻击应急:自动拉黑IP的Shell脚本


总结:

这个脚本只是给出一个样例,里面的阀值num需要根据自己网站的访问量自行调整。也可以根据这个脚本来演化,比如基于访问特征拉黑ip,有兴趣的可以自己研究。


CC攻击应急:自动拉黑IP的Shell脚本



本文始发于微信公众号(疯猫网络):CC攻击应急:自动拉黑IP的Shell脚本

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年3月24日02:48:03
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   CC攻击应急:自动拉黑IP的Shell脚本https://cn-sec.com/archives/506152.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息