记授权对某站点的一次Bypass SQL注入 – 作者:一身诗意千寻瀑

*严正声明:本文仅限于技术讨论与分享,严禁用于非法途径。

一、开局

先拿到一个站点,这里假设是http://110.120.119.911/dashboard,大致浏览一下没啥,小手那么一动,http://110.120.119.911,嗯,开局就是这么一个目录遍历。直接开始一个个访问的龟速运动。

1622447080_60b493e8d58d144b21ad7.png!small?1622447082022

二、发现注入点

十分钟后把这些文件全部扒拉了一遍,并没有出现想象中的用户信息泄露(tui,连小姐姐照片都没有)。无奈开始翻起了刚刚龟速运动过程中存下来的php站点,一顿跑马观花后把目标锁定在了这个具有搜索功能的页面,随手打了个1

1622448005_60b49785f1389228b994d.png!small?1622448008798

再来个1′1622448038_60b497a6af88f3d881e5b.png!small?1622448039856

好家伙不多说,上神器!(因为是post传参所以直接抓包copy到txt文本中sqlmap -r跑)

嗯,没跑出来(跑出来也就不会有这篇文章了)

三、Bypass过程

回到最初的起点,打一发1′–+

1622448401_60b49911ed3ee888d331c.png!small?1622448403018

emm这咋就不顶用了呢,反手又打了一发1’%23不行,1%27%23不行,又试了一下1’#

1623131957_60bf0735dfbe5268882c2.png!small?1623131958483

好家伙合着我还给你整复杂了。接着考虑到这里是盲注,加之前面在浏览目标时发现这是一个用xampp搭建的站点(Apache+MySQL+PHP+PERL)先不order by,直接一个union select sleep(2)那不妥妥的~~~直接给转不出来了

1622448789_60b49a9535fb6b9d4eae2.png!small?1622448790284

阿这,居然有WAF?小小WAF,可笑可笑(你看我一点都不在怕的样子)

1622449104_60b49bd0a4de1db240ce2.jpg!small?1622449105793

这里充分发挥遇到waf我不慌,诶,就是绕的精神,挨着测,看到底是匹配到哪个字段触发了防护规则,1’union+没问题,1’union+select+被断掉了,紧接着union+selec,嗯没问题,看来就是匹配了select

1622450799_60b4a26f3e57f75295b9c.png!small?1622450800319

那么这里大小写加<>,union+Sele<>cT打过去直接被断掉了,union+/*!Selec<>t*/又被断掉了, /*!50000UniON SeLeCt*/、/*!u%6eion*/ /*!se%6cect*/

啪的一下很快啊,统统都被拦下了,emmmm

1622451277_60b4a44d2a6ee2e7dd7a9.png!small?1622451278246

回过头来,单独试了一下select,union select,页面是正常的

1623132001_60bf07614e5d4739ae911.png!small?1623132001275

1’union select,页面是转不出来的,我陷入了沉思。。。

1622451631_60b4a5af0da27595686f3.png!small?1622451632306

莫非是匹配整句1’+union+select?中间加空格是不顶用了,那我在中间加个字符串混淆一下呢?

要知道,MySQL数据库支持两种集合操作:UNION DISTINCT和UNION ALL,union其实是相当于 union distinct的。

那么在此基础上,我反手就打出一发1’union+distinct+select+sleep(2)#

1622452055_60b4a7575559e6110d483.png!small?16224520565251622452051_60b4a7530c27fa1e9420e.png!small?1622452052166

emm难道是我猜错了。。。直接把sleep函数去掉,发现正常报错

1622452111_60b4a78fdd31a4907497c.png!small?1622452112940

看来是函数的锅了,这里直接一个sleep%23%oa(3)打出去

(其实在此之前尝试过/*!sleep(1)*/然后还试了一下参数污染多加了几个+尝试协议未覆盖bypass+尝试垃圾字符绕过后统统都不行。)然后

1622452505_60b4a9198ccdb1156be96.png!small?1622452506722

1622452526_60b4a92e05af24de3e0b3.jpg!small?1622452527123

这个故事告诉我们,遇到waf不要慌,只要思想不滑坡,办法总比困难多(大概)

望师傅们看完能有一点小小的收获~

来源:freebuf.com 2021-05-31 17:19:47 by: 一身诗意千寻瀑

© 版权声明
THE END
喜欢就支持一下吧
点赞0
分享
评论 抢沙发

请登录后发表评论