淺談SQL注入防范

淺談SQL注入防范

ID:43993318

大?。?2.00 KB

頁(yè)數(shù):3頁(yè)

時(shí)間:2019-10-17

淺談SQL注入防范_第1頁(yè)
淺談SQL注入防范_第2頁(yè)
淺談SQL注入防范_第3頁(yè)
資源描述:

《淺談SQL注入防范》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫(kù)。

1、淺談SQL注入防范Web安全紛繁復(fù)雜,危害最嚴(yán)重的當(dāng)屬SQL注入(SQLInjection),是一種數(shù)據(jù)庫(kù)攻擊手段,也是Web應(yīng)用程序漏洞存在的一種表現(xiàn)形式。并且SQL注入攻擊技術(shù)也層出不窮,尤其是網(wǎng)絡(luò)針對(duì)SQL注入漏洞的各種工具也推陳岀新,不斷的向安全人員提出挑戰(zhàn),如何降低SQL注入的風(fēng)險(xiǎn),從根木上實(shí)施SQL注入防御,成了安全人員面臨的首要問(wèn)題。1.SQL注入的原理所謂SQL注入攻擊就是通過(guò)構(gòu)建特殊的輸入,這些輸入往往是SQL語(yǔ)法中的一些組合,這些輸入將作為參數(shù)傳入Wbb應(yīng)用程序,通過(guò)執(zhí)行SQL語(yǔ)句而執(zhí)行攻擊者想要的操作,它的產(chǎn)生主要是由于程序?qū)τ?/p>

2、戶輸入的數(shù)據(jù)沒(méi)有進(jìn)行細(xì)致的過(guò)濾,導(dǎo)致非法數(shù)據(jù)的導(dǎo)入杳詢。2.產(chǎn)主SQL注入原因從技術(shù)上講,SQL注入主要有代碼層注入和平臺(tái)層注入,代碼層是因?yàn)閼?yīng)用的程序員對(duì)輸入的過(guò)濾不嚴(yán)格,執(zhí)行了非法的數(shù)據(jù)查詢;平臺(tái)層的注入則因?yàn)閿?shù)據(jù)庫(kù)平臺(tái)的漏洞或數(shù)據(jù)庫(kù)配置不安全等原因造成的。因此SQL注入的產(chǎn)生一般體現(xiàn)在:轉(zhuǎn)義字符處理不當(dāng)、類型處理不當(dāng)、杳詢集處理不當(dāng)、錯(cuò)課處理不當(dāng)、多個(gè)提交處理不當(dāng)和數(shù)據(jù)庫(kù)配置不安全這兒個(gè)方面。3.SQL注入攻擊的總體思路:3.1發(fā)現(xiàn)SQL注入的位置3.2判斷后臺(tái)數(shù)據(jù)庫(kù)類型3.3發(fā)現(xiàn)Web虛擬目錄3.4確定XP_CMDSHELL的可執(zhí)行情況3.5

3、上傳ASP木馬程序3.6獲取管理員權(quán)限4.SQL注入防范SQL注入攻擊是最常見(jiàn)的攻擊方式之一,所有Web框架都需要擔(dān)心這種攻擊,為了防范注入攻擊,需耍遵循兒條非常基本的規(guī)則。4.1在構(gòu)造動(dòng)態(tài)SQL語(yǔ)句時(shí),一定要使用類安全(type-safe)的參數(shù)加碼機(jī)制。人多數(shù)的數(shù)據(jù)API(包括ADO和ADO.NET)都有這樣的支持,允許指定所提供的參數(shù)的確切類型(字符串、整數(shù)、口期等),可以保證這些參數(shù)被恰當(dāng)?shù)丶哟a(escapod/encoded),避免黑客利用。3.2再部署應(yīng)用Z前,始終要做安全評(píng)審(SecurityReview)o建立一個(gè)正式的安全過(guò)程,在每

4、次做更新時(shí),對(duì)所冇的編碼做評(píng)審。3.3使用運(yùn)行時(shí)保護(hù)此技術(shù)主要用于檢測(cè)、減輕或防止那些不需要重編譯易受攻擊的應(yīng)用的源代碼即可部署的SQL注入。主耍是Web服務(wù)器和部署框架的軟件或是針對(duì)Web或應(yīng)用平臺(tái)的用于修改和擴(kuò)展特性的技術(shù)。當(dāng)無(wú)法修改代碼時(shí),這是一種冇效的技術(shù)。常用防范方式是通過(guò)部署Web應(yīng)用防火墻、入侵檢測(cè)系統(tǒng)、數(shù)據(jù)庫(kù)防火墻等進(jìn)行保護(hù)。1.4確保數(shù)據(jù)庫(kù)安全使用一些額外的方式強(qiáng)化數(shù)據(jù)庫(kù)安全。首先鎖定應(yīng)用數(shù)據(jù),采用最小權(quán)限登陸數(shù)據(jù)庫(kù),撤銷不必耍的公共許可,使用強(qiáng)大的加密技術(shù)來(lái)保護(hù)頌感數(shù)據(jù)并維護(hù)審查跟蹤。其次鎖定數(shù)據(jù)庫(kù),對(duì)額外的系統(tǒng)對(duì)象鎖定,約束即席

5、查詢,加強(qiáng)對(duì)驗(yàn)證周邊嚴(yán)格控制,最低權(quán)限操作系統(tǒng)賬戶并確保數(shù)據(jù)庫(kù)打了最新補(bǔ)丁。4.5嚴(yán)禁在數(shù)據(jù)庫(kù)里用明文存放敏感性數(shù)據(jù)。密碼應(yīng)該總是在單向hashed過(guò)后再存放,在默認(rèn)設(shè)置下,ASP.NET2.0MembershipAPI口動(dòng)進(jìn)行,還同時(shí)實(shí)現(xiàn)了安全的SALT隨機(jī)化行為。如果決定建立口己的成員數(shù)據(jù)庫(kù),要確定對(duì)數(shù)據(jù)庫(kù)里的信用卡和其他私冇數(shù)據(jù)進(jìn)行了加密。這樣即使數(shù)據(jù)庫(kù)被人入侵了,起碼客戶的私有數(shù)據(jù)不會(huì)被人利用。4.6編碼白動(dòng)化的單元測(cè)試校驗(yàn)數(shù)據(jù)訪問(wèn)層和應(yīng)用程序不收SQL注入攻擊。這樣做有助于提供額外的安全層以及避免偶然地引進(jìn)壞的安全缺陷到應(yīng)用中去。4.7給訪

6、問(wèn)數(shù)據(jù)庫(kù)的Web應(yīng)用功能最低的權(quán)限。如果Web應(yīng)用不需要訪問(wèn)某些表,那么確認(rèn)它沒(méi)冇訪問(wèn)這些表的權(quán)限。如果Web應(yīng)川只需要只讀的權(quán)限,那么確認(rèn)禁止它的insert、update、delete等不需要的權(quán)限。4.8注入分析器的防范。很多新手從網(wǎng)上下載SQL通用防注入系統(tǒng)的程序,在需要防范的頁(yè)而頭部用來(lái)防止別人進(jìn)行手動(dòng)注入測(cè)試,可是如果通過(guò)SQL注入分析器就町以輕松跳過(guò)防注入系統(tǒng)并口動(dòng)分析其注入點(diǎn),然后只需要幾分鐘,管理員賬戶及密碼就會(huì)被分析出來(lái)。SQL注入分析器并不是沖著admin管理員賬號(hào)去的,而是沖著權(quán)限(如flag=l)去的。這樣一來(lái),無(wú)論管理員賬

7、號(hào)怎么變都無(wú)法逃過(guò)檢測(cè)。既然無(wú)法逃過(guò)檢測(cè),就設(shè)置兩個(gè)賬號(hào),一個(gè)是普通的管理員賬號(hào),-?個(gè)是防止注入的賬號(hào)。找一個(gè)權(quán)限最大的賬號(hào)制造假象,吸引軟件的檢測(cè),而這個(gè)賬號(hào)里的內(nèi)容是大于千字以上的中文字符,這樣就會(huì)迫使軟件對(duì)這個(gè)賬號(hào)進(jìn)行分析的時(shí)候進(jìn)入負(fù)荷狀態(tài)甚至因資源耗盡而死機(jī)。常川的修改數(shù)據(jù)庫(kù)防范注入方法:(1)對(duì)表結(jié)構(gòu)進(jìn)行修改。對(duì)管理員賬號(hào)字段的數(shù)據(jù)類型進(jìn)行修改,文本型改成最人字段的255,密碼字段也進(jìn)行相同設(shè)置。(2)對(duì)表進(jìn)行修改。設(shè)置管理員權(quán)限的賬號(hào)放在ID1,并輸入大量中文字符。(3)把真正的管理員密碼放在TD2后的任何一個(gè)位置(如放在TD549上)

8、。4.9額外的部署額外的部署主要包括最小化不必要的信息泄露、配置網(wǎng)絡(luò)訪問(wèn)控制、獨(dú)立部署Web應(yīng)用服務(wù)器和數(shù)據(jù)

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無(wú)此問(wèn)題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫(kù)負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無(wú)法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。