ADWORLD web/upload1

 

 

 打开链接,是一个上传窗口

 

 

 

原想法是上传一句话木马,但是只能上传图片

 

 

 查看源码

<!Doctype html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<script type="text/javascript">
 

Array.prototype.contains = function (obj) {  
    var i = this.length;  
    while (i--) {  
        if (this[i] === obj) {  
            return true;  
        }  
    }  
    return false;  
}  

function check(){
upfile = document.getElementById("upfile");
submit = document.getElementById("submit");
name = upfile.value;
ext = name.replace(/^.+\./,'');

if(['jpg','png'].contains(ext)){
    submit.disabled = false;
}else{
    submit.disabled = true;

    alert('请选择一张图片文件上传!');
}


}

</script>

</head>
<body>


<form enctype='multipart/form-data' id='aa' name='aaa' method='post' action='index.php'> 
<input  id="upfile" name='upfile' type='file' onchange="check();" /> 

<input type='submit'  id ='submit' value='上传'> 
</form> 


</body>

<html>

 




['jpg','png'].contains(ext)是判断文件是否为图片的,只有jpg和png格式才能通过,同时通过disabled返回值
 ext = name.replace(/^.+./,’’)删除文件的名称

在上传不成功的页面打开源码,

 

 把disabled=“”删除,成功地将一句话木马上传

 

通过蚁剑扫描,找到flag

 

 

解题过程中遇到了如下情况:

 

 主要考虑一句话木马的语法是否写对和数据配置是否正确:

 

 

 

posted @ 2020-10-12 09:21  EleclouD  阅读(141)  评论(0)    收藏  举报