0x00 題目
0x01 解題思路
首先上傳一個php一句話木馬,然后再進行各種繞過姿勢,當然也可以一步到胃。上一個BUUCTF的文件上傳題目我就是一步一步來的,鏈接在這。
那么這里我就一步到胃了。
打開proxy的截斷,然后放到repeater方便編輯請求和查看響應。
在這里,我做的修改有:1.把filename從1.php改成了1.phtml。2.把Content-Type改成了image/jpeg,跟上面提到的鏈接里的題目不同的是,在這里我沒有加文件幻數和把<?php轉換為<script language="php">。
上傳查看結果。
沒上傳成功,罵我來了,雖然罵了一半但口水已經噴到我了,必須getshell!
接下來我猜測是文件名的問題,嘗試了php3,php4,php5,phar都沒有上傳成功,那應該是只能上傳圖片后綴名了。(至於為什么能上傳php3,php4,php5,phtml,phar來繞過,且能被當作php文件來解析,我將會在以后的一篇文件上傳總結中寫出,也會在這里貼上對應的鏈接,因此,待更新嘻嘻~)
所以在這里,我上傳了.jpg,但是服務器是不會把jpg當作php腳本來解析的,需要有別的文件輔助,目前我學到的是有兩種方法:1.上傳.user.ini文件,此前提是上傳目錄中已有php文件。2.上傳.htaccess文件。(這兩個文件是什么,是干什么用的,是怎么用的,我也會在以后寫出並在這里貼上鏈接,待更新~)
在這里,我選擇了上傳.htaccess文件,原因是上傳目錄上沒有本有的php文件。
上傳jpg文件:
成功。再上傳.htaccess文件:
以防萬一,把Content-Type改成image/jpeg。
補充一下,.htaccess文件的內容如下:
SetHandler application/x-httpd-php
上傳成功。嘗試用蟻劍連接:
成功連上,並拿到了flag。
flag{1a5f52b9-d4db-424b-a15b-1227ae33c9dd}
最后,歡迎各位師傅指正和討論~