WAF原理概述及绕过思路

VSole2021-12-22 07:40:56

Waf分类:

WAF分为非嵌入型WAF和嵌入型WAF,非嵌入型指的是硬WAF、云WAF、虚拟机WAF之类的;嵌入型指的是web容器模块类型WAF、代码层WAF。

Waf工作模式:

关闭模式对某个站点使用关闭模式,到这个站点的流量就感受不到WAF的存在。一般的做法,是解绑域名,再到web服务上绑定该域名。

监听模式:既过规则,也会直接传递给web服务

防护模式:直接过规则,不会直接传递给web服务

WAF规则引擎原理

WAF无非就是拦截有害请求和伪装响应,出于性能考虑,拦截有害请求又分为两个层面,由网络层拦截和由应用层拦截,且任何请求应该先在网络层过滤再到应用层过滤。也就是说,规则引擎分为两块,对请求过滤和对响应过滤,而对请求过滤分为两大步,网络层过滤和应用层过滤。

原理图大致如下:


详情参考:
https://www.cnblogs.com/realjimmy/p/12937247.html#:~:text=WAF%E5%85%A8%E7%A7%B0%E5%8F%ABWeb,Application%20Firewall%EF%BC%8C%E5%92%8C%E4%BC%A0%E7%BB%9F%E9%98%B2%E7%81%AB%E5%A2%99%E7%9A%84%E5%8C%BA%E5%88%AB%E6%98%AF%EF%BC%8C%E5%AE%83%E6%98%AF%E5%B7%A5%E4%BD%9C%E5%9C%A8%E5%BA%94%E7%94%A8%E5%B1%82%E7%9A%84%E9%98%B2%E7%81%AB%E5%A2%99%EF%BC%8C%E4%B8%BB%E8%A6%81%E5%AF%B9web%E8%AF%B7%E6%B1%82%2F%E5%93%8D%E5%BA%94%E8%BF%9B%E8%A1%8C%E9%98%B2%E6%8A%A4%E3%80%82

Waf工作原理:

WAF工作方式是对接收到的数据包进行正则匹配过滤,如果正则匹配到与现有漏洞知识库的攻击代码相同,则认为这个恶意代码,从而对于进行阻断。所以,对于基于规则匹配的WAF,需要每天都及时更新最新的漏洞库。

Waf工作过程:

解析HTTP请求

对接收到数据请求流量时会先判断是否为HTTP/HTTPS请求,之后会查看此URL请求是否在白名单之内,如果该URL请求在白名单列表里,直接交给后端Web服务器进行响应处理,对于不在白名单之内的对数据包解析后进入到规则检测部分。

匹配规则

解析后的数据包会进入到检测体系中进行规则匹配,检查该数据请求是否符合规则,识别出恶意攻击行为。

防御动作

如果符合规则则交给后端Web服务器进行响应处理,对于不符合规则的请求会执行相关的阻断、记录、告警处理。

不同的WAF产品会自定义不同的拦截警告页面,在日常渗透中我们也可以根据不同的拦截页面来辨别出网站使用了哪款WAF产品,从而有目的性的进行WAF绕过。

记录日志

Waf绕过

Waf拦截会出现在安全测试的各个层面,掌握各个层面的分析和绕过技术最为关键。

信息搜集

绕过分析:抓包技术、waf说明、FUZZ测试
绕过手法:
  数据包特征:请求方式、模拟用户、爬虫引擎、白名单机制
  请求速度:延时(阿里3秒)、代理池、爬虫引擎、白名单机制

漏洞发现

工具:
综合:awvs、xray、appscan
单点:tpscan、wpscan、st2can
触发:
扫描速度:延时、代理池、白名单
工具指纹:特征修改、模拟用户
漏洞payload:数据变异、冷门扫描

漏洞利用

Sql注入、文件上传、xss跨站、文件包含、RCE执行


Sql注入:
如需sgImap注入  修改us头及加入代理防cc拦截自写tamper模块
安全狗:参考之前payload
Aliyun:基本修改指纹即可 
宝塔:匹配关键字外加/*等
aglmap --proxy="http://127.0.0.1:8080"  --tamper="waf.py"   --.random-agent


#文件上传
 php截断参考前面上传waf绕过payload

#xss跨站
利用xsstrike绕过 加上--timeout或--proxy绕过cc
https://www.freebuf.com/sectool/142044.html


其他集合
RCE:
加密加码绕过?算法可逆?关键词绕过?提交方法?各种测试!
ex=sy=ser_replace (\\\\\\\\'\\\\\\\\', ,, \\\\\\\\'pahpxinxfo() \\\\\\\\'); assert (sy) ; asubmit
32648F90E49BAA4
文件包含:没什么好说的就这几种
 .\ .../ ..等

权限控制:
  脚本:asp、php、jsp、aspx、py、war等
  工具:菜刀、蚁见、冰蝎
代码:加密混淆、变量覆盖、异或生成
行为:指纹变异、自写轮子
检测:常规安全脚本工具使用

异或免杀生成工具:webshell-venmon-master

waf网络层
本作品采用《CC 协议》,转载必须注明作者和本文链接
WAF分为非嵌入型WAF和嵌入型WAF,非嵌入型指的是硬WAF、云WAF、虚拟机WAF之类的;嵌入型指的是web容器模块类型WAF、代码层WAF
一般的做法,是解绑域名,再到web服务上绑定该域名。也就是说,规则引擎分为两块,对请求过滤和对响应过滤,而对请求过滤分为两大步,网络层过滤和应用层过滤。
WAF分类及绕过思路
2021-11-26 05:17:12
WAF分为非嵌入型WAF和嵌入型WAF,非嵌入型指的是硬WAF、云WAF、虚拟机WAF之类的;嵌入型指的是web容器模块类型WAF、代码层WAF
网络世界里为人们所熟知的DDoS攻击,多数是通过对带宽或网络计算资源的持续、大量消耗,最终导致目标网络与业务的瘫痪;这类DDOS攻击,工作在OSI模型的网络层与传输层,利用协议特点构造恶意的请求载荷来达成目标资源耗尽的目的。 除了这类在网络传输层大做文章的DDoS攻击,还有一类DDoS攻击把目光聚焦到了应用层。随着互联网的飞速发展,接入流量逐年攀高,承载这些流量的网络应用也被黑产、黑客们盯上,在
而Web应用防火墙是专门为保护基于WEB的应用程序而设计的,主要作用于OSI模型第七层的应用层,旨在填补传统防火墙无法解决的安全漏洞。因此,传统防火墙和WAF相互之间互补,往往能搭配使用。
利用这一上下文,RASP能够就应用安全做出明智决策,及时遏阻漏洞利用造成损害。因此,真正的RASP应该是零误报和低延迟的,能够即时提升性能。真正的RASP需要一系列不可改变的规则,这些规则靠上下文洞悉何时引入了新漏洞,并据此采取相应的措施。RASP出错的三个方面1、吠犬问题:大多数警报都是误报WAF的问题在于运行在网络层,作为应用执行指标而言滞后了。相反,真正的RASP平台在运行时执行实际保护。
微隔离诞生于云环境,可预测后续也能应用于传统主机侧,可避免攻击者在内部网络侦查、横向移动等行为,以预防勒索软件、挖矿、APT等威胁。基于身份的微隔离技术,可支持服务粒度的策略制定,自动适应服务实例的变化,有效执行隔离策略。
VSole
网络安全专家