一、MSSQL须知
Mssql注入必比了解的三张数据库自带库
表 释义
sysobjects
SQL-SERVER的每个数据库内都有此系统表,它存放该数据库内创建的所有对象,如约束 、默认值、日志、规则、存储过程等,每个对象在表中占一行。
syscolumns
该表位于每个数据库中。
sysdatabases
该表保存在master数据库中,这个表中保存的是所有的库名,以及库的ID,和一些相关信息
如
Mssql需要掌握的几种函数
1,host_name()返回服务端计算机名称
2, current_user 返回当前数据库的用户
(以下就不一一展示了)
3,db_name() 返回当前数据库名
4,CHAR()将asccii码转换成字符,如果不在0--255之间将返回null
5,Object_id()返会数据库表名,通常用于16进制或SQL编码的转换
6,col_name(table_id coulm_id) 返回指定表中的字段
7,substring()返回字符串
8,cast() 将某种数据类型的类型的表达式转换成另一种数据类型
9,CONVERT() 函数是把日期转换为新数据类型的通用函数
二、注入流程
1,判断是否是mssql数据库
apx 后缀的文件 可能为mssql数据库
利用and (select count(*)from sysobjects)>0 如果返回正常,则证明数据库为mssql数据库
2,order by 查字段
3,查表名以及库名 (注:mssql与mysql不同 返回的结果与类型要相同)
and'1=2 union all select 1,name,null from sysobjects where xtype='U'-- qwe
此处类型“U”为用户类型(也就是返回对象名就是表名) (“S”为系统表所带的类型)
4,查数据后的省略(查询数据时用top,top 1 为查询第一条数据)
查询版本信息
@@version-:获取版本信息
db_name():数据库名字
user,system_user,current_user,user_name:获取当前⽤户名
@@SERVERNAME:获取有关服务器主机的信息
盲注以及报错注入详情查看https://docs.zkaq.cn/#/docs/index/id=21
以下为某edu实战
打赏我,让我更有动力~
© 2016 - 2024 掌控者 All Rights Reserved.