本文目錄一覽:
求解ctf關於php弱類型的題,求flag
首先根據json_decode()函數可以看出提交的是json數據
然後看到這一段代碼就可以知道json的基本構造了
if (($data[‘user’] == ‘easy’ strpos($data[‘user’], ‘easy’) === FALSE) ($data[‘pass’] == ‘secirity’ strpos($data[‘pass’], ‘secirity’) === FALSE))
以下為$_GET[‘haha’] 的內容
{“user”: “easy”,”user”: “easy”,”pass”: “secirity”,”pass”: “secirity”}
CTF賽題PHP7 正則繞過
前言:由於長度限制,且不像其他題目告知flag.php的內容, 筆者並沒有求出flag,繞過思路可參考,也歡迎ctf大佬指點迷津。
題目如下,解析flag.php中的flag變量
1.題目不告知flag.php的內容,所以唯一的辦法只有打印出flag.php,先想辦法繞過
2.因為 _ 也在正則裏面,所以 =${_GET}[_]();_=phpinfo() 沒辦法傳入
3.嘗試php7 中的($a)();來執行動態函數 例如 (‘phpinfo’)()
4.那麼動態構造函數名稱即可,可理解,假如你是:(1+1)(); php會先運算1+1=2 然後在調用:2();
5.藉助大牛的payload (~%8F%97%8F%96%91%99%90)(); 成功執行
6.payload構造方式如下
** 如何理解? **
對執行的函數取反然後進行 urlencode 詳細可自行科普
7.當前可執行phpinfo,如何獲取flag.php的內容?思路繼續擴展
以上均是長度限制 筆者解題終於此
那麼只需要 執行 getFlag()函數即可
(‘getFlag’)(); 對flag進行編碼
以上就是筆者對php繞過的小理解和內容分享
參考文章:
歡迎討論,持續更新中,感謝關注
各位大佬,ctf的php題,真的急!!求flag
header(“location:aaaa.php?flag=1”);
其中flag=1是一個URL參數,是一個鍵值對,鍵名是flag,鍵值是1,允許有多對這樣的參數,他們之間用號連接,如aaaa.php?flag1=1flag2=2flag3=3…
然後可以在aaaa.php中用$_GET[“flag”]來接收該值!
函數表示角時要注意角的範圍。 不等式的
原創文章,作者:NBDZ,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/139680.html