十大資料庫安全威脅

Post a comment

企業的資料庫體系結構會受到各種各樣的威脅。本文檔的目的是通過由 Imperva 提供的應用防禦中心界定的十大威脅的列表,來幫助各個組織處理最嚴峻的威脅。並且在預防篇及解決方案篇介紹了每種威脅的背景資訊、減輕風險的一般策略以及 Imperva 的 SecureSphere 資料庫安全閘道保護的概況。

十大資料庫安全威脅
1. 濫用過高許可權
2. 濫用合法許可權
3. 許可權提升
4. 資料庫平臺漏洞
5. SQL 注入
6. 審計記錄不足
7. 拒絕服務
8. 資料庫通信協定漏洞
9. 身份驗證不足
10. 備份資料暴露

通過解決這十大威脅,各個組織將可以滿足世界上監管最嚴格的行業的規範要求和減輕風險的要求。
威脅 1 - 濫用過高許可權

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

原因很簡單,資料庫管理員沒有時間為每個用戶定義並更新細化的訪問許可權控制機制,從而使給定的用戶擁有了過高的許可權。因此,所有用戶或多組用戶都被授予了遠遠超出其特定工作需要的通用默認訪問許可權。

威脅 2 - 濫用合法許可權

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

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

威脅 3 許可權提升

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

威脅 4 - 平臺漏洞

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

威脅 5 - SQL 注入

在 SQL 注入攻擊中,入侵者通常將未經授權的資料庫語句插入(或“注入”)到有漏洞的 SQL 資料通道中。通常情況下,攻擊所針對的資料通道包括存儲過程和 Web 應用程式輸入參數。然後,這些注入的語句被傳遞到資料庫中並在資料庫中執行。使用 SQL 注入,攻擊者可以不受限制地訪問整個資料庫。

威脅 6 - 審計記錄不足

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

• 合規性風險 - 如果組織的資料庫審計機制薄弱(或不存在),則會日益發現他們與政府的規章制度要求不一致。政府規章中要求組織具備明確的資料庫審計機制,金融服務部門的薩班斯-奧克斯利法案 (SOX) 和醫療部門的健康保險流通與責任法案 (HIPAA) 就是兩個例子。

• 威懾 – 就像進入銀行時會記錄每個人相貌的攝像機一樣,攻擊者明白資料庫審計跟蹤記錄可以為調查人員提供入侵者犯罪的分析線索,因此資料庫審計機制會對攻擊者產生威懾作用。

• 檢測和修復 – 審計機制代表著資料庫防禦的底線。如果攻擊者成功規避了其他防禦措施,則審計資料可以在事後識別存在的衝突。然後,可以使用審計資料將衝突與特定用戶相聯繫和/或修復系統。

通常情況下,資料庫軟體平臺集成了基礎的審計功能,但是它們也有很多弱點從而限制或妨礙了部署

• 缺乏用戶責任依據 – 當用戶通過 Web 應用程式(如 SAP、Oracle E-Business Suite 或 PeopleSoft)訪問資料庫時,自身審計機制並不能識別特定用戶身份。在這種情況下,所有用戶活動都與 Web 應用程式帳戶名相關。因此,即使自身審計日誌發現欺騙性的資料庫事務,也無法找到責任用戶。• 性能下降 - 資料庫自身審計機制周知的弱點就是耗費 CPU 和硬碟資源。啟用審計功能後產生的性能下降問題會迫使很多組織減少使用或完全不使用審計。• 責任分開 – 對資料庫服務器具有管理訪問許可權的用戶(無論是合法獲取的還是惡意獲取的 – 請參閱許可權提升)可以直接關閉審計以隱藏欺騙性的活動。理想的情況是,審計責任應該與資料庫管理員和資料庫伺服器平臺分離開來。• 有限的細化度 – 很多自身審計機制記錄的資訊不夠詳細,不足以支援攻擊檢測、分析和修復。例如,很多自身機制並不會記錄資料庫用戶端應用程式、源 IP 位址、查詢回應屬性和失敗的查詢(這是試探性攻擊的重要信號)。• 專有性 – 審計機制對於資料庫伺服器平臺來說是唯一的,Oracle 日誌不同於 MS-SQL,MS-SQL 日誌不同於 Sybase 等。對於具有混合資料庫環境的組織來說,根本無法在企業中實現統一的可擴展的審計流程。

威脅 7 - 拒絕服務

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

拒絕服務攻擊背後的動機是多種多樣的。拒絕服務攻擊經常與敲詐勒索聯繫在一起,遠端的攻擊者不斷地破壞伺服器直到受害者將資金存入國際銀行帳戶。另外,拒絕服務攻擊還可能由蠕蟲感染引起。無論是由什麼原因造成,拒絕服務攻擊對於很多組織來說都是嚴峻的威脅。

威脅 8 - 資料庫通信協定漏洞

在所有資料庫供應商的資料庫通信協定中,發現了越來越多的安全漏洞。在兩個最新的 IBM DB2 Fix Pack 中,七個安全修復程式中有四個是針對協定漏洞1。同樣地,最新的 Oracle 季度補丁程式所修復的 23 個資料庫漏洞中有 11 個與協議有關。針對這些漏洞的欺騙性活動包括未經授權的資料訪問、資料破壞以及拒絕服務。例如,SQL Slammer2 蠕蟲就是利用了 Microsoft SQL Server 協定中的漏洞實施拒絕服務攻擊。更糟糕的是,由於自身資料庫審計機制不審計協定操作,所以在自身審計記錄中不存在這些欺騙性活動的記錄。

威脅 9 - 身份驗證不足

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

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

• 社會工程 – 在這個方案中,攻擊者利用人天生容易相信別人的傾向來獲取他人的信任,從而獲得其登錄憑據。例如,攻擊者可能在電話中偽裝成一名 IT 經理,以“系統維護”為由要求提供登錄憑據。直接竊取憑據 – 攻擊者可能通過抄寫即時貼上的內容或複製密碼檔來竊取登錄憑據。

威脅 10 - 備份資料暴露

經常情況下,備份資料庫存儲介質對於攻擊者是毫無防護措施的。因此,在若干起著名的安全破壞活動中,都是資料庫備份磁帶和硬碟被盜。

本文節錄自Imperva Inc. Top Ten Database Threats

作者:Amichai Shulman 是 Imperva 的創始人之一兼首席技術長