[發明專利]一種SQL注入漏洞檢測方法和檢測裝置在審
| 申請號: | 201710742057.2 | 申請日: | 2017-08-25 |
| 公開(公告)號: | CN107704758A | 公開(公告)日: | 2018-02-16 |
| 發明(設計)人: | 陳棟 | 申請(專利權)人: | 鄭州云海信息技術有限公司 |
| 主分類號: | G06F21/55 | 分類號: | G06F21/55;G06F21/57;G06F17/30;H04L29/06 |
| 代理公司: | 濟南舜源專利事務所有限公司37205 | 代理人: | 林秋蘭 |
| 地址: | 450000 河南省鄭州市*** | 國省代碼: | 河南;41 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 sql 注入 漏洞 檢測 方法 裝置 | ||
技術領域
本申請涉及Web應用安全監測技術領域,尤其涉及一種SQL注入漏洞檢測方法和檢測裝置。
背景技術
為避免用戶采用的應用程序構造動態的SQL語句執行非法的數據查詢,需要對Web應用進行SQL注入漏洞測試。由于需要進行大量的SQL語句測試,為減小人工成本,SQL注入漏洞測試采用自動化檢測工具批量化檢測,并自動判斷相應的檢測語句是否有漏洞。
對一些使用了AntiCSRFToken校驗技術的Web應用進行注入漏洞測試時,滲透測試工程師在手工檢測時可以發現SQL注入漏洞;而使用自動化檢測工具檢測時,采用同樣的查詢字符串卻不能發現注入漏洞,甚至提示測試參數不可注入的問題(例如,可能會提示POST parameter username does not seem to be injectable)。通過查詢HTML源代碼發現,此類Web應用返回的數據中具有一個隱藏的、由Web服務器隨機生成的校驗參數??蛻舳嗽俅蜗騱eb服務器提交數據時,Web服務器校驗提交的查詢請求中校驗參數是否是上次生成的參數值;如果校驗參數正確,則相應的查詢請求被Web服務器處理;如果校驗參數不正確,則相應的查詢請求不被Web服務器處理,即不進行注入漏洞測試。
發明內容
本申請提供了一種SQL注入漏洞檢測方法和檢測裝置,以解決設置校驗技術的Web應用的自動注入漏洞測試的問題。
本發明實施例提供一種SQL注入漏洞檢測方法,包括以下步驟:
向Web服務器發送第一查詢請求;所述第一查詢請求包括第一查詢字符串,以及Web服務器在前查詢響應中的校驗參數;所述在前查詢響應為在所述第一查詢請求之前的查詢請求對應的查詢響應;
接收Web服務器響應第一查詢請求返回的第一查詢響應;
向Web服務器發送第二查詢請求;所述第二查詢請求包括第二查詢字符串,以及所述第一查詢響應中的校驗參數;
接收Web服務器響應第二查詢請求返回的第二查詢響應;
其中:所述第一查詢字符串和所述第二查詢字符串之一是正常查詢字符串,另一為與所述正常查詢字符串對應的SQL注入漏洞檢測字符串;
根據所述第一查詢響應和所述第二查詢響應中的響應數據判斷Web服務器是否具有對應所述漏洞查詢字符串的注入漏洞。
可選的,所述漏洞查詢字符串包括基于布爾的盲注字符串、基于時間的盲注字符串和/或堆查詢注入字符串。
可選的,所述方法基于Scrapy框架創建。
本發明實施例提供一種SQL注入漏洞檢測裝置,包括:
發送模塊,用于向Web服務器發送第一查詢請求和第二查詢請求;
接收模塊,用于接收Web服務器響應所述第一查詢請求返回的第一查詢響應,以及,接收Web服務器響應所述第二查詢請求返回的第二查詢響應;
提取模塊,用于提取Web服務器在前查詢響應中的校驗參數,以及,提取所述第一查詢響應中的校驗參數;所述在前查詢相應為在所述第一查詢請求前的查詢請求對應的查詢響應;
其中:所述第一查詢請求包括第一查詢字符串,以及所述再前查詢響應中的校驗參數;所述第二查詢請求包括第二查詢字符串,以及所述第一查詢響應中的校驗參數;所述第一查詢字符串和所述第二查詢字符串之一是正常查詢字符串,另一為與所述正常查詢字符串對應的SQL注入漏洞檢測字符串;
漏洞判斷模塊,用于根據所述第一查詢響應和所述第二查詢響應中的響應數據判斷Web應用是否存在SQL注入。
可選的,所述漏洞查詢字符串包括基于布爾的盲注字符串、基于時間的盲注字符串和/或堆查詢注入字符串。
可選的,所述裝置為基于Scrapy框架創建的裝置。
采用本發明實施例提供的注入漏洞檢測方法和檢測裝置,在進行注入漏洞檢測時,可以通過提取查詢響應中的校驗參數,并將校驗參數加入到后續查詢請求中,以突破Web服務器端設置的校驗比對過程,實現了繞過設置校驗技術的Web應用的SQL注入漏洞檢測。
附圖說明
為更清楚地說明背景技術或本發明的技術方案,下面對現有技術或具體實施方式中結合使用的附圖作簡單地介紹;顯而易見地,以下結合具體實施方式的附圖僅是用于方便理解本發明實施例,對于本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據這些附圖獲得其他的附圖;
圖1是實施例提供的SQL注入漏洞檢測方法流程圖;
圖2是實施例提供的SQL注入漏洞檢測裝置示意圖。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于鄭州云海信息技術有限公司,未經鄭州云海信息技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710742057.2/2.html,轉載請聲明來源鉆瓜專利網。





