999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

大規模Web應用的SQL注入攻擊威脅檢測研究

2023-11-13 07:10:24袁梁
電腦與電信 2023年7期
關鍵詞:數據庫檢測信息

袁梁

(無錫城市職業技術學院,江蘇 無錫 214153)

1 引言

SQL注入攻擊漏洞是Web應用程序最嚴重的安全風險之一,通常攻擊者利用服務器變量、Cookie注冊表、二階注入等攻擊方式,在用網絡戶向Web應用程序提交輸入信息時發起攻擊,修改一階SQL注入的結構化查詢語句,或者將二階SQL注入信息存儲至數據庫中,但不立即執行,直到下一個調用該數據的SQL語句執行時發起攻擊。針對此問題,本文利用模糊測試的SQL注入漏洞攻擊檢測模型,對不同分級漏洞的SQL注入攻擊作出檢測分析,從而提升Web應用程序中SQL注入攻擊的檢測精度。

2 SQL注入攻擊的實現方式

2.1 SQL常規注入

根據SQL注入攻擊發生方式不同可分為SQL常規注入、SQL二階注入、SQL盲注等方式。SQL常規注入攻擊是通過修改數據庫執行的SQL語句,或在容易遭受攻擊的SQL語句中嵌入updatexml()惡意函數,來完成SQL語句信息的錯誤修改、并從數據庫中獲取到有價值的數據信息。[1]其中updatexml()惡意函數包括xml_document、XPathstring、new_value等組成參量,xml_document表示文檔名稱、XPathstring表示查詢定位的字符串格式、new_value表示替換的符合條件值。如在SQL Server數據庫的數據訪問過程中,數據庫內部的訪問函數參數產生錯誤,這時SQL常規注入會查詢帶有錯誤信息的函數,展開某一部位SQL語句的修改、嵌入updatexml()惡意函數。

2.2 SQL二階注入

SQL二階注入攻擊是相對一階SQL注入攻擊的漏洞攻擊模式。一階SQL注入是將惡意字符寫入到SQL語句中,SQL語句惡意字符串插入與修改后的傳播路徑為從source源點輸入、傳播至sink匯聚結點結束,當外部用戶提交請求方為該SQL語句,立即引發SQL注入攻擊。SQL二階注入攻擊則是對插入的SQL語句惡意字符串數據進行轉義,將SQL語句寫入數據庫,但不會立即執行攻擊,而是等待下一個調用該數據的SQL語句執行時發起攻擊,也即當用戶再次調用SQL語句、使用存儲的惡意字符串數據時,才會間接觸發SQL注入攻擊。

2.3 SQL盲注

SQL盲注是由客戶端向服務端發送SQL注入請求語句,根據服務器端返回的“true or fales”信息,獲取攻擊所需網絡頁面、SQL語句相關信息[2]。若Web應用程序未對上述輸入數據請求變量實施過濾處理,那么可利用該變量偽造HTTP網絡消息的報頭值、修改SQL語句,包括對Web系統用戶輸入信息、Cookie內容的修改。服務器端執行被修改的SQL語句時,可能會誤刪后臺數據庫的存儲數據來完成SQL盲注攻擊。

3 SQL注入攻擊的執行流程

SQL注入攻擊利用在系統表單或URL查詢字符串后,插入特殊字符構造非法的SQL語句,并作為輸入參數經由source源點傳播至sink匯聚結點、傳遞至Web應用程序。當服務器端執行輸入的非法SQL語句時,攻擊方會對關系型數據庫存儲的xml文檔漏洞發起攻擊,便成功實現自己所要執行的操作。[3]對不同關系型數據庫而言,SQL注入攻擊存在差異,具體的SQL注入攻擊執行流程如下:

(1)判斷Web應用程序是否可SQL注入。當用戶只訪問Web應用程序的URL列表、網頁內容時不發生SQL注入攻擊,只有從數據庫中動態查詢存儲的網頁數據信息時,才有可能發生SQL注入攻擊問題。

(2)查找SQL語句注入點。確定Web網頁可SQL注入后利用帶特殊參數的查詢條件語句如"select*from books",在有SQL語句參數傳遞的位置輸入查詢語句、查找網頁中存在的SQL注入漏洞,根據服務器端返回的“true or fales”信息,判斷該頁面存在(不存在)SQL注入漏洞,僅當對“and 1=1”“and 1=2”查詢條件語句返回錯誤信息時,則表明Web應用程序存在漏洞、且容易遭受SQL注入攻擊。

(3)判斷數據庫類型。不同關系數據庫類型所使用的SQL注入攻擊方式不同,如對SQLServer數據庫、MySql數據庫、Access數據庫進行SQL注入攻擊的手段存在差異,在發動SQL注入攻擊前需判斷選擇的數據庫類型。

(4)權限擴張。在確定數據庫類型后擴張訪問與操作數據庫的用戶權限。例如以SQL Server數據庫作為SQL注入攻擊的數據庫類型,判斷SQL注入攻擊的輸入source源點是否支持多語句查詢,若用戶擁有最高權限(SuperAdmin,SA)、且數據庫存在xp_cmdshell擴展存儲,則可執行SQL shell命令字符串來完成用戶權限擴張;若用戶不存在SA權限,那么需要針對獲取的SQL Server數據庫表名稱、URL列表名稱,使用邏輯值錯誤查詢與判斷法確定用戶權限字段值進行權限擴張。

4 SQL注入攻擊漏洞的分級與測試用例設計

4.1 SQL注入攻擊漏洞的分級策略

按照SQL注入攻擊漏洞由弱到強的防御強度等級,將其分為0級、1級、2級和3級漏洞。0級漏洞指若Web應用程序未對輸入SQL數據請求變量實施過濾處理,表明Web系統對SQL注入攻擊的防御強度最低,如假設用戶登錄Web系統的代碼為“string sql="select*from user where user__name='"+t1.Text.Trim()+"'and user_password='"+t2”,那么若輸入用戶名為“abc or 1=1--?”時即可通過系統身份驗證。

1級漏洞指Web系統在過濾SQL語句的“’”“#”insert”“mid”等特殊字符時,插入特殊字符構造的非法SQL語句可繞過過濾機制,對Web應用程序作出SQL注入攻擊,表明該SQL注入攻擊漏洞為1級漏洞[4]。較為常見的非法SQL語句字符串構造法,包含替換編碼法(ASCII與UNICODE編碼替換)、大小寫混合編碼法與重組法,其中大小寫混合編碼法、ASCII與UNICODE替換編碼法可騙過單一的字符串過濾機制。重組繞過法是將用戶提交的信息進行修改,如將過濾關鍵字“and”修改為“aandnandd”,那么即使Web系統完成SQL語句的關鍵字過濾,仍然存在該關鍵字的字符,也就可能導致SQL注入攻擊的發生。

2級漏洞指若Web應用程序、后臺數據庫的通信方式存在漏洞,如用戶輸入信息的存儲可能存在未被篩選的字符串,那么存儲過程中可能會發生SQL注入攻擊,攻擊方登錄Web應用程序后,會在后臺數據庫執行惡意命令。

3級漏洞指使用參數化查詢法構建Web應用程序的SQL語句時,若參數化查詢法所耗時間過長則二階SQL注入漏洞的查詢、檢測容易出現問題,當外部數據項與二階SQL注入字符串形成連接將發生數據攻擊情況。

4.2 測試模型的用例設計

按照SQL注入攻擊0級、1級、2級和3級的漏洞分級策略將其分為如表1所示的測試等價類。其中0級、1級和2級(即二階SQL注入攻擊)的SQL注入攻擊漏洞都可劃分為相應的有效等價類,3級漏洞由于并非自動化SQL注入攻擊,因此不能對其作出測試等價類劃分[5]。之后根據SQL注入攻擊漏洞等級所劃分的有效等價類,設置每種等價類所對應的測試用例,保證在Web應用程序的SQL注入攻擊漏洞檢測時,能夠針對不同的情況采用不同的測試用例,有助于消除在測試時的數據信息冗余,確保測試檢測完備性。

表1 基于模糊測試法的SQL注入攻擊測試模型用例

5 基于模糊測試技術的SQL注入攻擊檢測模型架構設計與檢測實現

依照一階、二階SQL注入攻擊威脅的檢測要求,采用模塊化開發設計理念完成SQL注入漏洞檢測模型的結構設計,包括信息收集模塊、漏洞模糊測試模塊、數據庫組件等組成部分設置[6],具體如圖1所示。

圖1 基于模糊測試技術的SQL注入攻擊檢測模型架構

5.1 信息收集模塊

信息收集模塊負責對待測Web應用程序的頁面信息收集包括URL列表獲取、HTML網頁、一階SQL注入疑似路徑獲取、二階SQL注入疑似路徑獲取等。首先利用Python Scrapy網絡爬蟲框架獲取網頁URL,對整個系統運行頁面的URL列表進行下載解析,提取重要的SQL語句信息。使用程序切片(chopping)規則通過查找一階、二階注入操作對,獲取到一階、二階SQL注入攻擊的疑似路徑,包括source源點至sink匯聚結點的惡意字符串傳播路徑,并作為漏洞檢測的輸入信息存儲至數據庫中。

5.2 漏洞模糊測試模塊

漏洞檢測模塊在接收到信息收集模塊提取的待測數據后,基于以上不同漏洞等級構建的測試用例向Web應用程序發出SQL注入攻擊的連接請求,從測試用例庫中讀取檢測腳本文件開始SQL注入攻擊測試、修改SQL語句,根據獲取到的請求反饋信息判斷實施攻擊后,檢測腳本文件的測試用例是否與遭受該級別SQL注入攻擊的URL專有標識相匹配,若匹配則表明存在該級別的SQL注入攻擊漏洞,否則表明不存在這一級別的SQL注入攻擊漏洞,將得到的檢測結果信息存儲至數據庫中,具體執行流程如圖2所示。之后重復以上步驟,直到信息收集模塊獲取到的Web應用程序所有URL列表網頁,都完成SQL注入攻擊的漏洞模糊測試為止。

圖2 漏洞模糊測試模塊的執行流程

6 仿真實驗與結果分析

6.1 實驗環境設置

為驗證模糊測試技術的SQL注入漏洞檢測有效性,本文利用ASP.NET、Microsoft Visual Studio、IIS服務器、SQLServer數據庫等軟硬件搭建實驗環境,使用BSQL Hacker自動注入工具實施Web應用程序的網頁注入攻擊,選取某高校校內圖書館Web管理程序(JSPLibrary)對不同層級SQL注入攻擊的漏洞檢測效果進行實驗論證,對基于模糊測試技術的SQL注入漏洞檢測模型進行實驗論證。

6.2 實驗結果分析

圖書館Web管理程序(JSPLibrary)的被測文件數為55個、后臺代碼行數為3352行,在一階SQL注入疑似路徑查找過程中,以Web應用管理程序的后臺代碼作為輸入進行預處理,然后使用不同等級漏洞的測試用例,對收集到的URL列表獲取、HTML網頁等信息進行查找與過濾,通過與測試用例的字符匹配檢測得到一階SQL注入疑似路徑數。然后在一階SQL注入疑似路徑數的基礎上,按照文件邏輯地址的依照順序存取操作規則(如表1(7)所示),得到二階SQL注入攻擊的操作對,檢測出的二階SQL注入攻擊威脅數如表2所示。

表2 一階、二階SQL注入攻擊威脅數檢測結果

從表2的一階、二階SQL注入攻擊威脅數檢測結果可以發現:使用BSQL Hacker注入攻擊工具、基于模糊測試技術的測試用例設計方案,能夠獲取到被攻擊的數據庫名、二階注入操作對文件名、數據庫表名,且檢測到的一階、二階SQL注入攻擊疑似威脅數分別為10個和4個,一階、二階SQL注入攻擊確認威脅數為8個和4個,檢測準確率達到90%以上,遠遠優于基于程序切片(chopping)法的SQL注入攻擊檢測結果,可被廣泛用于校園、醫院、社區等處的網絡Web應用程序SQL攻擊威脅檢測工作。

7 結語

Web應用程序可通過SQL結構化查詢語言與后臺數據庫建立網絡通信的交互連接,但在用戶訪問Web應用網絡、SQL命令處理與執行過程中,外部SQL注入攻擊會針對應用程序的輸入數據過濾、驗證漏洞構造特殊的輸入SQL語句,達到控制服務器Web應用程序、獲取重要數據信息的目的。因此,針對一階、二階SQL注入攻擊執行過程中,在系統表單或URL查詢字符串后插入特殊字符,將非法數據插入系統數據庫、服務器端的情況,采用模糊測試的SQL注入漏洞攻擊檢測模型進行分級漏洞檢測,可實現系統數據庫、服務器端的安全配置和漏洞防御。

猜你喜歡
數據庫檢測信息
“不等式”檢測題
“一元一次不等式”檢測題
“一元一次不等式組”檢測題
訂閱信息
中華手工(2017年2期)2017-06-06 23:00:31
數據庫
財經(2017年2期)2017-03-10 14:35:35
數據庫
財經(2016年15期)2016-06-03 07:38:02
小波變換在PCB缺陷檢測中的應用
數據庫
財經(2016年3期)2016-03-07 07:44:46
數據庫
財經(2016年6期)2016-02-24 07:41:51
展會信息
中外會展(2014年4期)2014-11-27 07:46:46
主站蜘蛛池模板: 久久久久免费精品国产| 毛片网站免费在线观看| 日韩美毛片| 日韩欧美在线观看| 久久久久亚洲精品无码网站| 亚洲综合色吧| 国产成人综合久久精品尤物| 国产乱人视频免费观看| 国产尹人香蕉综合在线电影| 91久久国产综合精品女同我| 亚洲乱码在线播放| 国产精品嫩草影院视频| 午夜免费视频网站| 欧美日本在线观看| 亚洲日韩久久综合中文字幕| 香蕉eeww99国产精选播放| 亚洲动漫h| 国产成a人片在线播放| 亚洲国产综合精品一区| 亚洲色欲色欲www网| 国产成人免费视频精品一区二区| 97久久免费视频| 久久超级碰| 国产成人做受免费视频| 欧美色综合网站| 国产小视频a在线观看| 日韩精品毛片| 国产69精品久久久久孕妇大杂乱 | 亚洲成人黄色在线观看| AV无码国产在线看岛国岛| 精品人妻AV区| 精品一区二区无码av| 国产激情在线视频| www.亚洲国产| 中文字幕2区| 国产精品无码一二三视频| 五月丁香伊人啪啪手机免费观看| 久久精品一卡日本电影| 伊人激情综合网| 尤物午夜福利视频| 国产精品99一区不卡| 国产精品大尺度尺度视频| 九九久久精品国产av片囯产区| 国产精品视频公开费视频| Jizz国产色系免费| 韩国福利一区| 国产亚洲精品97AA片在线播放| 国产区免费| 日日拍夜夜嗷嗷叫国产| 玖玖免费视频在线观看| 午夜视频www| 超碰91免费人妻| 国产小视频免费| 久视频免费精品6| a在线观看免费| 激情综合婷婷丁香五月尤物| 亚洲第一天堂无码专区| 网友自拍视频精品区| 中文字幕无码电影| 亚洲中文无码h在线观看 | 亚洲天堂在线免费| 色噜噜中文网| 无码AV高清毛片中国一级毛片| 91成人在线免费视频| 毛片久久网站小视频| 亚洲欧美日韩成人高清在线一区| 国产日韩欧美视频| 伊人色在线视频| 国产一级二级在线观看| 超碰色了色| 国内精品九九久久久精品| 性色生活片在线观看| 国产一在线观看| 国产成人精品午夜视频'| 久久9966精品国产免费| 久久伊人久久亚洲综合| 国禁国产you女视频网站| 亚洲视频一区| 国产激情无码一区二区APP| 国产伦片中文免费观看| 国产a在视频线精品视频下载| 精品久久国产综合精麻豆 |