企業需提防九大資料庫漏洞

jiamirj發表於2011-07-23

  中國有句古語:千里之堤,潰於蟻穴。對於一個企業來說,保護資料庫並不是很難的事情,但往往是針對最簡單漏洞攻擊卻能夠成功攻擊企業資料庫,那些堅持基本保護措施的企業通常能夠獲得最佳資料庫安全保護。安全專家研究表示,他們的團隊發現九大最常見資料庫漏洞,這些漏洞不斷地被利用來攻擊企業資料庫。

  這些漏洞存在的主要原因在於資料庫本身並沒有進行全面安全防護,並且伺服器配置還需要資料庫管理員根據企業要求重新進行配置。企業必須對資料庫進行評估來確定某些功能是否真的必要,以及禁用那些不需要的功能來減少攻擊面。此外,企業必須對預設設定或者較弱的登入憑證時刻保持警惕,必須部署完善的特權和身份驗證措施,最重要的是,企業需要定期修復補丁。

[@more@]

  在所發現的漏洞中,有將近一半的漏洞或直接或間接地與資料庫環境內不適當的補丁修復管理有關。這是很恐怖的概念:在前三個月補丁修復週期內,只有38%的管理員修復企業的Oracle資料庫,並且只有三分之一的管理員花費一年或者更長時間進行修復。

  1. 預設、空白和強度弱的使用者名稱或者密碼

  在一個企業中,跟蹤數百或者甚至數千個資料庫可能是很艱鉅的任務,但是刪除預設、空白以及強度弱的登入憑證將是完善資料庫安全非常重要的第一個步驟。攻擊者們總是將注意力放在這些預設帳戶上,必要的時候就能派上用場。

  2. SQL隱碼攻擊

  SQL隱碼攻擊是駭客對資料庫進行攻擊的常用手段之一。隨著B/S模式應用開發的發展,使用這種模式編寫應用程式的程式設計師也越來越多,但是由於程式設計師的水平及經驗也參差不齊,相當大一部分程式設計師在編寫程式碼的時候,沒有對使用者輸入資料的合法性進行判斷,使應用程式存在安全隱患。使用者可以提交一段資料庫查詢程式碼,根據程式返回的結果,獲得某些他想得知的資料,這就是所謂的SQL Injection,即SQL隱碼攻擊。

  如果企業資料庫平臺無法對輸入內容進行審查,攻擊者將能夠執行SQL隱碼攻擊,就像在web攻擊中所做的那樣,SQL隱碼攻擊最終將允許攻擊者提升許可權,並且獲取對更廣泛功能的訪問許可權。很多供應商釋出了修復程式來避免這些問題,但是如果DBMS仍然未打補丁,這些修復程式也幫不了企業管理者。

  3.廣泛的使用者和組特權

  企業必須確保沒有將特權給那些不必要的使用者。安全專家建議,只有將使用者設定為組或者角色的一部分,然後透過這些角色來管理許可權,這樣將比向使用者分配直接權利要更加易於管理。

  4.啟用不必要的資料庫功能

  每個資料庫安裝都會附帶各種型別各種大小的功能,並且大部分都不會被企業所使用。資料庫安全意味著減少攻擊面,企業需要審查這些資料庫功能,找出不必要或者不使用的功能,然後禁用或者解除安裝它們。這不僅能夠降低透過這些載體發動的零日攻擊的風險,而且能夠簡化補丁修復管理,因為這些不必要的功能也需要進行補丁修復。

  5.糟糕的配置管理

  同樣地,資料庫有很多不同的配置可供選擇,正確合適的配置將能夠幫助資料庫管理員提高資料庫效能和加強資料庫功能。企業需要找出不安全的配置(預設情況下為啟用狀態或者為了方便資料庫管理員或者應用程式開發人員而開啟的),然後重新進行配置。

  6.緩衝區溢位

  另一個攻擊者喜歡的漏洞就是緩衝區溢位漏洞,這個漏洞是這樣被利用的,即大量輸入比應用程式預期更多的字元,例如向請求SSN的輸入框增加100個字元。資料庫供應商都在積極努力地修復這個漏洞,以避免發生這樣的攻擊,這也是為什麼補丁修復如此重要的另一個原因。

  7. 特權升級

  同樣的,資料庫常常出現這樣的漏洞,允許攻擊者對鮮為人知或者低許可權帳號進行許可權升級,然後獲取管理員許可權。例如,攻擊者可能誤用sysdba下執行的一個函式。由於這些漏洞還沒有被發現,管理員需要即使更新和修復補丁來防止這種漏洞被利用。

  8.拒絕服務攻擊  

  拒絕服務攻擊即攻擊者想辦法讓目標機器停止提供服務,是駭客常用的攻擊手段之。其實對網路頻寬進行的消耗性攻擊只是拒絕服務攻擊的一小部分,只要能夠對目標造成麻煩,使某些服務被暫停甚至主機當機,都屬於拒絕服務攻擊。拒絕服務攻擊問題也一直得不到合理的解決,究其原因是因為這是由於網路協議本身的安全缺陷造成的,從而拒絕服務攻擊也成為了攻擊者的終極手法。攻擊者進行拒絕服務攻擊,實際上讓伺服器實現兩種效果:一是迫使伺服器的緩衝區滿,不接收新的請求;二是使用IP欺騙,迫使伺服器把合法使用者的連線復位,影響合法使用者的連線

  SQL Slammer是關於攻擊者如何利用DBMS漏洞來透過大量流量攻破資料庫伺服器的非常具有啟發意義的例子,而更具啟發性的是,當在2003年Slammer淪陷後,已經出現瞭解決這個漏洞的補丁修復程式,然而,即使在七年後的今天,SQL Slammer仍然在作惡多端,攻擊那些未修復的伺服器。

  9.未修復資料庫與未加密重要資料(靜態或者動態狀態)

  這一點可能與上述漏洞有些重複,但是這值得再次重複。很多資料庫管理員並沒有及時修復補丁,因為他們害怕補丁修復程式將會破壞他們的資料庫。但是現在,被攻擊的風險比安裝可能會破壞資料庫的補丁要高得多,而這在五年前可能並不是這樣,但是供應商現在已經更加嚴格的進行測試。

  企業永遠都不應該在資料庫表中以純文字格式儲存重要資料,並且所有到資料庫的連線都應該進行加密。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26058737/viewspace-1052925/,如需轉載,請註明出處,否則將追究法律責任。

相關文章