目录
waf绕过原理详解
了解waf防护原理
查看waf防护位置
熟悉防护规则
了解防护机制
查看拦截时间阀值
我们可以下载一个安全狗,查看它详细的防护机制,以此达到知己知彼,容易绕过。
目录扫描绕过waf
两种方式:
第一:修改客户端ip
第二:减慢扫描速度
第三:通过代理欺骗waf
手工注入绕过waf
搭建测试环境
了解绕过原理
熟悉常见绕过构造语句
构造绕过测试语句
注入绕过方法
- 大小写变种
- 使用sql注释
- 使用url编码
- 使用空字节
- 使用嵌套过剥离
- 使用非标准入口点
- 避开自定义过滤器
大小写转换
使用简单,但是效果不好
例如: and 1=2 可以使其变为 AnD 1=2
使用注释
使用简单,效果一般
union select 1,2,3,4, from admin
注释完的效果
/**/union/**/select/**/1,2,3,4 from admin
/**/un/**/io/**/n/**/sel/**/ec/**/t/**/1,2,3,4 from admin
第二种注释
/*!and*/ 1=2 效果显著 此处感叹号为"非"的意思,意思是感叹号后面的不注释
url编码
正常编码 ' 为%27
/ =%2f *==%2a %=%25
/**/==%252f%252a*/
url编码现在基本过不掉了
使用空字节
一些过滤器在处理输入时,如果碰到空字节就会停止处理
我们通常也会利用空字节进行绕过过滤器
如:
id=1 %00 and 1=2
利用嵌套剥离
有些过滤器会从用户的输入中进行剥离一些敏感的函数
那我们可以通过函数的嵌套进行绕过一次剥离
selselectect 剥离后 select
总结编写绕过语句
利用注释
/*^ABC^*/
包含关键字
/*!/*!/*!union*/
变换提交方式
将get改成post或者cookie提交
/*!/*and*//*sdfsdgsfwef=swefs=sdgsewege*//*sfwewweqrwtewtdg*//*ssfsb=dsdfsfsog*/*/1=2
4月13日测试过狗可用
通过非注释关键字加一些注释代替空格过waf
变换提交方式有的也可以过狗,但是必须支持post提交方式
sqlmap tamper 利用
symboliclogical.py
space2mssqlhash.py
appendnullbyte.py
利用修改tamper绕过waf
编写过waf一句话思路
利用可变变量
$a=b
$b=c
$$a=c
利用函数
利用判断语句
利用编码
突破waf拦截菜刀连接
可以使用最新版菜刀
中国蚁剑客户端
可以使用过狗菜刀+中转脚本
上传绕过waf
上传突破禁止上传php文件
第一:文件包含
第二:双文件突破限制
第三:修改上传参数
提权过waf
通过程序读密码
通过waf绕过神器
利用exp读hash
将用户添加到远程桌面组,并且给目录降权
利用第三方软件提权