保護資料庫安全從現在開始

2021-09-04 12:17:15 字數 2926 閱讀 7572

我們都知道現在資料是核心資產,而資料基本上是儲存在資料庫中的。因此,保護資料庫就成為了保護資料的重要環節。其實,在考慮購買第三方的專業資料庫保護產品之前,有很多任務作是可以現在就開始做的,尤其是對於那些資料管理員(dba)而言。學習一些基本的資料庫安全知識對他們很有幫助。這篇文章就講述了其中一些要點。

此外,如果想要更加系統的了解資料庫可能面臨的安全威脅,可以看看 impvera公司cto amichai shulman的這個文章——十大資料庫威脅。他還寫乙個ppt,更簡潔明瞭。當然,你可以不看產品介紹的部分,而只關注技術部分,應該還是很有幫助的。國內也有中文版的材料,好事者放上去的,不過我不確定鏈結是否會一直有效,僅供參考。我在這裡摘錄一些內容(網上摘抄,也不是我翻譯的,呵呵):

威脅 1 - 濫用過高許可權

當使用者(或應用程式)被授予超出了其工作職能所需的資料庫訪問許可權時,這些許可權可能會被惡意濫用。例如,乙個大學管理員在工作中只需要能夠更改學生的聯絡資訊,不過他可能會利用過高的資料庫更新許可權來更改分數。

威脅 2 - 濫用合法權

使用者還可能將合法的資料庫許可權用於未經授權的目的。假設乙個惡意的醫務人員擁有可以通過自定義 web 應用程式檢視單個患者病歷的許可權。通常情況下,該 web應用程式的結構限制使用者只能檢視單個患者的病史,即無法同時檢視多個患者的病歷並且不允許複製電子副本。但是,惡意的醫務人員可以通過使用其他客戶端(如ms-excel)連線到資料庫,來規避這些限制。通過使用 ms-excel 以及合法的登入憑據,該醫務人員就可以檢索和儲存所有患者的病歷。

這種私自複製患者病歷資料庫的副本的做法不可能符合任何醫療組織的患者資料保護策略。要考慮兩點風險。第一點是惡意的醫務人員會將患者病歷用於金錢交易。第二點可能更為常見,即員工由於疏忽將檢索到的大量資訊儲存在自己的客戶端計算機上,用於合法工作目的。一旦資料存在於終端計算機上,就可能成為特洛伊***程式以及膝上型電腦盜竊等的***目標。

威脅 3 - 許可權提公升

***者可以利用資料庫平台軟體的漏洞將普通使用者的許可權轉換為管理員許可權。漏洞可以在儲存過程、內建函式、協議實現甚至是 sql語句中找到。例如,乙個金融機構的軟體開發人員可以利用有漏洞的函式來獲得資料庫管理許可權。使用管理許可權,惡意的開發人員可以禁用審計機制、開設偽造的帳戶以及轉帳等。

威脅 4 - 平台漏洞

底層作業系統(windows 2000、unix 等)中的漏洞和安裝在資料庫伺服器上的其他服務中的漏洞可能導致未經授權的訪問、資料破壞或拒絕服務。例如,「衝擊波病毒」就是利用了windows 2000的漏洞為拒絕服務***創造條件。

威脅 5 - sql 注入

在 sql注入***中,***者通常將未經授權的資料庫語句插入(或「注入」)到有漏洞的sql資料通道中。通常情況下,***所針對的資料通道包括儲存過程和 web應用程式輸入引數。然後,這些注入的語句被傳遞到資料庫中並在資料庫中執行。使用sql注入,***者可以不受限制地訪問整個資料庫。 防止sql注入將以下三個技術結合使用可以有效地抵禦sql注入:***防禦系統(ips)、查詢級別訪問控制(請參閱「濫用過高許可權」)和事件相關。 ips可以識別有漏洞的儲存過程或sql注入字串。但是,單獨使用ips並不可靠, 因為sql注入字串很容易發生誤報。如果只依賴ips,安全管理人員會發現大量「可能的」sql注入警報,被搞得焦頭爛額。

威脅 6 - 審計記錄不足

自動記錄所有敏感的和/或異常的資料庫事務應該是所有資料庫部署基礎的一部分。如果資料庫審計策略不足,則組織將在很多級別上面臨嚴重風險。

威脅 7 - 拒絕服務

拒絕服務 (dos)是乙個寬泛的***類別,在此***中正常使用者對網路應用程式或資料的訪問被拒絕。可以通過多種技巧為拒絕服務 (dos)***創造條件,其中很多都與上文提到的漏洞有關。例如,可以利用資料庫平台漏洞來製造拒絕服務***,從而使伺服器崩潰。其他常見的拒絕服務***技巧包括資料破壞、網路泛洪和伺服器資源過載(記憶體、cpu 等)。資源過載在資料庫環境中尤為普遍。

威脅 8 - 資料庫通訊協議漏洞

在所有資料庫**商的資料庫通訊協議中,發現了越來越多的安全漏洞。在兩個最新的 ibmdb2 fix pack 中,七個安全修復程式中有四個是針對協議漏洞1。同樣地,最新的 oracle 季度補丁程式所修復的 23個資料庫漏洞中有 11 個與協議有關。針對這些漏洞的欺騙性活動包括未經授權的資料訪問、資料破壞以及拒絕服務。例如, sql slammer2蠕蟲就是利用了 microsoft sql server協議中的漏洞實施拒絕服務***。更糟糕的是,由於自身資料庫審計機制不審計協議操作,所以在自身審計記錄中不存在這些欺騙性活動的記錄。

威脅 9 - 身份驗證不足

薄弱的身份驗證方案可以使***者竊取或以其他方法獲得登入憑據,從而獲取合法的資料庫使用者的身份。***者可以採取很多策略來獲取憑據。

·暴力- ***者不斷地輸入使用者名稱/密碼組合,直到找到可以登入的一組。暴力過程可能是靠猜測,也可能是系統地列舉可能的使用者名稱/密碼組合。通常,***者會使用自動化程式來加快暴力過程的速度。

·社會工程– 在這個方案中,***者利用人天生容易相信別人的傾向來獲取他人的信任,從而獲得其登入憑據。例如,***者可能在**中偽裝成一名 it 經理,以「系統維護」為由要求提供登入憑據。

·直接竊取憑據– ***者可能通過抄寫即時貼上的內容或複製密碼檔案來竊取登入憑據。

威脅 10 - 備份資料暴露

經常情況下,備份資料庫儲存介質對於***者是毫無防護措施的。因此,在若干起著名的安全破壞活動中,都是資料庫備份磁帶和硬碟被盜。防止備份資料暴露所有資料庫備份都應加密。實際上,某些**商已經建議在未來的 dbms產品中不應支援建立未加密的備份。建議經常對聯機的生產資料庫資訊進行加密,但是由於效能問題和金鑰管理不善問題,這一加密方法通常是不現實的,並且一般被公認為是上文介紹的細化的許可權控制的不理想的替代方法。

至於對策,有的其實由dba通過一些配置和加固就可以diy,當然,有的還需要考慮引入第三方的產品,例如對於提權行為、濫用合法許可權行為、sql注入行為的判定。在以後,我還會更多地談及資料庫審計的話題。

資料庫安全保護

什麼是資料庫安全保護?防止資料意外丟失和不一致資料的產生,以及當資料庫遭受破壞後迅速恢復正常。dbms對資料庫的安全保護方功能是通過四方面實現的,即安全性控制 完整性控制 併發性控制和資料庫恢復。安全性控制 含義 盡可能地杜絕所有可能的資料庫非法訪問。例如 繞過dbms的授權機制,通過作業系統直接訪...

資料庫保護與安全

資料併發性和一致性 資料併發性是指多個使用者可以在同一時刻訪問相同的資料.資料一致性是指在保證併發性的同時,每個使用者都能看到一致的資料檢視,包括使用者能夠看到自己或其它使用者的事務對資料所做出的更改.可防止的三種讀現象 髒讀 某個事務讀取了被其它未提交事務修改過的資料.不可重複讀 在某個事務讀取一...

認識資料庫安全威脅 保護資料安全(1)

資料庫安全威脅 1 濫用過高許可權 當使用者 或應用程式 被授予超出了其工作職能所需的資料庫訪問許可權時,這些許可權可能會被惡意濫用。例如,乙個大學管理員在工作中只需要能夠更改學生的聯絡資訊,不過他可能會利用過高的資料庫更新許可權來更改分數。資料庫安全威脅 2 濫用合法權 使用者還可能將合法的資料庫...