中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

變量 覆蓋漏洞----$$

發布時間:2020-05-27 21:35:51 來源:網絡 閱讀:968 作者:菜鵝小生 欄目:安全技術

變量覆蓋漏洞
經常引發變量覆蓋漏洞的函數有:extract(),parsestr()和importrequestvariables()和$$(可變變量)

$$可變變量引起的變量覆蓋漏洞
一、我們先來查看源代碼進行分析
變量 覆蓋漏洞----$$
1、Include 調用了flag.php文件
2、$_200,$403 定義兩個參數,以及參數值。
3、接著是兩個判斷語句,判斷訪問頁面的方法是否為post方法和有沒有參數flag。
4、再接著兩個foreach函數遍歷數組函數,這里就是把我們用get方法傳輸的數據當做數組進行遍歷,并將遍歷的參數賦值給key,將參數值復制給value。
5、還有一個if判斷語句,判斷用post方法傳輸的數據是不是和$flag的值相同,如果相同,輸出flag。
6、最后輸出$200的內容。

二、從源碼文件中可以看出,要想獲得flag,你必須知道原來的flag,那是不可能的。
這個時候我們就可以利用變量覆蓋漏洞。
1、我們可以看到在第一個數組

foreach ($_GET as $key => $value)
$$key = $$value

這個遍歷中出現$$key = $$value,這里將鍵和值又當做變量來使用。就這個題目來說,我們用get方法傳遞:_200=flag,經過$$key = $$value的處理后,就會變為$_200=$flag,這樣就會將原來的$_200的值覆蓋掉,換成$flag的值
3、第二個數組遍歷

foreach ($_POST as $key => $value)
    $$key = $value;

這個遍歷中出現$$key = $value,這里將只是將數組鍵當做下一個變量,將數組的值當做這個$$key的值。例如post方法傳入flag=abc,則處理后變成$flag=abc。這樣就造成將我們需要獲取的flag的值給覆蓋掉了。

三、通過多重分析,我們可先將$flag的值通過第一個數組遍歷賦值給$_200,然后通過die($_200)輸出出來,不過同時我們應該滿足源碼的判斷條件,通過post方法傳遞flag的值。這里我們已經將flag的值給了$_200所以不用再擔心將flag的值覆蓋掉,可以隨便輸入。

四、所以我們的payload是:
Get方法傳輸:?_200=flag
Post方法傳輸:flag=abcde
五、驗證結果:
變量 覆蓋漏洞----$$
因為是復現題目,flag有所差別。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

开封市| 商城县| 大荔县| 尼勒克县| 滦平县| 石林| 桐庐县| 萨嘎县| 昔阳县| 泸州市| 泾源县| 丰顺县| 乌苏市| 寻甸| 高唐县| 九龙城区| 宁陵县| 樟树市| 比如县| 江安县| 郯城县| 阿鲁科尔沁旗| 昆山市| 延寿县| 抚远县| 凉山| 武宣县| 克东县| 翼城县| 康马县| 滁州市| 望都县| 会同县| 南投县| 海宁市| 万州区| 万盛区| 桐梓县| 高平市| 太湖县| 登封市|