廣告廣告
  加入我的最愛 設為首頁 風格修改
首頁 首尾
 手機版   訂閱   地圖  簡體 
您是第 2560 個閱讀者
 
發表文章 發表投票 回覆文章
  可列印版   加為IE收藏   收藏主題   上一主題 | 下一主題   
jenhaoliu 手機
個人頭像
個人文章 個人相簿 個人日記 個人地圖
知名人士
級別: 知名人士 該用戶目前不上站
推文 x3 鮮花 x272
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片
推文 x0
[漏洞修補] SQL Injection之解決建議措施及相關資訊彙整
漏洞名稱: SQL Injection之解決建議措施及相關資訊彙整
漏洞說明: SQL Injection是一種未做好輸入查驗(Input Validation)的問題,即在撰寫應用程式時,沒有對使用者的輸入做妥善的過濾與處理,便將其組合成SQL指令,傳送給SQL server執行。因而若使用者輸入之資料中含有某些對資料庫系統有特殊意義的符號或命令時,便可能讓使用者有機會對資料庫系統下達指令,而造成入侵所帶來的損失。事實上,這樣的疏漏並不是資料庫系統的錯誤,而是程式設計師或軟體開發者的疏忽所產生的。
影響平台: 使用網站系統:Apache、IIS、Domino、Netscape

使用 程式碼: ASP、PHP、JSP

攻擊破壞SQL資料庫 :包括 MS-SQL、MySQL、Oracle、Sybase、DB2 等等

影響狀況: . SQL Injection可能造成的危害:
透過SQL Injection操作資料庫,可以新增、更動或刪除資料庫的資料,造成資料遺漏或是不正確;如果操作資料庫的使用者權限為系統管理者,那麼還有可能造成其他更嚴重的破壞,例如奪取資料庫的控制權。

.SQL Injection的影響範圍:
只要有使用或連結資料庫的軟體、網路服務都有可能面臨SQL Injection的威脅。乍聽之下影響範圍似乎很大,但是大多數的商用軟體並不會有這樣的問題;比較嚴重的可能是網路服務部分,由於網站程式開發者的素質良莠不齊,或是對於資料庫的指令操作與系統管理不熟悉,所以只要有提供表單(Form)輸入介面的網站,都有可能面臨威脅。


解決方案: .解決之道與預防方法:

1. 對於字串的輸入加以過濾,並限制長度。例如 ' 或 " 這種單、雙引號都應該過濾掉,這樣可以避免輸入者利用 ' 或 " 這種單、雙引號截斷原本的SQL指令再插入自己的指令。過濾的方法依開發語言的不同而有不同的方法,以VB Script/ASP為例,過濾單引號的簡單方法為: SafeString = Replace(InputString, “'”, “''”)
2. 若輸入為數值資料則須確定其只輸入0~9之數字,若包含其他英文字母或符號則一律拒絕接受。

3. 對於前兩項的檢查必須寫在server端的程式上,如PHP、ASP及其他各種CGI程式,而不能將其寫於Java script或VB script等會於client端執行的程式上,因惡意使用者可將client端程式另存於本地端硬碟後,再將其修改以略過檢查。並且不要在server上留有.bak或.old檔,若有.inc檔也不要取與主.asp相同或容易猜測之檔名,因為一般網頁伺服器會允許這些檔案的下載。

4. 加強資料庫帳號與權限管理,讓網站或軟體不以系統管理者的帳號連結資料庫,而對每個資料庫設定一組個別的帳號與強健的密碼,限制這組帳號僅能對該資料庫有讀寫權限。當面臨SQL Injection的侵入時,分權管理能夠限制損害的範圍,減少因為疏忽造成的損失。

5. 做好正確錯誤處理,最理想狀態是所有使用者輸入皆在程式設計者預期之中;若萬一出現非預期的情形也要做好例外處理,勿讓使用者直接看到系統傳回的錯誤訊息,以免惡意使用者由系統錯誤訊息中獲取過多資訊。

6. 全面檢視軟體的程式碼。這在一般商用軟體或應用軟體不太可能做到,但是可以詢問軟體廠商這類問題,以確保他們有進行檢查;網站程式的部分,可以請開發的程式設計師做一次全面性的檢查。

7. 各資料庫系統安裝時通常會有一些預先定義的Table,若確定這些Table並不需要使用到,最好予以刪除,以免惡意使用者利用這些Table獲取過多資訊。

8. 做好軟體開發控管。針對每個資料欄位的Input,確實做好檢查的工作,以降低開發出面臨威脅的程式或軟體。

參考資料: . 相關網址:
1. SQL Injection FAQ:
http://www.sqlsecurit...-inj.asp

2. Input Validation & SQL Injection:
http://www.owasp.org/asac/in...on/sql.shtml

3. SQL Injection WhitePaper:
http://www.spidynamics.com/whitepap...QLInjection.pdf

4. GSN-CERT/CC的安全通報:
http://www.gsn-cert.nat.gov.tw/news_content.phtml?news_id=231

5.Understanding and Preventing SQL Injection Attacks
http://www.siksoft.co.za/dat...onattack.htm

6 『資料隱碼』SQL Injection的源由與防範之道

. http://www.microsoft.com/taiw...njection.htm
7. SQL Injection (資料隱碼)– 駭客的 SQL填空遊戲(上)

http://www.microsoft.com/taiwa...ection_G1.htm

8. SQL Injection (資料隱碼)– 駭客的 SQL填空遊戲(下)

http://www.microsoft.com/taiwa...ection_G2.htm

.相關新聞

1.Warning! 駭客「資料隱碼」攻擊 8成網站難防 災情難估 (91.04.23) 【ETToday】

2.隱碼駭客/被駭網站有多少? 警方:「0」(91.04.23) 【ETToday】

3.隱碼駭客/網路報稅 財部:傳輸及資料庫都經嚴格加密(91.04.23) 【ETToday】

4.隱碼駭客/各銀行防駭客 電腦系統18般武藝備戰 (91.04.23) 【ETToday】

5.隱碼駭客/SQL Injection 電腦專家:有法可防(91.04.23) 【ETToday】

6.隱碼駭客/資料庫怕改不怕刪 網路銀行尤其「駭」怕 (91.04.23) 【ETToday】

7.隱碼駭客/侵入中文資料庫得會用中文 警方監控兩岸駭客 (91.04.23) 【ETToday】

8.隱碼駭客/殲滅隱碼駭客 警方公布絕招 (91.04.23) 【ETToday】

9.隱碼駭客/被駭網站啞巴吃黃連 嘆倒楣 不敢嚷嚷 (91.04.23) 【ETToday】

10.網路報稅 安全性亮紅燈?(91.04.23) 【UDNnews】

11.國內逾八成網站 安全堪虞(91.04.23) 【UDNnews】

12.防駭有撇步 (91.04.23) 【UDNnews】





What sunshine is to flowers, smiles are to humanity.
微笑之於人類,猶如陽光之於花卉。
獻花 x0 回到頂端 [樓 主] From:台灣教育部 | Posted:2005-04-26 16:43 |

首頁  發表文章 發表投票 回覆文章
Powered by PHPWind v1.3.6
Copyright © 2003-04 PHPWind
Processed in 0.054115 second(s),query:15 Gzip disabled
本站由 瀛睿律師事務所 擔任常年法律顧問 | 免責聲明 | 本網站已依台灣網站內容分級規定處理 | 連絡我們 | 訪客留言