BUUCTF 檔案上傳
阿新 • • 發佈:2020-12-08
[WUSTCTF2020]CV Maker
考點:檔案上傳
解題
1、註冊,登入,上傳圖片馬,用bp抓包後將filename字尾改為php,連上蟻劍。
[ACTF2020 新生賽]Upload(檔案上傳-前端js驗證&黑名單繞過)
1、F12,刪除onsubmit="return checkFile()",繞過前端驗證
2、發現不能上傳php,就是可能後端黑名單過濾了php
上傳一句話木馬,用burpsuite抓包,修改filename的字尾為.phtml,連上蟻劍。
最後,放上原始碼:
<?php error_reporting(0); //設定上傳目錄 define("UPLOAD_PATH", "./uplo4d"); $msg = "Upload Success!"; if (isset($_POST['submit'])) { $temp_file = $_FILES['upload_file']['tmp_name']; $file_name = $_FILES['upload_file']['name']; $ext = pathinfo($file_name,PATHINFO_EXTENSION); if(in_array($ext, ['php', 'php3', 'php4', 'php5'])) { exit('nonono~ Bad file!'); } $new_file_name = md5($file_name).".".$ext; $img_path = UPLOAD_PATH . '/' . $new_file_name; if (move_uploaded_file($temp_file, $img_path)){ $is_upload = true; } else { $msg = 'Upload Failed!'; } echo '<div style="color:#F00">'.$msg." Look here~ ".$img_path."</div>"; } ?>