CC爬虫攻击测试与防护
CC爬虫攻击测试与防护
本文章旨在对最基本的CC攻击进行测试与防护,本次测试的所有站点均为本人自建,没有也不会去攻击其他站点。希望各位读者能够遵循当地法律法规,不要做危害他人计算机的行为
测试流程
- 裸机无防护测试;
- WAF雷池测试
- Cloudflare 防护测试
测试
程序
在这里我用Python写了一个小脚本,主要使用了aiohttp和asyncio两个库,模拟高并发来进行测试
当然你同样可以使用requests来进行测试
如果你想测试比较极端的环境,你甚至可以部署很多的Docker容器,模拟高并发环境
默认的参数total_requests = 10000、threads = 20
肉鸡
测试的机器是一台2C2G的服务器:

上面部署了一个最基础的以Halo为模板的博客系统,来模拟常见的业务过程
裸机无防护测试

一上来攻击CPU直接炸了
网页访问很慢,由于我使用了Ajax加载,从而导致网页无法正常跳转,表现为一直留在原界面,用户端体验极差
WAF雷池测试
雷池实际上是一个类似于Nginx Proxy Manager的反代程序,不过它最具特色的就是带有防火墙功能:

因为专业版要钱,所以在这里我们只用最基础的社区版,按照官方的要求,我们应该将他部署在另外一台干净的反代服务器上,但是由于我们只进行最基础的测试,我这里就部署在同一台机器上了:

请务必确定反代前源服务器的可用性:(在这里你可以填入容器内的IP地址,就可以不开启云服务器的端口)


未开启防火墙
现在我们还未开启任何防护服务,开始测试:

可以看到在被攻击的全程,服务器被打爆了,CPU占有率一直高居不下,网站也无法正常访问
开启防火墙
开启人机验证,开启之后进入网页需要我们等待片刻(有点类似于Cloudflare的CAPTCHA)

此时我们重新攻击:

此时的过程很有意思,服务器的CPU占用会先飚的很高,之后会迅速降低,趋于平均,网站也恢复正常访问



Cloudflare 防护测试
CND
如图,已经通过 Cloudflare小黄云代理了:

开始测试:

服务器也还是直接炸了,网站无法正常打开
自动程序攻击模式未奏效

一直到攻击结束,Cloudflare都未能对CC攻击做出正确反映和拦截(我估计是要氪金?
Tunnels
我们先创建一个Tunnel,在这里我直接使用Docker进行部署:

开始测试之后:

还是炸,Cloudflare没有任何拦截作用~
最后还是欢迎光临我的小站:小树 | CC爬虫攻击测试与防护
CC爬虫攻击测试与防护的更多相关文章
- DDOS的攻击原理和防护指南(转)
DDOS的攻击原理和防护指南 作者:冰盾防火墙 网站:www.bingdun.com 日期:2008-01-07 我们现在来分析DDOS的攻击原理. 首先,DDOS是英文Distribut ...
- Nginx下防御HTTP GET FLOOD(CC)攻击
Nginx下防御HTTP GET FLOOD(CC)攻击 Nginx是一款轻量级的Web服务器,由俄罗斯的程序设计师Igor Sysoev所开发,最初供俄国大型的入口网站及搜寻引Rambler使用. ...
- iptables限制连接数(如sftp) 以及 谨防CC/DDOS攻击的配置 ( connlimit模块)
之前在公司服务器上部署了sftp,用于上传业务系统的附件.后来由于程序连接问题,使的sftp连接数过多(最多时高达400多个sftp连接数),因为急需要对sftp的连接数做严格限制.操作记录如下: 启 ...
- iptables限制同一IP连接数,防防CC/DDOS攻击
启动sftp本机的iptables防火墙功能,限制每个ip连接22端口(sftp连接端口即是ssh端口)最大为50个,当超过50后的连接数的流量就会被DROP掉! 同时iptables需要开放5000 ...
- nginx防DDOS、cc、爬虫攻击
一.防止DDOS.CC攻击 http { limit_conn_zone $binary_remote_addr zone=perip:10m; limit_conn_zone $server_nam ...
- DDOS攻击原理及防护方法论
从 07年的爱沙尼亚DDOS信息战,到今年广西南宁30个网吧遭受到DDOS勒索,再到新浪网遭受DDOS攻击无法提供对外服务500多分钟. DDOS愈演愈烈,攻击事件明显增多,攻击流量也明显增大,形 ...
- DDOS的攻击原理和防护指南
我们现在来分析DDOS的攻击原理. 首先,DDOS是英文Distributed Denial of Service的缩写,意思是分布式拒绝服务.拒绝服务又是什么意思呢?就是采取一些垃圾数据包来阻塞网站 ...
- HTML5离线缓存攻击测试
本实验采用局域网模拟,通过修改本地HOSTS文件来模拟域名以及DNS欺骗.合法网站使用Linux CentOS7的apache服务器搭建,IP为192.168.1.113,HOSTS文件中加入192. ...
- MAC地址泛洪攻击测试
测试环境:kali系统(2个kali分别作攻击人和目标用户) win7系统(主机) 1.步配置FTP设置用户名密码 2.在攻击kali端测试网络的连通性 3.测试tpf是否正常 开始泛洪 4.开始抓包 ...
- 免费DDOS攻击测试工具大合集
FreeBuf微科普: DoS(Denial Of Service)攻击是指故意的攻击网络协议实现的缺陷或直接通过野蛮手段残忍地耗尽被攻击对象的资源,目的是让目标计算机或网络无法提供正常的服务或资源访 ...
随机推荐
- Golang 入门 : 创建第一个Go程序
创建第一个Go程序 新建一个 helloworld.go 文件,写入以下程序 package main import ( "fmt" ) // 一个函数声明 /* 一个main函数 ...
- Web前端入门第 23 问:CSS 选择器的优先级
任何地方都存在阶级,CSS 选择器也不例外,也会讲一个三六九等. 选择器类别 通配符选择器 标签选择器 类选择器 ID选择器 属性选择器 伪类选择器 伪元素选择器 关系选择器 流传已久的阶级划分 选择 ...
- H5 ios端底部安全距离CSS
html 头部添加 <meta name="viewport" content="width=device-width, initial-scale=1.0,min ...
- centos7防火墙启动关闭
1. 查看防火墙状态 systemctl status firewalld.service 2. 查看对外开放的端口号 firewall-cmd --list-ports 3. 添加端口号 firew ...
- Cursor入门教程-JetBrains过度向
Cursor使用笔记 前置:之前博主使用的是JetBrains的IDE,VSCode使用比较少,所以会尽量朝着JetBrains的使用习惯及样式去调整. 一.设置语言为中文 如果刚上手Cursor,那 ...
- Spring 如何解决循环依赖?
Spring通过三级缓存机制来解决单例Bean的Setter或字段注入类型的循环依赖问题.以下是Spring解决循环依赖的核心流程: 1. 三级缓存介绍 Spring容器为了解决循环依赖,维护了以下三 ...
- 为什么 Java 中某些新生代和老年代的垃圾收集器不能组合使用?
为什么 Java 中某些新生代和老年代的垃圾收集器不能组合使用? 在 JVM 中,新生代和老年代的垃圾收集器是分工协作的.然而,并非所有的新生代和老年代垃圾收集器都能任意组合使用,这是由于它们的设计目 ...
- nodejs获取一个可用的端口,检查端口是否被占用(完美方案)
nodejs检查端口是否被占用,先看个运行效果: E:\wamp64\www\tmpPro\tryuseport>node t.js 端口:8022被占用 端口:8023被占用 端口:8024可 ...
- IIS—503错误排查
服务器返回503(IIS Service Unavailable HTTP Error 503. The service is unavailable.)+IIS常见优化设置策略 - Yuliang. ...
- Python3循环结构(二) while循环
Python3 while循环 当循环次数无界时通常会使用while循环. 1.使用while循环输出九九乘法表 i=1 while i < 10: j = 1 while j < i + ...