數據如今已經成為企業最重要的資產之一。企業通常將數據存儲在數據庫中,因此了解如何保護這些數據至關重要。
本文將介紹從1到10的等級范圍內量化數據庫的安全級別。首席信息安全官和數據庫管理員(DBA)可以使用它來確定他們的安全成熟度等級,并確定進一步改進的步驟。
查找數據庫安全等級
1到10級的安全等級,1級是最低安全等級,10級是最高安全等級。所有安全等級的內容都是累積的,因此每個等級都包含先前評等級的所有要求。
安全等級的順序反映了安全性的增加以及成本和復雜性的增加。雖然無需額外軟件即可實現較低等級,但實現更高的安全等級變得越來越困難,并且需要合適的產品。
1.沒有額外的安全措施
等級1適用于不安全的數據庫。這些數據庫都提供了固有的安全級別,沒有額外的安全措施。例如,他們需要憑據才能連接并擁有角色和特權。管理數據庫中的數據是確保數據安全的第一步。
2.標準安全和最低權限
等級2適用于數據庫和操作系統均按照行業標準和最佳實踐進行配置的數據庫。
這個等級還要求所有數據庫帳戶的權限最低,這意味著授予帳戶的權限是履行其職責所需的最低權限。
作為等級2要求的一部分,應該努力消除共享帳戶。如果存在共享帳戶,則不應經常使用它們,并且它們的憑據應保密。
對于內置于數據庫中的特權共享帳戶,限制使用尤其如此。Oracle公司中的SYS和SYSTEM或SQL-Server中的SA等數據庫帳戶不應經常使用,它們的密碼應安全保存并限制訪問。
例如,當應用程序使用特權帳戶或共享帳戶是企業運營方式的一部分時,這一要求可能具有挑戰性。減少和控制這些帳戶的使用對于安全至關重要。
3.變更控制和元數據快照
等級3適用于受變更控制的數據庫。這意味著對元數據(例如用戶、權限、配置和對象)的任何更改都應經過更改控制批準流程。
作為等級3要求的一部分,需要制作配置、用戶、權限和對象元數據的每日快照。應及時調查和批準快照之間的更改。
此外建議將這些快照與類似數據庫進行交叉比較,以確保一致且統一的配置、用戶、權限等。
變更控制的挑戰在于它可能很麻煩并且被視為無用的繁文縟節。然而,缺乏對元數據更改的控制很快就會變成對數據的缺乏控制。
4.會話監控和審查
等級4適用于所有登錄都受到監控和定期審查的數據庫。企業應該及時調查來自意外用戶、程序或機器的登錄。
破壞數據庫安全的最簡單方法之一是竊取憑證。例如,竊取數據庫管理員(DBA)用戶名和密碼將授予攻擊者對數據的無限制訪問權限。監控登錄可以降低這種風險。
大多數數據庫允許以最小的開銷審計登錄和失敗的登錄。實施挑戰是通過報告提供對信息的有效審查。
5.基本的SQL審計(DDL&DML)
等級5適用于定期記錄、報告和審查高風險SQL活動的數據庫。
高風險SQL活動包括:
•所有DDL(包括DCL)——修改數據庫配置、對象、用戶、權限等的SQL。
•來自意外來源的DML,例如特權用戶和特定程序。
該要求的目的是對不頻繁和高風險的活動實施控制。審核罕見的活動通常不會產生性能開銷,并且需要最少的時間投入。實施方面的挑戰是允許對活動進行及時有效的審查。
6.完整的SQL審計和網絡加密
等級6適用于接受全面SQL審計的數據庫,其中所有具有潛在風險的SQL活動都會定期記錄、報告和審查。
這將轉化為審計大量活動,包括查詢。例如:
•使用查詢和DML訪問敏感表。
•所有的數據庫管理員(DBA)和特權用戶活動。
•來自高風險程序(例如SQL Plus、Management Studio等)的所有活動。
•不是來自應用程序服務器的應用程序帳戶的活動。
•即使在數據庫內部由存儲過程或觸發器執行的敏感活動。
等級6還要求所有數據庫網絡活動完全加密,以防止網絡嗅探和欺騙。這一要求的目的是開始對SQL活動應用嚴格的安全措施,并防止許多網絡攻擊。
在大多數數據庫中,網絡活動的加密措施是免費內置的,并且很容易開啟。這一要求中的主要實施挑戰是在沒有適當解決方案的情況下審計過多活動,這可能會對數據庫性能產生重大影響。第二個挑戰是實現高效的報告,以最少的時間投入及時審查信息。
在搜索審計解決方案時,需要注意某些產品沒有避免數據庫性能開銷,而其他產品不支持網絡加密。
7.會話異常檢測和告警
等級7適用于對異常活動源進行自動檢測和警報的數據庫。與等級4中執行的人工會話審查不同,這一等級需要能夠檢測活動源配置文件變化并發出警報的自動化。
其中包括:
•對連接到數據庫的新用戶、程序、機器或它們的組合發出警報。
•檢測共享帳戶(多個個人使用的帳戶)以及使用多個帳戶的個人。
這個要求的目的是通過自動化來補充人工審查,以注意到并突出異常活動。這有助于避免意外疏忽,并確保快速檢測和響應。實施需要適當的解決方案來執行分析。
8.SQL異常檢測與告警
等級8適用于對異常SQL活動進行自動檢測和警報的數據庫。與等級5和等級6中的人工SQL審查不同,等級8需要能夠分析數據庫中所有SQL活動(包括應用程序活動)的自動化。
其中包括:
•異常的應用程序行為,例如潛在的SQL注入。
•異常活動水平。例如,執行的SQL數或訪問的行數異常多。
•在一天中的奇數時間進行活動。
•涉及敏感表新的SQL。
這一要求的目標遠遠超出了避免意外疏忽和改進檢測時間的范圍。其目的是對無法接受人工審查的數據庫中不可能高的活動量進行控制。
即使是低活動的數據庫每天也可能執行數百萬次SQL查詢,如果沒有實現自動化,就不可能對它們應用任何級別的控制。實施需要能夠以低開銷捕獲所有活動并執行分析的軟件。
9.主動取證審查
等級9適用于定期進行主動活動審查的數據庫。這意味著熟悉數據庫活動概況的人員會定期檢查活動(例如每月一次)。
取證審查的目的是識別可能未被發現的行為,包括內部濫用和外部攻擊。此外還可以突出控制、風險做法等方面的差距。
實施取證審查需要一個解決方案,能夠以最小的開銷捕獲所有活動,減少并將其存儲在合理數量的磁盤空間中,并提供取證工具來分析和審查它。
10.限制對DBA和應用程序的訪問
等級10適用于限制訪問帳戶的數據庫,否則對數據的訪問不受限制,例如數據庫管理員(DBA)帳戶、特權帳戶和應用程序帳戶。
此類限制通常不是原生數據庫功能的一部分,可能包括:
•防止特權帳戶訪問他們不應訪問的模式、表或對象。例如,數據庫管理員(DBA)帳戶通常不應訪問數據。
•防止不應訪問的程序或機器訪問該帳戶。例如,只有應用程序和應用服務器才能訪問應用帳號。
•防止在不應該使用帳戶的日子和時間訪問帳戶。
•防止帳戶訪問超出預期的數據(速率限制)。
•通過要求安全人員預先授權某些特權活動來強制分離職責。
這個要求需要一個解決方案來實施,因為它超出了內置的數據庫預防控制。對數據庫應用預防控制會帶來阻止合法活動的操作風險。因此,必須按照適當的最佳實踐謹慎地部署此類措施,以最大程度地減少中斷的可能性。
結語
如果企業的安全等級沒有想象的那么高,那么不要擔心,繼續加強。而保持數據庫安全需要堅持不懈的追求,這將逐漸提高企業的安全等級。
數據庫安全是一項必不可少的投資,它將讓企業確信其數據是安全和可靠的。
版權聲明:本文為企業網D1Net編譯,轉載需注明出處為:企業網D1Net,如果不注明出處,企業網D1Net將保留追究其法律責任的權利。