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精品国产91久无码网站| 亚洲五月激情网| 人妻少妇久久久久久97人妻| 就去色综合| 天天色综网| 久久久久青草线综合超碰| 国产欧美成人不卡视频| 爆乳熟妇一区二区三区| 午夜福利亚洲精品| 欧美精品黑人粗大| 国产精品无码翘臀在线看纯欲| 久久久久人妻精品一区三寸蜜桃| 亚州AV秘 一区二区三区| 国产人人干| 国产精品网曝门免费视频| 99精品免费欧美成人小视频| 91小视频在线| 亚洲国产天堂久久综合226114| 亚洲国产精品国自产拍A| 欧美v在线| 在线高清亚洲精品二区| 在线亚洲小视频| 无码人中文字幕| 伊人福利视频| 97视频免费在线观看| 国产一级在线观看www色 | 精品欧美一区二区三区在线| 国产无码高清视频不卡| 一区二区三区四区精品视频 | 亚洲无码高清一区| 国产精品嫩草影院视频| 无码人妻热线精品视频| 伊人91视频| 丁香亚洲综合五月天婷婷| 精品无码国产自产野外拍在线| 欧美日韩午夜| 国产香蕉97碰碰视频VA碰碰看 | 欧美在线免费| www.精品国产| 四虎免费视频网站| 人妻无码一区二区视频| 国内精品自在自线视频香蕉 | 真人免费一级毛片一区二区| 国产成人精品在线1区| 久久精品亚洲中文字幕乱码| 成人午夜网址| 欧美一区二区自偷自拍视频| 成人第一页| 国产在线专区| 伊人丁香五月天久久综合 | 99热这里只有精品2| 国产97视频在线观看| 欧美成人区| 亚洲啪啪网| 成人免费午夜视频| 在线国产综合一区二区三区| 久久精品国产免费观看频道| 国产在线98福利播放视频免费| 久无码久无码av无码| 久久久黄色片| 一级毛片免费播放视频| 无码 在线 在线| 91亚洲免费| 69国产精品视频免费| 久久综合九色综合97网| 色国产视频| 国产欧美日韩va| 日韩精品一区二区深田咏美| 国产你懂得| 成人免费视频一区二区三区 | 欧美一区二区三区香蕉视| 亚洲精品福利视频| 国产香蕉在线视频| 久久精品丝袜高跟鞋| 2020最新国产精品视频| 国产一级小视频| 露脸一二三区国语对白| 日韩av手机在线|