WAF是什么东西?!--- 1 waf的功能和用到的技术原理介绍
waf(Web应用防护系统)
WAF很受欢迎,它是保护Web应用程序的复杂解决方案,涵盖了所有防护任务。
Web应用程序开发人员可以在某些安全方面依赖WAF的原因。
尽管如此,WAF是可已被绕过的。
常见的waf厂商:长亭科技、安恒信息、Fortinet、铱迅信息等,更多信息可以参考下这个链接:
http://www.360doc.com/content/18/1212/21/39872701_801388942.shtml
**
waf的功能
**
主要功能,是根据WAF的分析,检测和阻止任何有异常或攻击向量的请求。
注:这种分析不能妨碍合法用户与web应用程序的交互,同时必须准确、及时地检测到任何攻击企图。
**用到的技术:**正则表达式、标签器、行为分析、信誉分析,机器学习。
其他功能,DDoS保护、禁止攻击者的IP、监控可疑IP、添加安全标头(X-XSS-Protection,X-Frame-Options等)、向cookie添加http-only标志、实现HSTS机制和CSRF令牌。此外,一些WAF还为网站提供了JavaScrIPt客户端模块。
**
waf的技术支持
**
1 基于正则表达式的规则
通过研究一组已知的攻击,以确定可能指向攻击的关键语法结构。基于这些数据,创建可以找到此类语法结构的正则表达式。
缺点:首先,正则表达式可以应用于单个请求,甚至单个请求参数,这明显降低了此类规则的效率,并留下了一些盲点。其次,正则表达式的语法和文本协议的复杂逻辑允许替换等价的结构和使用不同的符号表示,在创建这些规则时会导致错误。
2 Scorebuilding
了解网络防火墙和反病毒工作原理的人应该熟悉这种机制,它不会检测攻击,但会补充其他机制,使其更加精确和灵活。
问题:请求中的“可疑”结构不是检测攻击的充分条件,并可能导致许多误报。
解决:通过实行分级制度,因为基于正则表达式的每条规则都由其关键性信息补充,在确定所有触发的规则之后,总结总临界值。如果总临界值达到阈值,则检测到攻击并阻止请求。
这玩意个人感觉就是为了减少误报,让检测的结果多次累加,达到一个阈值就触发,这样触发的威胁请求是攻击的请求的概率就非常大,误报就会少很多。
3 标签器
提出:这种检测方法在Black Hat 2012年以C/C+库libinject的形式提出,可以快速、准确地识别SQL注入。
目前,有许多针对不同编程语言的libinject端口,如PHP、Lua、Python等。
原理:该机制搜索作为一组令牌表示的签名。一定数量的签名被列入黑名单,它们被认为是不受欢迎和恶意的。换句话说,在分析某个请求之前,它被转换成一组令牌。令牌分为特定类型,如变量、字符串、常规操作符、未知操作符、数字、注释、类union操作符、函数、逗号等。
缺点:可能会构建导致令牌错误形成的结构,因此请求签名将与预期的不同。这些结构通常被称为令牌破解程序。
4 行为分析
定义:除了检测和阻止请求中的利用尝试,识别漏洞搜索过程也很重要,WAF必须做出相应的反应。
行为表现:它可以表现为扫描尝试、目录暴力破解、参数模糊和其他自动方法。
高级WAF可以构建请求链,并阻止发送不寻常请求的尝试。这种方法与其说是检测攻击,不如说是阻碍了漏洞搜索的过程。限制每分钟的请求数量不会影响普通用户,但对于在多线程中工作的扫描程序来说,将会受到严重的影响。
个人理解:就是waf不仅仅要检测到具有攻击意图的请求,还要能识别出被动攻击形式的行为,因为被动攻击的行为是不具有明显攻击意图的,比如扫描器,请求都是合法,但就是扫描频率很高,所以虽然没有直接危害,也要给它识别出来,扼杀在摇篮里。
5 信誉分析
这是直接继承自防火墙和杀毒软件的另一种机制。
当前,几乎任何WAF都包含VPN、匿名者、Tor节点和僵尸网络的地址列表,以阻止来自这些地址的请求。高级WAF可以自动更新其基础架构,并根据分析的流量添加额外的条目。
个人理解:类似于黑名单策略。有前科的统统安排。差不多就是这样!
6 机器学习
机器学习,你就理解为让机器更智能吧。一般的机器,你规则写多少,它就会多少。
有了机器学习,它可以有一定的智能,可以去识别出一些规则之外的东西。
缺点:首先,机器学习完全依赖于它所训练的数据集。但拥有最新的、完整的攻击数据,作为分析基础是很难实现的。
这就是为什么许多开发人员要记录他们的WAF的结果,并与提供IDS和SIEM系统的供应商合作,以获得真实的攻击示例。
第二, 在抽象的Web应用程序上训练的模型可能在真实的Web应用程序上完全无效。为了获得更好的模型质量,建议在实施阶段另外训练模型。
小结:
waf的原理其实不复杂,但多种技术的综合,基本上像我这种能力有限,理解还不够深入的小白已经可以虐我千百遍了。但waf是存在漏洞的,绕过不是问题。下一次就接着分析怎么绕过它。
以上内容参考:https://mp.weixin.qq.com/s/3nuzMBqBoTwZCHsnEGIjeA
WAF是什么东西?!--- 1 waf的功能和用到的技术原理介绍相关推荐
- WAF是什么东西?!--- 3 waf的绕过
想法:waf的绕过是门学问,记得sqlmap的使用有提到绕过waf的概念,输入数据的时候也要考虑到waf的影响,尤其是写一句话木马的时候,有的时候需要多次的嵌套来绕过waf的正则检测.听安全大佬们说, ...
- IM要做手机扫码登录?先看看微信的扫码登录功能技术原理
本文原文由作者Amazing10原创发布于公众号业余码农,收录时有改动,感谢原作者的技术分享. 1.引言 某天中午,吃完午饭,摊在自己的躺椅上,想趁吃饱喝足的午后时间静静享受独自的静谧. 干点什么好呢 ...
- Unity3D小功能 小技巧 小教程 小原理(持续更新...)
Unity3D小功能 小技巧 小教程 小原理(持续更新...) 1.Unity的.NET版本是2.0 按道理来说,C#能用的功能Unity也能用,但是Unity的.NET却不是最新版 要是用一些别的D ...
- 爱说说技术原理:与TXT交互及MDataTable对Json的功能扩展(二)
关于爱说说在技术选型的文章见:"爱说说"技术原理方案的定选思考过程 本篇将讲述"爱说说"比较重大的技术问题点及解决手段: 爱说说:http://speak.cy ...
- IM的扫码登录功能如何实现?一文搞懂主流的扫码登录技术原理
本文引用了3位作者"精品唯居"." Yangfan2016"." MrYun"的部分文章内容,一并感谢. 1.引言 扫码登录这个功能,最早 ...
- 应用案例 | 多功能三维摇床与印迹杂交技术
点成PS-M3D多功能三维摇床助力印迹杂交技术 印迹杂交,是基因诊断技术的一种,根据作用对象的区别可分为Northern杂交.Southern杂交和Western杂交.Northern杂交用于分析RN ...
- 百度下线搜索快照功能,内部人士:因技术升级导致功能淘汰;法国App开发者集体起诉苹果;Linux 5.19 发布|极客头条...
「极客头条」-- 技术人员的新闻圈! CSDN 的读者朋友们早上好哇,「极客头条」来啦,快来看今天都有哪些值得我们技术人关注的重要新闻吧. 整理 | 梦依丹 出品 | CSDN(ID:CSDNnews ...
- ROS系列——mavros功能包中常用话题和服务介绍,包括消息名称、类型、头文件、成员变量、示例代码
ROS系列--mavros功能包中常用话题和服务介绍,包括消息名称.类型.头文件.成员变量.示例代码 官方链接 常用话题 订阅 1.1 系统状态 1.2 GPS数据 1.3 本地位置 1.4 三轴速度 ...
- 探花交友_第1章_项目介绍以及实现登录功能_第2节_项目介绍
探花交友_第1章_项目介绍以及实现登录功能_第2节_项目介绍 文章目录 探花交友_第1章_项目介绍以及实现登录功能_第2节_项目介绍 2.项目介绍 2.1.项目背景 2.2.市场分析 2.3.目标用户 ...
最新文章
- 关于PHP中Session文件过多的问题
- ASP.NET的命名空间
- 如何使用 SSH 控制连接 Windows 服务器
- oracle卸数什么是ctrl文件,Oracle数据库的安装和卸载之道
- goim 中的 data flow 数据流转及思考
- 首个单芯片超小封装I2C转PWM解决方案
- win7 linux启动设置u盘启动,在linux下怎么样制作win7的U盘启动?
- 计算机文档保存了在文件夹中找不到,word文档保存后找不到了如何解决
- Jasmine中describe和it
- alpha测试和betal测试
- spring事务之REQUIRED
- SEC主席Gary Gensler在被问及以太坊是否是证券时,选择了沉默
- 单片机数码管动态显示时钟C语言,如何利用单片机数码管程序模拟是时钟显示时间?...
- linux的一页是多大
- Ubuntu系统Vscode安装以及配置C++环境(一条龙服务)
- 开发板——在X210开发板上进行裸机开发的流程
- 糖果车站的街外小雪初晴
- 谈谈对CAP定理的理解
- Android的警示对话框AlertDialog简单使用实例(附Demo)
- 实验:Wireshark 抓包软件的使用及MAC协议分析