WAF 绕过方法

通常,即使绕过了WAF的防护,前提条件是后端服务器是否存在对应的漏洞,后端在开发时一定要在代码中加入参数的过滤与校验,不能只指望WAF在中间进行防护,减少威胁面,编写安全的代码,才是正确的做法。

通配符?,*

在bash shell中,问号?表示通配符,可以替换任意的单个字符(非空),*表示通配符,可以匹配任意长度(包括空)。例如下面的命令与/usr/sbin/cat /etc/passwd是等价的。来自exploit-db上的一篇文章

/usr/s?in/?at /et?/pass?d

大小写

特征库在编写正则表达式时,可能忽略了对大写的校验。例如select.*from,从而让Select from轻松绕过,正确的写法时,在任何防护的正则表达式前都加上(?i),表示后面的正则表达式匹配均忽略大小写。

注释/**/

在SQL查询语句中加入注释,例如select/**/from,当WAF不摘除注释而去匹配正则表达式时,可能会匹配不上,从而绕过。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值