据Neustar报道,2020年上半年,全球DDOS攻击上升了151%,昨日一篇《96年黑客DDOS攻击高德,致服务器处黑洞状态5小时》报道在网络传播,今天猿妹就和大家分享一个开源安全引擎——Crowdsec,可以帮助你有效预防 DDoS攻击。
Crowdsec可以分析访客的行为并针对各种攻击提供适当的响应,它可以解析任何来源的日志,并应用启发式方案来识别攻击性行为并防御大多数攻击类别。
Sorf Networks是一家总部位于土耳其的技术公司,为客户提供高配置的托管服务器和DDoS保护解决方案,提供了CrowdSec工作方式的示例。Sorf的客户每天都会受到10,000多个机器僵尸网络的DDoS攻击,并为之寻找一种能够抵御DDOS攻击的解决方案。
尽管客户采取了一般性的预防措施来减轻这些攻击,比如限制速率等,但它们在整个攻击面上并不可行,Sorf Networks首先使用Fail2ban(CrowdSec也是受其启发)为其客户设置了DDoS缓解策略;但是速度太慢了,50分钟只能做一些日志处理,抵御7,000至10,000台计算机的DDoS攻击。
在使用租用的僵尸网络进行DDoS测试时,来自8600个独立ip的攻击将达到每秒6700个请求,这是从服务器流量捕获的:
尽管CrowdSec技术可以应对巨大的攻击,但其默认设置每秒只能处理大约1000个端点。于是,Sorf的团队对CrowdSec的配置进行了更改,以显著提高其吞吐量,之后在进行测试,测试了8,000至9,000个主机,平均每秒请求6,000至7,000个。最终CrowdSec可以有以下成果:
- CrowdSec在一分钟内提取完所有日志
- 95%的僵尸网络被禁止,攻击得以有效缓解
- 保护15个域免受DDoS攻击
Crowdsec的处理过程分为5个步骤:
- 读取数据源(日志文件,流,路径,消息...)
- 将这些信号与行为模式(也称为场景)匹配
- 如果检测到不良行为,Crowdsec将采取各种补救措施,例如组织,返回403,2FA等
- 侵略性IP,触发的场景名称和时间戳然后会被发送到Crowdsec管理平台(以避免中毒和误报)
- 如果经过验证,这个IP将被集成到阻止列表中,并持续分发给所有CrowdSec客户端
目前,crowdsec已经在Github上标星 2.1K,累计分支 85 个。
(Github地址:https://github.com/crowdsecurity/crowdsec),如果你对crowdsec也感兴趣,可以尝试一下。