如何打造一款可靠的WAF

之前写了一篇《WAF防御能力评测及工具》 ,是站在安全运维人员选型WAF产品的角度来考虑的(优先从测试角度考虑是前职业病,毕竟当过3年游戏测试!)。本篇文章从WAF产品研发的角度来YY如何实现
一款可靠的WAF,灵感来自ModSecurity等,感谢开源。本片文章包括三个主题(1) WAF实现WAF包括哪些组件,这些组件如何交互来实现WAF防御功能(2)WAF规则(策略)维护规则(策略)如何维护,包括
获取渠道,规则测试方法以及上线效果评测(3) WAF支撑WAF产品的完善需要哪些信息库的支撑一、WAF实现WAF一句话描述,就是解析HTTP请求(协议解析模块),规则检测(规则模块),做不同的防御动作(动作模块),并将防御过程(日志模块)记录下来。 不管硬件款,软件款,云款,核心都是这个,而接下来
围绕这句话来YY WAF的实现。 WAF的实现由
五个模块(配置模块、协议解析模块、规则模块、动作模块、错误处理模块)组成1. 配置模块设置WAF的检测粒度,按需开启,如图所示498)this.width=498;' onmousewheel = 'javascript:return big(this)' alt="WAF的实现 - 碳基体 - 碳基体" width="700" height="749" src="http://s6.51cto.com/wyfs02/M00/57/04/wKioL1SPmHSxkh4UAADM1b-kzk4567.jpg" />2. 协议解析模块(
重点)协议解析的输出就是下一个模块规则检测时的操作对象,解析的粒度直接影响WAF防御效果。对于将WAF模块寄生于web 服务器的云WAF模式,一般依赖于web 服务器的解析能力。498)this.width=498;' onmousewheel = 'javascript:return big(this)' alt="WAF的实现 - 碳基体 - 碳基体" width="640" height="765" src="http://s5.51cto.com/wyfs02/M00/57/04/wKioL1SPmHSDkhtfAAEDqP_8PRw138.jpg" />3. 规则模块(重点)重点来了,这块是WAF的核心,我将这块又细分为三个子模块。(1) 规则配置模块IP黑白名单配置、 URL黑白名单配置、以及挑选
合适的规则套餐。498)this.width=498;' onmousewheel = 'javascript:return big(this)' alt="WAF的实现 - 碳基体 - 碳基体" width="627" height="887" src="http://s8.51cto.com/wyfs02/M00/57/07/wKiom1SPl9biZZhCAAEEHegi3D0682.jpg" />(2)规则解析模块主要作用是解析具体的规则文件,规则
最好采用统一的规则描述语言,便于提供给第三方定制规则,ModSecurity这方面做得非常优秀。规则文件由四部分组成,分为变量部分、操作符部分,事务函数部分与动作部分。498)this.width=498;' onmousewheel = 'javascript:return big(this)' alt="WAF的实现 - 碳基体 - 碳基体" width="587" height="795" src="http://s2.51cto.com/wyfs02/M00/57/07/wKiom1SPl9aBi5uyAADeY6Iubio659.jpg" />498)this.width=498;' onmousewheel = 'javascript:return big(this)' alt="WAF的实现 - 碳基体 - 碳基体" width="700" height="609" src="http://s8.51cto.com/wyfs02/M01/57/04/wKioL1SPmHWDoggBAAB7n4-e9gk387.jpg" />(3)规则检测模块上一步我们设置了各种变量,接下来就是按照一定的逻辑来做加减乘除了。498)this.width=498;' onmousewheel = 'javascript:return big(this)' alt="WAF的实现 - 碳基体 - 碳基体" width="523" height="750" src="http://s5.51cto.com/wyfs02/M01/57/04/wKioL1SPmHmiBYMkAAB_iJ-LAQs334.jpg" />4. 动作模块(重点)通过规则检测模块,我们识别了请求的好恶,接下来就是做出响应,量刑处理,不仅仅是拦截。498)this.width=498;' onmousewheel = 'javascript:return big(this)' alt="WAF的实现 - 碳基体 - 碳基体" width="518" height="678" src="http://s9.51cto.com/wyfs02/M01/57/07/wKiom1SPl9qhJb0UAAC0IiIpEZg840.jpg" />5. 日志模块(重点)日志处理,非常重要,也非常火热,内容
丰富到完全可以从WAF独立出来形成单独的安全产品(e.g.日志宝)而采用提供接口的方式来支撑WAF。对于数据量巨大的云WAF,都会有单独的大数据团队来支撑架构这一块,包括数据存储(e.g. hdfs) ,数据传输(kafka),数据离线分析(hadoop/spark),数据实时分析(storm),数据关联分析(elasticsearch)等等,以后另开一篇单独说明。498)this.width=498;' onmousewheel = 'javascript:return big(this)' alt="WAF的实现 - 碳基体 - 碳基体" width="393" height="196" src="http://s2.51cto.com/wyfs02/M01/57/07/wKiom1SPl9vxjFa6AAAwrAv0IYQ299.jpg" />6. 错误处理模块以上模块运行错误时的异常处理二、WAF规则(策略)维护498)this.width=498;' onmousewheel = 'javascript:return big(this)' alt="WAF的实现 - 碳基体 - 碳基体" width="700" height="652" src="http://s1.51cto.com/wyfs02/M02/57/04/wKioL1SPmHrByavKAACqHe5p-Ec502.jpg" />三、WAF支撑信息库498)this.width=498;' onmousewheel = 'javascript:return big(this)' alt="WAF的实现 - 碳基体 - 碳基体" width="699" height="565" src="http://s8.51cto.com/wyfs02/M02/57/04/wKioL1SPmHvB7acMAAC0UdmGWk8882.jpg" />以上支撑库几乎所
有的安全人员都在重复地做,而资源没有共享的原因,一是内部不可说;二是没有采取统一的描述语言无法汇合,唉,安全从业人员的巴别塔。四、补充知识(包括文章与代码)想想写了这么多文章,自我感觉萌萌哒!WAF相关WAF防御能力评测及工具ssdeep检测webshellModSecurity相关文章(我就是ModSecurity的死忠粉)[科普文]ubuntu上安装Apache2+ModSecurity及自定义WAF规则ModSecurity SecRule cheatsheetsModSecurity CRS 笔记、WAF防御checklist,及WAF架构的一些想法ModSecurity 晋级-如何调用lua脚本进行防御快速入门ModSecurity 白名单设置指纹识别Web应用指纹识别FingerPrintIP相关使用免费的本地IP地理库来定位IP地理位置-GeoIP lookup获得IP的地理位置信IP Geolocation及IP位置可视化IP地理信息离线获取脚本IP地理信息在线获取脚本识别搜索引擎脚本判断使用哪家CDN脚本代理类型判断脚本 Proxy探测脚本与HTTP基本认证暴力破解脚本CDN架构网站负载均衡技术读书笔记与站长产品的一点想法正则优化NFA引擎正则优化TIPS、Perl正则技巧及正则性能评测方法HTTP发包工具HTTP.pl——通过HTTP发包工具了解HTTP协议HTTP发包工具 -HTTPieWAF实现的思维导图参考:《 ModSecurity Handbook 》第八、九、十,十一我是反复看,每次都有新的灵感,第14、15章是当成新华字典看的,以免遗忘。《 Web Application Defenders Cookbook Battling Hackers and Protecting Users 》 (红宝书,还在看)原文地址:http://danqingdani.blog.163.com/blog/static/1860941952014101723845500/【编辑推荐】 浅析WAF市场中常见的检测技术 WAF指纹探测及识别技术 四措施避免Web应用防火墙配置错误 为什么要部署Web应用防火墙?【责任编辑:蓝雨泪 TEL:(010)68476606】 原文:如何打造一款可靠的WAF 返回网络安全首页

时间: 2024-09-19 08:55:52

如何打造一款可靠的WAF的相关文章

如何打造一款可靠的WAF(Web应用防火墙)

  (1) WAF实现WAF包括哪些组件,这些组件如何交互来实现WAF防御功能(2)WAF规则(策略)维护规则(策略)如何维护,包括获取渠道,规则测试方法以及上线效果评测(3) WAF支撑WAF产品的完善需要哪些信息库的支撑 一.WAF实现 WAF一句话描述,就是解析HTTP请求(协议解析模块),规则检测(规则模块),做不同的防御动作(动作模块),并将防御过程(日志模块)记录下来.不管硬件款,软件款,云款,核心都是这个,而接下来围绕这句话来YY WAF的实现.WAF的实现由五个模块(配置模块.协

电商网站产品优化:打造爆款的真实案例

文章描述:打造爆款的真实案例. 2010年11月底,接到一个门户网站老总的小舅子的电话,让我帮他把1万多件长袖T恤库存在处理掉,"大冬天让我帮你卖T恤,这不是傻B吗",但不敢得罪他,只能硬着头皮告诉他试试看吧.可这家伙又问我能不能打照爆款,气的我差点晕过去,"这个小子一定被傻子吻过".但去淘宝浏览一下T恤的数据与他店铺的T恤数据后,发现这些T恤还真有打照爆款的可能,对方提出的条件是,这款长袖T恤进价是18元,只要18元能处理了就可以,于是决定拟定一个计划试一下. 计

PS+C4D怎么打造一款高逼格包装

PS+C4D怎么打造一款高逼格包装   宝立食品有限公司要开发一款新的产品,我这边负责产品包装的设计.整体版面构思,LOGO设计,包装袋的选材,以及后期运用C4D建模渲染出效果图全部是我一人完成,这是对自己的一个挑战.这次产品包装的整体设计格调大概就这样定下来了,后期可能微调,现在出一教程分享下.教程最后有彩蛋,不要错过哦! 分类: PS入门教程

PS打造一款精美的苹果图标

PS打造一款精美的苹果图标 先看完成图. 创建文档1280x1024像素,建新层填充黑色,加上图层样式. 效果如下. 建新层,用钢笔画出苹果形状,填充黑色. 加上图层样式. 效果如下.  分类: PS入门教程 ps图标制作教程

Wecoach陈隽永:如何打造一款完美的智能硬件App?

入秋的杭州,天气变得和深圳一样深沉,天空忽的下起暴雨. 上周六下午,宅客君在阴沉的背景下和WeCoach创始团队见面的.是的,作为一家创业公司,他们目前还需要周六加一天班来加快进度. 这次拜访,是因为WeCoach的产品度过众筹期,准备要正式上市了.宅客君过来聊聊,在众筹后.发布前产品的那些事. WeCoach,运动捕捉器迈向智能健身助手 WeCoach是一款内置九轴陀螺仪的运动捕捉器,它的外形酷似哑铃,只有一块奥利奥饼干大小. 在4月份发起众筹时,WeCoach的宣传卖点是:装到哑铃上,通过A

如何利用AngularJS打造一款简单Web应用_AngularJS

目前不同类型的Web开发人员都在广泛使用AngularJS,这套卓越的框架也充分证明了自身满足各类不同需求的能力.作为一名Web开发人员,无论大家是刚刚入门的新手还是已经拥有丰富的实践经验,选择一款优秀的框架都是必要的工作前提,而AngularJS正是这样一套理想的解决方案.在使用AnguarJS的过程中,大家可以同时学习到更多与应用程序开发相关的知识以及如何构建起更出色.更具吸引力的应用成果.如果大家希望在应用程序的创建工作中采取各类最佳实践,那么AngularJS也能够带来极大的助益.总而言

苹果发布最新设计指南,教你如何更方便地打造一款“优雅”的App

苹果发布了其最新的设计指南(Design Guides and Resources),试图帮助开发者更好地学习 iOS7 风格的应用和游戏设计.打开&http://www.aliyun.com/zixun/aggregation/37954.html">nbsp;Apple developer center就能看到,新版指南提供了大量的视频和文档,内容涵盖应用和游戏的 UI 设计.iOS7 更新概览.最佳案例.注意事项等等,关联内容之间的链接也做得比较完善. 在指南首页,我们看到苹

为低收入者打造一款APP我学到了什么

答案非常简单:为低收入者打造一款科技产品,没那么简单.本文作者Ciara Byrne,他来自非盈利机构Significance Labs,他打造了一款家政服应用Neatstreak.我迷失在了布朗克斯,美国纽约著名的贫民窟.那时是我成为非盈利机构Significance Labs 员工的第一周,我的工作是为美国年收入在25000美元以下的家庭打造一款科技产品.在2013年,美国有4530万人口生活在贫困线以下,他们的年收入平均为23834美元(四口之家).我和我的一名同事花了一个小时的时间在地铁

《淘宝店铺 大数据营销+SEO+爆款打造 一册通》一一2.4 商品分析助力商家打造爆款

2.4 商品分析助力商家打造爆款 商品分析提供了店铺商品的详细效果数据,包括商品概况.商品效果.异常商品.分类分析.采购进货五大功能模块,让你轻松识别哪个宝贝有潜力,轻松打造爆款. 2.4.1 商品概况分析店铺所有商品情况 从商品信息总况.商品销售趋势.商品排行概览让你分分钟了解店铺商品情况,而且数据解读帮你一眼发现商品问题获取解决方案. 商品信息总况如图2-18所示,从流量相关.访问质量.转化效果三个维度来看店铺商品数据,在时间周期上提供了最近1天.最近7天.最近30天以及日.月的时间选项,并