高防CDN防御基于浏览器的DDOS



基于浏览器的僵尸网络是DDoS世界的终结者,它们也是为适应性渗透而设计的。如果其他更原始的机器人会试图强制你的防御,这些机器人可以简单地模仿他们通过前门的方式。当你注意到有什么地方出错时外围设备已经被攻破而服务器被关闭了。
 
一些常见的机器人过滤方法通常依赖于一系列渐进式挑战,对于可以保留Cookie并执行JavaScript的机器人来说绝对无用。对于任何使用浏览器的人来说,不加区分地闪烁CAPTCHA的替代方案不过是一场自我造成的灾难尤其是当攻击可能持续数周。
 
为了演示如何阻止这些攻击,下面是涉及此类浏览器的实际DDoS事件的案例研究; 这种攻击使用了一群类似人类的机器人,这种机器人在大多数情况下会导致一场完全和全面的灾难。
 
基于浏览器的僵尸网络:攻击方法
 
这次攻击是由一个不明身份的僵尸网络执行的,该僵尸网络使用基于浏览器的僵尸网络,可以保留cookie并执行JavaScript。在攻击初期他们被确定为PhantomJS无头浏览器。PhantomJS是一款使用裸机(或“无头”)浏览器的开发工具,为用户提供全面的浏览功能,但没有用户界面,没有按钮也没有地址栏等。PhantomJS可用于自动化和负载监控。攻击持续了150多个小时,在此期间我们记录了全球超过180,000个攻击性IP的恶意访问。攻击达到6000次点击/秒,平均每天点击量达到6.9亿次。攻击IP的数量以及它们的地理多样性使我们相信,这可能是一项协调工作,一次涉及多个僵尸网络。
 
在整个攻击过程中我们处理了861种不同的用户代理变体,因为攻击者不断修改标题结构以避开我们的防御。攻击者通常使用不同的用户代理。除了使用类似人的机器人之外攻击者还努力模仿人类的行为,大概是为了避免基于行为的安全规则。为此攻击者利用可用IP地址的数量以不会触发速率限制的方式拆分负载。与此同时通过不断引入新的IP攻击者确保知识产权限制同样无效。机器人也被编程为人类浏览模式; 访问来自不同着陆页的网站,并按照随机的步伐和不同的模式移动它们,然后融合到目标资源上。
 
CDN互联减缓方法:
 
CDN互联的第7层安全边界使用过滤方法的组合,在受保护的网站或Web应用程序周围创建多个防御层。在这种情况下攻击机器人的性质使他们能够成功地绕过逐步挑战。僵尸网络的制造者也竭尽全力地逃避我们的异常检测机制,至少在某种程度上他们能够做到这一点。但是通过使用已知的无头浏览器webkit,攻击者可以将自己置于我们的客户分类机制的检测范围之内。我们的客户分类算法依赖于众包的已知签名池,其中包含从我们网络收集的信息。 发生攻击时签名池拥有超过10000000个签名变体,每个变体都包含以下信息:用户代理;IP和ASN信息;HTTP头;JavaScript脚印;Cookie /协议支持变体。
 
在基于浏览器的访问者的情况下,这意味着我们不仅仅关注更明显的因素(如用户代理或它们与原始IP的关联),还包括每个浏览器中存在的复杂细微差别。安全是一个封闭的手工游戏,所以如果不公开我们的一些方法就很难解释这个问题。为了提供一些上下文我们可以说(在低端),这意味着要查看浏览器处理编码方式,响应特定属性等方面的细微差异。例如我们可以从他们的方式了解我们的访问者浏览器使用双倍间距或特殊字符处理HTTP标题。
 
我们的数据库为每个已知的浏览器或机器人保存了数以万计的变体,以涵盖所有可能的场景(例如使用不同桌面或手持设备进行浏览,通过代理等)。最重要的是在这种情况下攻击者选择的武器PhantomJS webkit就是其中一种签名。所以当攻击者在躲避和潜水以使他们的机器人看起来像人类时,我们所有的团队必须做的就是让我们的系统发现他们正在使用的无头浏览器的类型。从那里开始这是一个阻止所有PhantomJS实例的简单任务。我们还提供了一个选项让访客填写CAPTCHA,以防万一他们是真正的人类访客。
 
CDN互联专业提供国内外高防cdn加速服务