pimshell 2020-04-06
今天看文章看到一道比较有意思的题,复现并记录一下,友情提示,这个靶场经常经常经常出问题,如果发现路径无法访问等问题,重启解决就好~
访问提示后台,访问admin/upload.php会显示没有权限,并有一个upload1.php页面一闪而过,随后跳转到upload2.php,用burp抓包,得到上传页面
上传之后只会显示上传路径,扫描目录也没有找到上传的文件,通过抓取upload1.php页面,发现返回了源码,现在已知处理上传的文件为upload_file.php
通过更改cookie的uploadmd5字段,获取upload_file.php的源码
<script language=javascript>alert(‘您无权限访问!‘);window.open(‘upload2.php‘,‘_top‘);</script> <form enctype="multipart/form-data" action="upload_file.php" method="post"> Send this file: <input name="filename" type="file"> <input type="hidden" name="verify" value="<?php $path="uploadfile/";//上传路径 $verify=$_POST["verify"]; $time=date("Ymd"); if($_FILES["filename"]["name"]) { $file1=$_FILES["filename"]["name"]; $file2 = $path.$time.‘_‘.$verify.‘_‘.$file1; $flag=1; } if($flag) $result=move_uploaded_file($_FILES["filename"]["tmp_name"],$file2); if($result) echo "上传成功!"; ?> "/> <input type="submit" value="Send File"> </form>
通过分析代码,发现上传上去的文件被重命名,处理代码为$file2 = $path.$time.‘_‘.$verify.‘_‘.$file1;
,将上传路径,时间,$verify,文件名进行拼接,得到20200406_375a49e245c8c9d0_ma.php,访问找到上传文件
用冰蝎进行连接,翻目录找到key文件并查看