墨者学院WebShell文件上传分析溯源(第2题)Write

今天看文章看到一道比较有意思的题,复现并记录一下,友情提示,这个靶场经常经常经常出问题,如果发现路径无法访问等问题,重启解决就好~

寻找上传文件

访问提示后台,访问admin/upload.php会显示没有权限,并有一个upload1.php页面一闪而过,随后跳转到upload2.php,用burp抓包,得到上传页面
墨者学院WebShell文件上传分析溯源(第2题)Write
墨者学院WebShell文件上传分析溯源(第2题)Write

确定上传路径

上传之后只会显示上传路径,扫描目录也没有找到上传的文件,通过抓取upload1.php页面,发现返回了源码,现在已知处理上传的文件为upload_file.php
墨者学院WebShell文件上传分析溯源(第2题)Write
通过更改cookie的uploadmd5字段,获取upload_file.php的源码
墨者学院WebShell文件上传分析溯源(第2题)Write

<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,访问找到上传文件
墨者学院WebShell文件上传分析溯源(第2题)Write

找到key

用冰蝎进行连接,翻目录找到key文件并查看
墨者学院WebShell文件上传分析溯源(第2题)Write

相关推荐