【实战】牛年的第一个SQL注入漏洞

 

正常请求

image

 

单引号探测,返回空数据,直接'or'1'like'1探测:

image

image

 

Content-type不同,注意观察下响应body内容也不同,前边两次响应结果中开始的leadId是1311744(可以作为sqlmap响应结果不同判断的一个依据),接下来比较简单了,这种基本就是java+mysql,通过函数简单判断一下:

image

image

 

可以确定数据库是mysql,直接判断库名长度,然后借助burp跑出库名数据,都是水到渠成,贴两个图:

image

image

 

这里有个小技巧,一般跑出首字母直接去和网站域名或者目录等做比较,大概率可以猜出来库名了:

image

 

最终的库名就是这个二级目录名,根据mysql命名常识,把短线变成下划线就好了:clue_center

 

下面要说的是利用sqlmap跑出这个注入点,直接跑的话,会报错,sqlmap挂burp代理,调试下:

image

 

可以看到payload被加上了\”,直接写个tamper替换下,然后继续跑,依然跑不出,继续调试:

image

 

 

发现sqlmap默认会进行chr编码,会导致服务器报错,使用参数--no-escape关闭字符串逃逸机制,最终使用sqlmap跑出了库名(2021年的第一个sql注入):

image

 

posted @ 2021-04-09 09:38  Carrypan  阅读(164)  评论(0编辑  收藏  举报