[發明專利]XSS漏洞檢測方法、系統和Web服務器有效
| 申請號: | 201410049088.6 | 申請日: | 2014-02-12 |
| 公開(公告)號: | CN104836779B | 公開(公告)日: | 2019-07-26 |
| 發明(設計)人: | 王笑天;羅啟武;董曉瓊 | 申請(專利權)人: | 上海攜程商務有限公司 |
| 主分類號: | H04L29/06 | 分類號: | H04L29/06;H04L12/26;H04L29/08;G06F21/56 |
| 代理公司: | 上海弼興律師事務所 31283 | 代理人: | 薛琦;王聰 |
| 地址: | 200335 上海市*** | 國省代碼: | 上海;31 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 特征字符串 檢測 測試數據 數據位置 網頁正文 濾除 網頁 符號組合 檢測系統 腳本事件 數據交互 隨機生成 觸發 篩選 記錄 | ||
1.一種XSS漏洞檢測方法,其特征在于,所述XSS漏洞檢測方法包括以下步驟:
隨機生成一第一特征字符串,將所述第一特征字符串填充至一GET參數中,并請求網頁;
獲得的網頁正文作為第一網頁正文后,在檢測到所述第一網頁正文中包含所述第一特征字符串時,生成包含一組特殊符號的一第二特征字符串,并將所述第二特征字符串填充至所述GET參數中,并再次請求網頁;
將再次獲得的網頁正文作為第二網頁正文后,通過QTwebkit的API接口分別獲取第一網頁正文的DOM樹和第二網頁正文的DOM樹;
分別遍歷第一網頁正文和第二網頁正文的DOM樹的各個DOM對象節點,篩選出具有數據交互的DOM對象,并通過QTwebkit的API接口觸發各個具有數據交互的DOM對象的腳本事件;
分別遍歷第一網頁正文中DOM樹和第二網頁正文中DOM樹的各個DOM對象節點,并記錄第一網頁正文中所有出現所述第一特征字符串的DOM對象節點的數據位置以及記錄第二網頁正文中對應于第一網頁正文中出現所述第一特征字符串的各個DOM對象節點中被濾除的特殊符號;
將所述第二特征字符串、數據位置和被濾除的特殊符號組合為多組包括所述第二特征字符串以及至少一個數據位置和至少一個被濾除的特殊符號的測試數據;
將各組測試數據加入XSS漏洞檢測的測試用例,并通過XSS漏洞檢測方式對根據網頁請求獲得的網頁正文進行XSS漏洞檢測。
2.如權利要求1所述XSS漏洞檢測方法,其特征在于,所述腳本事件為JavaScript事件。
3.如權利要求2所述XSS漏洞檢測方法,其特征在于,所述XSS漏洞檢測方法還包括:
在分別遍歷第一網頁正文的DOM樹和第二網頁正文的DOM樹的各個DOM對象節點,篩選出具有數據交互的DOM對象時,所述QTwebkit的QT引擎將各個具有數據交互的DOM對象的腳本中的Eval函數上加載一Hook函數;
并在通過QTwebkit的API接口觸發各個具有數據交互的DOM對象的腳本事件時,Hook函數輸出Eval函數執行信息。
4.一種Web服務器,其特征在于,所述Web使用如權利要求1-3中任一項所述的XSS漏洞檢測方法。
5.一種XSS漏洞檢測系統,其特征在于,所述XSS漏洞檢測系統包括:
一網頁請求模塊,用于隨機生成一第一特征字符串,將所述第一特征字符串填充至一GET參數中,并請求網頁;
一特征字符檢測模塊,用于獲得所述網頁正文作為第一網頁正文后,在檢測到所述第一網頁正文中包含所述第一特征字符串時,生成包含一組特殊符號的一第二特征字符串,并通過所述網頁請求模塊將所述第二特征字符串填充至所述GET參數中,并再次請求所述網頁;
一DOM樹獲取模塊,用于將獲得所述網頁正文作為第二網頁正文后,通過QTwebkit的API接口分別獲取第一網頁正文的DOM樹和第二網頁正文的DOM樹;
一DOM篩選模塊,用于分別遍歷第一網頁正文和第二網頁正文的DOM樹的各個DOM對象節點,篩選出具有數據交互的DOM對象,并通過QTwebkit的API接口觸發各個具有數據交互的DOM對象的腳本事件;
一位置和濾除字符檢測模塊,用于分別遍歷第一網頁正文中DOM樹和第二網頁正文中DOM樹的各個DOM對象節點,并記錄第一網頁正文中所有出現所述第一特征字符串的DOM對象節點的數據位置以及記錄第二網頁正文中對應于第一網頁正文中出現所述第一特征字符串的各個DOM對象節點中被濾除的特殊符號;
一測試數據生成模塊,用于將所述第二特征字符串、數據位置和被濾除的特殊符號組合為多組包括所述第二特征字符串以及至少一個數據位置和至少一個被濾除的特殊符號的測試數據;
一XSS漏洞檢測模塊,用于將各組測試數據加入XSS漏洞檢測的測試用例,并通過XSS漏洞檢測方式對根據網頁請求獲得的網頁正文進行XSS漏洞檢測。
6.如權利要求5所述XSS漏洞檢測系統,其特征在于,所述腳本事件為JavaScript腳本事件。
7.如權利要求6所述XSS漏洞檢測系統,其特征在于,所述XSS漏洞檢測系統還包括:
一Hook加載模塊,用于在分別遍歷第一網頁正文的DOM樹和第二網頁正文的DOM樹的各個DOM對象節點,篩選出具有數據交互的DOM對象時,通過所述QTwebkit的QT引擎將各個具有數據交互的DOM對象的腳本中的Eval函數上加載一Hook函數;
一Hook檢測模塊,用于在通過QTwebkit的API接口觸發各個具有數據交互的DOM對象的腳本事件時,Hook函數輸出Eval函數執行信息。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于上海攜程商務有限公司,未經上海攜程商務有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410049088.6/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:成型用包裝材料
- 下一篇:用于無效機動車的高壓系統的方法





