• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      淺談數(shù)據(jù)庫SQL注入攻擊防御與對策

      2013-10-13 09:49:12鐘志文
      長春教育學院學報 2013年9期
      關(guān)鍵詞:攻擊者漏洞應用程序

      鐘志文

      淺談數(shù)據(jù)庫SQL注入攻擊防御與對策

      鐘志文

      以SQL注入漏洞為研究對象,在總結(jié)SQL注入攻擊的涵義的基礎(chǔ)上,提出建立SQL注入防御體系的基本原則和建議,有助于在SQL數(shù)據(jù)庫和相關(guān)安全技術(shù)方面起到積極的作用。

      數(shù)據(jù)庫;SQL;SQL注入

      隨著WWW快速發(fā)展,Web技術(shù)日益成熟,在電子商務等眾多領(lǐng)域得到了廣泛應用,給人們帶來了極大的便利,但是隨之而來的是Web應用安全問題也日益突出。目前,Web應用程序安全隱患主要為非授權(quán)訪問、信息泄露以及拒絕服務攻擊等。攻擊者利用這些Web安全漏洞攻擊Web站點,使網(wǎng)站形象受損,給Web應用管理者和用戶造成了極大的麻煩以及巨大的經(jīng)濟損失,因此大家更加注重Web應用程序的安全。OWASP(The Open Web Application Security Project)的統(tǒng)計表明,2010年SQL注入攻擊位于全球十大Web攻擊之首[1]。本文主要以SQL注入漏洞為研究對象,探討SQL注入攻擊防御模型的設計與實現(xiàn),對Web安全理論、Web安全測試理論和安全Web應用體系有積極的促進作用,也對如何設計安全的Web應用程序以及相關(guān)的安全技術(shù)的發(fā)展具有一定程度的指導作用。

      一、SQL注入攻擊概述

      (一)SQL注入攻擊的涵義

      SQL語言是一種解釋型語言,基于解釋型語言的執(zhí)行方式,攻擊者可以提交惡意輸入,即構(gòu)造的輸入中包含對解釋型語言語法具有特定意義的句法,這樣攻擊者構(gòu)造的輸入的一部分被解釋作為程序指令執(zhí)行,因而打破了Web應用程序原來的程序執(zhí)行邏輯,形成了SQL注入攻擊漏洞。因此一旦Web應用程序處理SQL語句的方式不正確,就會不經(jīng)意間形成SQL注入漏洞。一旦Web應用存在的SQL注入攻擊漏洞被攻擊者發(fā)現(xiàn)并且通過構(gòu)造惡意輸入成功利用,攻擊者就可以利用其獲得的僅有權(quán)限,不管是通過橫向權(quán)限拓展還是縱向權(quán)限拓展提升其權(quán)限,此時對數(shù)據(jù)庫的危害將是不可估量的。

      (二)SQL注入攻擊類型

      SQL注入攻擊類型按照其分類方式不同,分類結(jié)果也不一樣。按照階數(shù)可分為一階SQL注入攻擊和二階SQL注入攻擊。其中二階SQL攻擊是指攻擊者利用具有特殊意義的字符精心構(gòu)造惡意的輸入,這些輸入在Web服務器上處理時是不會產(chǎn)生任何問題的,并且對Web應用程序是安全的,此時并不會形成SQL注入攻擊漏洞。而當這些信息被存入數(shù)據(jù)庫,并再次對數(shù)據(jù)庫進行請求時,數(shù)據(jù)庫返回之前存入的信息,當返回的特殊構(gòu)造的語句成功執(zhí)行后造成的SQL注入攻擊就是上面所說的二階SQL注入攻擊;而一階SQL注入攻擊是指通過構(gòu)造的惡意輸入對Web應用程序直接造成的注入攻擊漏洞,其與二階注入攻擊最大的不同點就是此時輸入的信息不先借助數(shù)據(jù)庫的存儲而后再返回形成注入攻擊漏洞,而是直接對Web進行攻擊。

      按照攻擊類型[1]可分為數(shù)字型SQL注入攻擊、字符型SQL注入攻擊、搜索型SQL注入攻擊。所謂數(shù)字型SQL注入攻擊是指攻擊者攻擊的字段類型是數(shù)字型的,因此相對應的字符型SQL注入攻擊指攻擊者攻擊的字段類型是字符型的,而搜索型SQL注入攻擊是指攻擊者攻擊的字段類型是通過SQL匹配機制來實現(xiàn)的。

      二、SQL注入攻擊安全防御體系

      (一)基本原則

      SQL注入攻擊漏洞對Web應用程序危害巨大,因此采取相應措施防御SQL注入攻擊對于Web應用程序安全來說非常重要。這里可以采用的方式如下:第一,特殊字符過濾機制,就是在客戶端以及服務器端對用戶輸入的信息進行過濾,將一些對于Web應用程序具有特殊意義的字符過濾掉,防止其破壞Web應用程序的邏輯處理流程結(jié)構(gòu),以避免對Web應用程序造成較大危害;第二,在查詢過程中使用參數(shù)化查詢方式,即Web應用程序事先為相關(guān)查詢定義好查詢結(jié)構(gòu),在查詢結(jié)構(gòu)中將需要用戶輸入的部分先用一些變量進行填充,并且Web應用程序運用長度和類型限制對該變量進行了界定,這樣就無法破壞SQL語句結(jié)構(gòu),起到防御SQL注入攻擊的作用[2];第三,可以采用存儲過程方式,即在數(shù)據(jù)庫中事先建立好Web應用程序需要的SQL語句存儲過程,利用安全設計的存儲過程來避免SQL注入攻擊漏洞,因為設計不規(guī)范的存儲過程也是存在SQL注入攻擊的,安全的存儲過程設計將在下面進行介紹。

      圖1 SQL注入攻擊防御體系

      SQL注入攻擊安全防御體系是基于三層Web應用模型構(gòu)造的注入攻擊防御安全體系,針對傳統(tǒng)三層在Web服務器層和數(shù)據(jù)庫層之間加入一層Web服務來提供強大的SQL注入攻擊防御能力。同時針對傳統(tǒng)三層,在每一層上面提供相對應的防御措施,來構(gòu)造一個多層次動態(tài)的安全防御體系,以保證Web應用程序安全。

      (二)防御體系“三個方面”

      1.數(shù)據(jù)安全傳輸。數(shù)據(jù)安全傳輸是保證信息在傳輸過程中的保密性和完整性。其中保密性是通過加密技術(shù)對傳輸?shù)男畔⑦M行加密,這里主要采用對稱加密算法,主要是出于效率上的考慮,因為當需要加密的信息比較多的時候,對稱加密算法相對于非對稱加密算法來說速度更快。通過采用加密技術(shù),就可以保證信息在傳輸過程中對攻擊者是不可見的,像Web代理工具或者竊聽工具等都將失去作用,因而可以防止信息泄露,保證信息的安全傳輸。

      完整性主要是采用信息摘要算法對傳輸?shù)男畔⑦M行摘要處理,然后將摘要信息通過加密安全傳輸,這里可以采用非對稱加密算法,因為信息摘要信息量比較少,當另一方收到傳輸?shù)男畔r,通過相同的摘要算法對信息進行同樣的操作,然后通過對比兩個摘要來判定信息在傳輸過程中是否遭到篡改,如果通過對比兩個摘要完全相同,那么就可以斷定收到的信息是完整的。當然這是以犧牲成本和效率為代價的,對于安全性要求比較高的Web應用程序,這些都是處于可接受的范圍內(nèi),畢竟對于這樣的Web應用程序,安全性才是第一位的,然而,對于安全性要求不是特別高的Web應用程序,數(shù)據(jù)安全傳輸是可選的。通過數(shù)據(jù)的安全傳輸,可以保證用戶信息的安全性,防止用戶信息被竊取以及被惡意修改等。

      2.授權(quán)認證。授權(quán)認證主要用來保證用戶實體的真實性。它包括兩個方面,即在數(shù)據(jù)的安全傳輸過程中用來認證用戶實體的真實性以及在數(shù)據(jù)庫認證過程中保證數(shù)據(jù)用戶的真實性,這里主要采用訪問控制方式。訪問控制分兩步,第一步通過授權(quán),采用最小權(quán)限原則,將能夠滿足需求的最低權(quán)限分配給合法的使用者;第二步當用戶使用Web應用程序時,通過審核來檢查用戶是否是合法的使用者,以及使用者是否具有訪問該資源的權(quán)限,通過授權(quán)認證可以防止非法使用者使用以及獲取相關(guān)信息。比如用戶需要訪問一個Web管理頁面,首先,需要檢查用戶是否有權(quán)限登錄Web后臺管理系統(tǒng),即用戶是否得到授權(quán)訪問后臺管理系統(tǒng);其次,如果用戶得到了相應的授權(quán),接著就需要檢查用戶是否得到授權(quán)訪問該Web管理頁面,如果用戶沒有權(quán)限訪問該Web頁面,即使用戶可以登錄后臺管理系統(tǒng)也不能訪問該頁面,其實質(zhì)是一個動態(tài)多層次的訪問控制措施。

      3.資源保護。Web應用程序在運行過程中需要不斷訪問各種資源,包括文件資源訪問和數(shù)據(jù)庫資源訪問。其中文件資源主要指Web頁面,比如上文提到的后臺管理頁面不能被未授權(quán)使用;數(shù)據(jù)庫資源主要指數(shù)據(jù)庫中保存的信息,比如Web應用程序的用戶密碼信息或者其他相關(guān)機密信息。像這樣的信息是否得到合理的保護關(guān)系到Web應用程序是否能夠正常運行,這些信息對應用程序來說是至關(guān)重要的,必須得到合理的保護。

      三、結(jié)語

      隨著WWW快速發(fā)展,Web技術(shù)的日益成熟,Web技術(shù)在電子商務等眾多領(lǐng)域得到了廣泛應用,給人們帶來了極大的便利。但是隨之而來Web應用安全問題也日益突出,數(shù)據(jù)庫的安全成為人們普遍關(guān)注的對象。本文基于SQL注入攻擊原理,對Web安全理論、Web安全滲透測試理論和安全Web應用體系具有積極的促進作用和指導意義,也對如何設計實現(xiàn)安全的Web應用程序防御SQL注入攻擊,以及Web安全技術(shù)的發(fā)展具有一定的現(xiàn)實意義和借鑒作用。

      [1]幻泉.注入中的數(shù)字型、字符型、搜索型的區(qū)別.http://www.2cto.com/Article/201012/80898.html

      [2]Dafydd Stuttard,Marcus Pinto著,石華耀等譯.黑客攻防技術(shù)寶典:Web 實戰(zhàn)篇.北京:人民郵電出版社,2009,8

      [3]Padmanabhuni S.,Singh V.,Senthil kumar K.M.,Chatterjee A.Preventing Service Oriented Denial of Service (PreSODoS):A Proposed Approach.Web Services (ICWS),IEEE International Conference on;Chicago,IL,2006

      [4]Hamisi N.Y.,Mvungi N.H,Mfinanga D.A,Mwinyiwiwa B.M.M,Intrussion detection by penetration test in an organization network.Adaptive Science and Technology,2nd International Conference on,2009

      責任編輯:郭一鶴

      TP309

      B

      1671-6531(2013)09-0041-02

      鐘志文/廣東省海洋工程職業(yè)技術(shù)學校計算機講師,應用電子技術(shù)工程師(廣東廣州 510320)。

      猜你喜歡
      攻擊者漏洞應用程序
      漏洞
      基于微分博弈的追逃問題最優(yōu)策略設計
      自動化學報(2021年8期)2021-09-28 07:20:18
      刪除Win10中自帶的應用程序
      電腦報(2019年12期)2019-09-10 05:08:20
      正面迎接批判
      愛你(2018年16期)2018-06-21 03:28:44
      三明:“兩票制”堵住加價漏洞
      漏洞在哪兒
      兒童時代(2016年6期)2016-09-14 04:54:43
      高鐵急救應補齊三漏洞
      有限次重復博弈下的網(wǎng)絡攻擊行為研究
      關(guān)閉應用程序更新提醒
      電腦迷(2012年15期)2012-04-29 17:09:47
      三星電子將開設應用程序下載商店
      上高县| 西安市| 井陉县| 定襄县| 正定县| 昌宁县| 清河县| 杭锦旗| 望城县| 大城县| 桦川县| 合江县| 呼图壁县| 古蔺县| 张家口市| 奉新县| 苗栗市| 武川县| 闽清县| 宜阳县| 霍林郭勒市| 呼图壁县| 德庆县| 余姚市| 阳春市| 武邑县| 措勤县| 华容县| 商河县| 土默特左旗| 池州市| 巴林左旗| 无极县| 全南县| 英超| 张家港市| 筠连县| 庆城县| 河间市| 通州市| 云霄县|