「作者主頁」:士別三日wyx
此文章已錄入專欄《網路攻防》,持續更新熱門靶場的通關教程
「未知攻,焉知收」,在一個個孤獨的夜晚,你完成了幾百個攻防實驗,回過頭來才發現,已經擊敗了百分之九十九的同期選手,
[極客大挑戰 2019]Knife
- 一、題目簡介
- 二、思路分析
- 1)一句話木馬
- 2)代碼執行
- 三、解題步驟
- 1)目錄遍歷
- 2)查看檔案內容
- 四、總結
一、題目簡介
頁面中的文字提示我們使用「菜刀」連接后門,什么!你沒有菜刀?恭喜你,你來對地方了,網上大部分的答案都是直接上菜刀連后門,實際上不使用菜刀也能拿到 flag

二、思路分析
這一關是「代碼執行」漏洞,推薦使用 var_dump() + scandir() + file_get_contents() 讀取檔案內容
1)一句話木馬
根據頁面中的文字提示可知,作者為我們準備好了「一句話木馬」,并委婉的提示,使用「菜刀」連接

一句話木馬本質上是利用了「代碼執行」函式,將 post 請求的引數傳遞到 eval() 中執行,我們完全可以修改 post 請求的引數來執行代碼
2)代碼執行
使用工具(此處使用 Max HacKBar)修改 post 請求的「引數」,payload如下
Syc=phpinfo();

代碼成功執行,頁面展示了PHP的資訊

這里沒有進行過濾,可以「執行任意代碼」,讀取 flag.php 檔案即可獲取flag
三、解題步驟
1)目錄遍歷
使用 var_dump() + scandir() 查看根目錄下的所有檔案,payload如下
Syc=var_dump(scandir('/'));

頁面的背景顏色會遮蓋代碼執行的結果,提交請求后,右鍵查看「頁面源代碼」,獲取代碼的執行結果

CTF中有個不成文的「規矩」,如果有一個檔案名為 flag*,那 flag 大概率就在這個檔案里面
2)查看檔案內容
使用 var_dump() + file_get_contents() 查看檔案內容,payload如下
Syc=var_dump(file_get_contents('/flag'));

提交請求后,右鍵查看「頁面源代碼」,flag 就在里面

四、總結
喜歡一個東西首先要先學會「尊重」,雖然網路安全的圈子不乏各種灰產,以及高調宣傳自己是黑客的腳本小子,但不可否認,這個圈子仍有不少人保持著「舉世皆濁我獨清,眾人皆醉我獨醒」的心態,努力磨礪技術,提升自身修養,讓互聯網變得更加安全
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/340659.html
標籤:其他
上一篇:swagger配置使用及安全方案
