HTTP Flood防御原理

HTTP Flood防御原理
介绍HTTP flood的攻击和防御原理。
攻击原理
攻击者通过代理或僵尸主机向目标服务器发起大量的HTTP请求报文,请求涉及数据库操作的URI(Universal Resource Identifier)或其它消耗系统资源的URI,造成服务器资源耗尽,无法响应正常请求。例如门户网站经常受到的HTTP Flood攻击,攻击的最大特征就是选择消耗服务器CPU或内存资源的URI,如具有数据库操作的URI。
防御原理
HTTP Flood源认证
源认证防御方式是防御HTTP Flood最常用的手段。这种防御方式适用于客户端为浏览器的HTTP服务器场景,因为浏览器支持完整的HTTP协议栈,可以正常回应重定向报文或者是验证码。FW基于目的IP地址对HTTP请求报文进行统计,当HTTP请求报文达到设定的告警阈值时,启动源认证防御功能,源认证防御包含以下三种方式:    基本模式(META刷新):该模式可有效阻止来自非浏览器客户端的访问,如果僵尸工具没有实现完整的HTTP协议栈,不支持自动重定向,无法通过认证。而浏览器支持自动重定向,可以通过认证,处理过程如图1所示。该模式不会影响用户体验,但防御效果低于增强模式。
图1 META刷新

图片.png

当网络中有HTTP代理服务器时,只要有一次源认证通过,FW就会将代理服务器IP地址加入白名单,后续僵尸主机通过使用代理服务器就会绕开源认证,导致防御失效。在这种有代理服务器的网络中,建议开启代理检测功能,检测HTTP请求是否为通过代理发出的请求。如果是,FW会从HTTP报文中获取请求者的实际IP地址,将通过认证的真实IP地址和代理服务器IP地址加入白名单,后续只有此实际源IP地址发送的报文才能直接通过,其他源IP发送报文时,FW会对其进行源认证,达到防御效果。

增强模式(验证码认证):有些僵尸工具实现了重定向功能,或者攻击过程中使用的免费代理支持重定向功能,导致基本模式的防御失效,通过推送验证码的方式可以避免此类防御失效。此时通过让用户输入验证码,可以判断HTTP访问是否由真实的用户发起,而不是僵尸工具发起的访问。因为僵尸网络攻击依靠自动植入PC的僵尸工具发起,无法自动响应随机变化的验证码,故可以有效的防御攻击。为避免防御对正常用户体验的影响,此防御方式仅对超过源访问阈值的异常源实施。具体处理过程如图2所示。
图2 验证码认证

图片.png

源认证对于机顶盒做视频点播场景防护、或者部分移动网络防护不适用。当客户端是机顶盒、特定移动网络时,客户端无法输入验证码,建议使用302重定向模式。

302重定向模式
基本模式中的重定向功能只能对整个网页进行重定向,不能针对网页中的内嵌资源(比如:图片)进行重定向。当用户请求的页面与页面内嵌资源不在同一个服务器上,内嵌资源所在服务器发生异常时,可以对嵌套资源服务器启动302重定向防御,探测访问源是否为真实浏览器。真实浏览器支持重定向功能,可以自动完成重定向过程,不会影响客户体验。

1、本站资源长期持续更新。
2、本资源基本为原创,部分来源其他付费资源平台或互联网收集,如有侵权请联系及时处理。
3、本站大部分文章的截图来源实验测试环境,请不要在生产环境中随意模仿,以免带来灾难性后果。

转载请保留出处:  www.zh-cjh.com珠海陈坚浩博客 » HTTP Flood防御原理

作者: cjh


手机扫一扫,手机上查看此文章:

一切源于价值!

其他 模板文件不存在: ./template/plugins/comment/pc/index.htm

未雨绸缪、居安思危!

数据安全、有备无患!

注意操作、数据无价!

一切源于价值!