代碼審計中的XSS反射型漏洞


                                                                               XSS反射型漏洞

 

一 XSS漏洞總共分三總

         XSS反射型漏洞,XSS保存型漏洞,基於DOM的XSS漏洞

 

這次主要分享XSS反射型漏洞

         基本原理:就是通過給別人發送帶有惡意腳本代碼參數的URL,當URL地址被打開時,特定的代碼參數會被HTML解析,執行,如此就可以獲取用戶的COOIKE,進而盜號登陸。

         特點是:非持久化,必須用戶點擊帶有特定參數的鏈接才能引起。

比如hack甲構造好修改密碼的URL並把密碼修改成123,但是修改密碼只有在登陸方乙才能修改,乙在登陸的情況下點擊甲構造好的url將直接在不知情的情況下修改密碼。

二 實戰例子

         1:變量的直接輸出

  <?php

//XSS反射型漏洞

//1.變量的直接輸出    

echo $_GET['XSS'];

?>

         直接對GET獲取的值寫入一個彈框操作,成功彈出,測試代碼和結果見下圖

 

 

 

 

獲取cookie,ceookie就是相當於設別的一種認證的作用,獲取到cookie就可以進行繞過登陸后台,把alert()括號里的值換成document.cookie即可

alert(document.cookie)

我測試的時候沒有網,而且好像出了些故障,可能是版本的原因,獲取的空白,這個各位朋友可以自己測試下。

二。:$SERVER變量參數

 

 最常用的參數以及作用

  $_SERVER['PHP_SELF']    //直接在URL中輸出執行

$_SERVER['HTTP_USER_AGENT']                            //HTTP頭中構造XSS

$_SERVER['HTTP_REFERER']              //Referer頭中構造

$_SERVER['REQUEST_URI']

    $_SERVER['PHP_SELF']參數實例

       URL輸入的直接在下面輸出執行,所以只需要構造XSS直接彈框就行,效果如下

      $_SERVER['REQUEST_URI']參數

 

 

 

    

基本原理如上 但多個URL編碼 需要解碼下 加個解碼函數

解碼前執行函數  看符號被URL編碼了 ,所以加個urldecode解碼函數

  

看加后成功彈出

 

 

測試代碼

<?php

/* XSS反射型漏洞

1.變量的直接輸出 

echo $_GET['XSS']; */

 

//$SERVER變量輸出

 

//1 echo $_SERVER['PHP_SELF'];

//

echo urldecode($_SERVER['REQUEST_URI']);

?>

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM