關於XSStrike這款工具雖有前人寫過相關資料,但是已經歷經一年之久了,這款工具已經發生重大的改變(如從僅支持python2.7 改變爲python 3.6),因此還是有必要再次寫一下的。
簡介
XSStrike是一款檢測Cross Site Scripting的高級檢測工具。它集成了payload生成器、爬蟲和模糊引擎功能。XSStrike不是像其他工具那樣注入有效負載並檢查其工作,而是通過多個解析器分析響應,然後通過與模糊引擎集成的上下文分析來保證有效負載。除此之外,XSStrike還具有爬行,模糊測試,參數發現,WAF檢測功能。它還會掃描DOM XSS漏洞。xise
特點
反射和DOM XSS掃描
多線程抓取
背景分析
可配置的核心
WAF檢測和規避
瀏覽器引擎集成爲零誤報率
智能負載發生器
手工製作的HTML和JavaScript解析器
強大的模糊引擎
支持Blind XSS
完善的工作流程
完整的HTTP支持
來自文件的Bruteforce有效負載
有效載荷編碼
python編寫
安裝
由於XSStrike只可以運行在python 3.6 以上版本,因此筆者使用parrot來安裝運行這款工具(筆者的舊版Kali 自帶的python 3 版本是3.5的)。http://caidaome.com/
1、給python3安裝pip,使用命令如下:
sudo apt-get install python3-pip
2、下載XSStrike,命令如下:
git clone https://github.com/s0md3v/XSStrike.git
3、安裝依賴模塊,命令如下:
pip3 install -r requirements.txt
4、運行工具,命令如下:
python3 xsstrike.py -u "http://target"
用法
-h, --help //顯示幫助信息
-u, --url //指定目標URL
--data //POST方式提交內容
-v, --verbose //詳細輸出
-f, --file //加載自定義paload字典
-t, --threads //定義線程數
-l, --level //爬行深度
-t, --encode //定義payload編碼方式
--json //將POST數據視爲JSON
--path //測試URL路徑組件
--seeds //從文件中測試、抓取URL
--fuzzer //測試過濾器和Web應用程序防火牆。
--update //更新
--timeout //設置超時時間
--params //指定參數
--crawl //爬行
--proxy //使用代理
--blind //盲測試
--skip //跳過確認提示
--skip-dom //跳過DOM掃描
--headers //提供HTTP標頭
-d, --delay //設置延遲
實例
爲了測試該工具的實用性,筆者寫了一個簡單的存在XSS漏洞的PHP文件。筆者爲它命名爲xss.php文件。
xss.php代碼如下圖:騰訊分分彩
下圖是通過工具Fuzzing出來的一個payload:
我們利用工具Fuzzing出來的payload進行一下測試,測試結果如下圖所示:http://tatawed.com/