CTFshow php特性 web98
生活随笔
收集整理的這篇文章主要介紹了
CTFshow php特性 web98
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
目錄
- 源碼
- 思路
- 題解
- 總結
源碼
Notice: Undefined index: flag in /var/www/html/index.php on line 15Notice: Undefined index: flag in /var/www/html/index.php on line 16Notice: Undefined index: HTTP_FLAG in /var/www/html/index.php on line 17 <?php/* # -*- coding: utf-8 -*- # @Author: h1xa # @Date: 2020-09-16 11:25:09 # @Last Modified by: h1xa # @Last Modified time: 2020-09-18 21:39:27 # @link: https://ctfer.com*/include("flag.php"); $_GET?$_GET=&$_POST:'flag'; $_GET['flag']=='flag'?$_GET=&$_COOKIE:'flag'; $_GET['flag']=='flag'?$_GET=&$_SERVER:'flag'; highlight_file($_GET['HTTP_FLAG']=='flag'?$flag:__FILE__);?>思路
看起來有點繞,不過我們可以過濾掉不重要的代碼,COOKIE、SERVER和POST都能使$_GET['HTTP_FLAG']=='flag',這里我們就選擇post就好了,其他兩個先不用管
include("flag.php"); $_GET?$_GET=&$_POST:'flag'; //如果 //$_GET['flag']=='flag'?$_GET=&$_COOKIE:'flag'; 這兩行不用管,就用post //$_GET['flag']=='flag'?$_GET=&$_SERVER:'flag'; highlight_file($_GET['HTTP_FLAG']=='flag'?$flag:__FILE__);&的話你可以理解成C里面的指針,指向地址,那么就很簡單,簡單的來說就是$_GET=&$_POST就相當于$_GET指向了$_POST的地址,如果$_GET改變了$_POST也要跟著變,同理,$_POST變了$_GET也會跟著變,所以他們兩個的值是相等的
highlight_file($_GET['HTTP_FLAG']=='flag'?$flag:__FILE__);$flag應該是include("flag.php")中的變量,所以我們get和post同時傳入HTTP_FLAG=flag 就好啦
題解
總結
水題
總結
以上是生活随笔為你收集整理的CTFshow php特性 web98的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: CTFshow php特性 web99
- 下一篇: 动态规划算法php,php算法学习之动态