成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Web下SQL注入攻擊的檢測與防御

企業動態
此文章主要向大家描述的是在Web下SQL注入攻擊的檢測和防御的實際應用,同時本文也簡要的介紹了有關SQL注入式攻擊的原理。

此文章主要向大家描述的是在Web下SQL注入攻擊的檢測和防御的實際應用在前人提出的“對用戶輸入信息實施過濾”的技術基礎上,建立了針對SQL注入攻擊的檢測/防御/備案通用模型。該模型在客戶端和服務器端設置兩級檢查。

對于一般性用戶誤操作和低等級惡意攻擊,客戶端的檢查將自動做出反應;考慮到客戶端檢查有可能被有經驗的攻擊者繞開,特在服務器端設定二級檢查。在文中還提出了對高等級惡意攻擊的自動備案技術,并給出了相應代碼。

互聯網上的安全問題越來越嚴重,入侵檢測(IDS)也因而顯得尤為必要。MS SQL Server作為數據庫市場的主要產品之一,研究針對他的SQL攻擊處理方案,建立一個通用的SQL注入攻擊防御、檢測、備案模型,對于加強安全建設具有積極的意義。

1、SQL注入攻擊簡介

SQL注入攻擊源于英文“SQL Injection Attack”。目前還沒有看到一種標準的定義,常見的是對這種攻擊形式、特點的描述。微軟技術中心從2個方面進行了描述:

(1)腳本注入式的攻擊。

(2)惡意用戶輸入用來影響被執行的SQL腳本。

Stephen Kost給出了這種攻擊形式的另一個特征,“從一個數據庫獲得未經 授權的訪問和直接檢索”。SQL注入攻擊就其本質而言,他利用的工具是SQL的語法,針對的是應用程序開發者編程過程中的漏洞。“當攻擊者能夠操作數據,往應用程序中插入一些SQL語句時,SQL注入攻擊就發生了”。

由于SQL注入攻擊利用的是SQL語法,使得這種攻擊具有廣泛性。理論上說,對于所有基于SQL語言標準的數據庫軟件都是有效的,包括MS SQL Server,Oracle,DB2,Sybase,MySQL等。當然,各種軟件有自身的特點,最終的攻擊代碼可能不盡相同。SQL注入攻擊的原理相對簡單,易于掌握和實施,并且整個Internet上連接有數目驚人的數據庫系統(僅在中國,截至2003年3月的統計就有82 900多個),在過去的幾年里,SQL攻擊的數量一直在增長。

2、SQL注入式攻擊的檢測及跟蹤

2.1SQL攻擊檢測/防御/跟蹤模型

針對SQL攻擊的防御,前人做過大量的工作,提出的解決方案包括 :

(1)封裝客戶端提交信息。

(2)替換或刪除敏感字符/字符串。

(3)屏蔽出錯信息以及。

(4)在服務端正式處理之前對提交數據的合法性進行檢查等。

方案(1)的做法需要RDBMS的支持,目前只有Oracle采用該技術;

 

方案(2)是一種不 完全的解決措施,舉例來說明他的弱點,當客戶端的輸入為“…ccmdmcmdd…”時,在對敏感字符串“cmd”替換刪除以后,剩下的字符正好是“…cmd…”;

方案(3)的實質是在服務端處理完畢之后進行補救,攻擊已經發生,只是阻止攻擊者知道攻擊的結果;

 

方案(4)被多數的研究 者認為是最根本的解決手段,在確認客戶端的輸入合法之前,服務端拒絕進行關鍵性的處理操作。

方案(4)與(2)的區別在于,方案(4)一旦檢測到敏感字符/字符串,針對數據庫的操作即行中止,而方案(2)是對有問題的客戶端輸入做出補救,不中止程序后續操作。方案(2)雖然在一定程度上有效,但有“治標不治本”的嫌疑,新的攻擊方式正在被不斷發現,只要允許服務端程序使用這些提交信息,就總有受到攻擊的可能。

因此,本文中針對SQL注入攻擊的檢測/防御/備案模型即基于提交信息的合法性檢 查,在客戶端和服務端進行兩級檢查,只要任一級檢查沒有通過,提交的信息就不會進入query語句,不會構成攻擊。在客戶端和服務端進行合法性檢查的函數基本相同。客戶端檢查的主要 作用是減少網絡流量,降低服務器負荷,將一般誤操作、低等級攻擊與高等級攻擊行為區分開來。技術上,客戶端的檢查是有可能被有經驗的攻擊者繞開的,在這種情形下,提交的數據被直接發往服務端,通過在服務器端設定二級檢查就顯得十分必要。由于正常提交到服務端的數據已經在客戶端檢查過,因此,服務端檢查到的提交異常基本可以認定為惡意攻擊行為所致,中止提交信息的處理,進行攻擊備案,并對客戶端給出出錯/警告提示。對應模型簡圖如(圖1)所示。

Web下SQL注入攻擊的檢測與防御(圖一)#p#

2.2檢 測

 

對提交信息的檢查,主要包括數據類型檢查、數據長度檢查和敏感字符過濾。前兩項可利用函數直接辦到,敏感字符過濾則需要應用開發方做相應開發。經過總結,對語句時必須用到的,因此可以針對這些敏感字符,設定過濾函數,在把這些上傳的參數結合到查詢語句之前對他們進行過濾。下面的2個函數即過濾模塊的主要代碼:

Web下SQL注入攻擊的檢測與防御(圖二)

Web下SQL注入攻擊的檢測與防御(圖三)

Web下SQL注入攻擊的檢測與防御(圖四)

提交非法字符的人,都有可能是SQL注入攻擊者。但考慮到用戶在正常使用中的誤操作也有提交非法字符/字符串的可能,因此客戶端的一級檢查無論對用戶誤操作,還是一般性攻擊,所做出處理措施只是中止信息提交,給出友好的出錯提示。在經過一級檢查以后提交到服務器端的信息中仍然包括非法字符/字符串的,惟一的可能是攻擊者繞開了客戶端的一級檢查。對于這種危險的信號,服務器端將從收到的提交信息數據包中提取攻擊源的IP地址,存入數據庫備查,同時中止針對數據庫的操作.

 

Web下SQL注入攻擊的檢測與防御(圖五)

Web下SQL注入攻擊的檢測與防御(圖六)

Web下SQL注入攻擊的檢測與防御(圖七)

Web下SQL注入攻擊的檢測與防御(圖八)

Web下SQL注入攻擊的檢測與防御(圖九)

3、結語

由于SQL注入攻擊針對的是應用開發過程中的編程不嚴密,因而對于絕大多數防火墻來說,這種攻擊是“合法”的。問題的解決只有依賴于完善編程。專門針對SQL注入攻擊的工具較少,Wpoison對于用asp,php進行的開發有一定幫助。本文中的DDL模型作為一個整體解決方案,對代碼稍加變動也可用于SQL Server以外的關系數據庫。已經將該模型應用于某單位的Web數據庫開發,取得了良好的效果。本文中給出的代碼在Windows 2000 Server+SQL Server 2000環境測試通過。

【編輯推薦】

  1. 教師節感謝師恩 選購禮物警惕三大安全陷阱
  2. 網絡安全知識之抵御黑客入侵的竅門
  3. 華為賽門鐵克構建UTM+統一安全解決方案
  4. 利用云安全技術分析病毒只需一秒
  5. 成功評估:PCI DSS標準和安全數據存儲
責任編輯:佚名 來源: 安全在線
相關推薦

2017-05-08 14:33:51

2019-02-22 09:00:00

2014-07-09 15:41:51

2013-07-27 20:19:14

2023-12-01 16:21:42

2017-05-05 11:31:34

2024-05-22 08:00:00

2010-09-14 16:00:16

2012-11-30 14:54:48

2012-02-14 09:43:08

2015-02-13 13:11:15

2014-11-04 13:43:10

2019-04-08 18:23:31

2015-11-09 15:58:03

2010-10-25 12:10:39

SQL注入

2020-10-09 08:00:00

漏洞

2024-06-28 08:00:00

端口掃描安全

2011-10-19 10:47:56

2009-10-14 10:16:45

2012-12-25 10:53:09

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 五月婷婷激情 | 在线成人免费av | 久久久亚洲综合 | 国产精品久久午夜夜伦鲁鲁 | 91n成人| 在线视频三区 | 亚洲精品久久久久中文字幕欢迎你 | 日本三级电影在线观看视频 | 日本天天色 | 成人在线观看免费视频 | 99精品一区二区三区 | 欧美日韩国产精品一区二区 | 久操国产 | 欧美国产视频 | 老牛影视av一区二区在线观看 | 一区二区三区四区国产 | 欧美日韩一卡二卡 | 亚洲区视频| 欧美成人激情 | 国产精品久久久久aaaa九色 | www.47久久青青 | 97精品超碰一区二区三区 | 国产精品福利视频 | 亚洲精品久久久久久下一站 | 日本色高清 | 欧美在线视频一区二区 | 亚洲精品日韩欧美 | 人妖一区| 视频在线观看亚洲 | 九九免费观看视频 | 国产福利91精品 | 99精品视频一区二区三区 | 精品日韩一区二区 | 亚洲精品v日韩精品 | 免费人成激情视频在线观看冫 | 午夜小电影 | av黄色在线播放 | 97av视频| 亚洲一区二区在线播放 | 久草综合在线视频 | 亚洲精品无 |