CC攻击原理与kangle预防CC攻击思路

易小灯塔
2019-11-19 / 0 评论 / 1,802 阅读 / 正在检测是否收录...
温馨提示:
本文最后更新于2022年06月20日,已超过889天没有更新,若内容或图片失效,请留言反馈。

image-20201109090832605

CC攻击的基本原理CC攻击利用代理服务器向网站发送大量需要较长计算时间的URL请求,如数据库查询等,导致服务器进行大量计算而很快达到自身的处理能力而形成DOS。

而攻击者一旦发送请求给代理后就主动断开连接,因为代理并不因为客户端这边连接的断开就不去连接目标服务器。因此攻击机的资源消耗相对很小,而从目标服务器看来,来自代理的请求都是合法的。

以前防CC攻击的方法为防范CC,以前的方法一个是限制每个IP的连接数,这在地址范围很广阔的情况下比较难实现;二是限制代理的访问,因为一般的代理都会在HTTP头中带 X_FORWARDED_FOR字段,但也有局限,有的代理的请求中是不带该字段的,另外有的客户端确实需要代理才能连接目标服务器,这种限制就会拒绝一些正常用户访问。

CC攻击用硬防难防住CC攻击比DDOS攻击更可怕的就是,CC攻击一般是硬防很难防止住的。

原因有三:

一、因为CC攻击来的IP都是真实的,分散的;

二、CC攻击的数据包都是正常的数据包;

三、CC攻击的请求,全都是有效的请求,无法拒绝的请求。

 

Kangle防CC攻击思路防CC有效性在于攻击方不接受服务器回应的数据,发送完请求后就主动断开连接,因此要确认连接是否是CC,服务器端不立即执行URL请求命令,而是简单的返回一个页面转向的回应,回应中包含新的URL请求地址。

如果是正常访问,客户端会主动再次连接到转向页面,对用户来说是透明的;而对于CC攻击者,由于不接收回应数据,因此就不会重新连接,服务器也就不需要继续进行操作。

具体实现具体实现的关键在于转向的URL如何构造,kangle设计的方法是增加一个“值”,即在原URL请求的最后面添加一个独一无二的值,文本形式,作为URL的一部分;当包含该值的URL重新返回时,先检查该值是否合法。

如果合法,则说明该URL是合法的再次连接,将URL中的值部分抹去,恢复为原始的URL请求再发给服务器进行正常访问;否则拒绝该URL请求。“值”可以千变万化的设置,非常灵活。用户可以根据需要进行设定。作转向所采用的方式也非常灵活。同时,转向可设为自动转向或手动转向。总结防火墙防CC的办法就是封ip,有可能封掉正常访问用户的ip。

CC是http协议的攻击,不是tcp/ip,kangle是底层的web服务器,更理解http。Kangle防CC 攻击可以做到非常有效防御,而且是零误防,不会影响正常用户的访问。Kangle防CC攻击在web管理界面轻松点击鼠设置规则即可,无需繁索的编写代码。

 

 

cloudflare默认自带5条防火墙规则,完全免费. 有了防火墙,可以设置自定义规则,防御CC攻击. 这个方法是cloudflare5秒盾防御CC攻击的补充

防火墙规则一

规则名: rule1 规则匹配:

  1. 标签1: threat score >5
  1. 标签2: known bots -> off 行动: Challenge (Captcha) 跳出验证码

 

防火墙规则二

规则名: rule2

规则匹配:

  1. 标签1: known bots -> off
  1. 标签2: ip address != 8.8.8.8 行动: Challenge (Captcha) 跳出验证码 日志收集处理 利用上面任意规则后,可以收集到CC攻击的代理IP 收集次数高于n次的IP可以直接添加到防火墙,拉入黑名单

 

0

评论 (0)

取消