甚麼是資料庫強化Database Hardening?
資料庫強化是保護資料庫免受潛在安全威脅的過程,包括採取各種措施來保護資料庫免受未經授權存取、數據損壞、惡意攻擊(例如 SQL Injection)及其他潛在威脅。 資料庫強化有助於確保資料庫高效運行並能夠滿足用戶的需求。強化措施包括更改密碼、使用加密、限制對資料庫某些區域的訪問等,而應該採取哪些具體步驟,則取決於使用的平台。 資料庫安全是一個非常廣泛和復雜的主題,以下只是一些簡單的貼士,協助你找出正確方向。
資料庫加固的最佳實踐 Database security best practices
1. 遵守標準 (Adhere to standards)
最簡單的開始是遵循既定標準,例如參考以下組織提供與安全配置標準、審計技術、修復步驟等相關的指南。
- The Center for Internet Security (CIS)
- The NIST Security framework
- International Standards Organization (ISO)
- SysAdmin Audit Network Security (SANs)
2. 閱讀文檔
雖然冗長乏味,但閱讀正使用的資料庫平台相關的安全指南會為加強資料庫安全帶來不少幫助。以下面是一些最常用的資料庫平台的相關文件連結:
- Oracle: Oracle’s Database Security Guide
- Microsoft SQL Server: The Security Center for SQL Server Database Engine and Azure SQL Database
- IBM DB2: IBM DB2 security documentation
- MySQL’s 5.6: MySQL 8.0 Reference Manual (the security section)
3. 採用「最小權限(least privilege)」訪問原則
為用戶提供執行其工作所需的最少權限,這對於資料庫安全尤其重要,因為它們通常包含敏感或機密訊息,限制訪問權限能將數據受未經授權訪問或操縱的風險降到最低。
4. 保障物理環境和儲存媒體的安全
確保託管資料庫的硬件裝置存放在安全的環境中,並配備必要的鎖、警報、閉路電視防盜攝影機等,而且託管資料庫的伺服器不應該安裝資料庫以外的任何東西。
5. 保護周邊環境
資料庫伺服器應位於默認拒絕所有流量的防火牆(Firewall)後面,更改防火牆規則需要遵循程序,並在規則更改時收到發出實時通知。 每個資料庫伺服器都應該啟用自己的防火牆以提供額外的保護。
6. 使用資料庫加密 (Encryption)
敏感數據在存儲在資料庫中時必須保持在加密狀態。 一般來說,對存儲在資料庫中的數據進行加密的最佳方法是使用 AES 等加密法或 SHA-256 等散列算法。保護數據免遭未經授權的訪問和篡改。 此外,重要的是使用 SSL/TLS 等安全協議來確保數據在傳輸過程中保持安全。 以下是一些最流行的資料庫加密工具:
- Oracle Advanced Security
- Microsoft Transparent Data Encryption (TDE)
- IBM Guardium Data Encryption
- Redgate SQL Encryption
- Imperva SecureSphere Database Encryption
7. 監控一切!
必須記錄和監控所有資料庫活動,日誌應保留最少一年。 您還應該審核操作系統和資料庫伺服器的所有登入和活動—包括成功及不成功的登入,以及其他的修改行為等。 請務必記住,具有相關權限的用戶可以隨時更改安全設置,因此你必須持續監控您的資料庫設定檔,並確定在它們發生任何變更時系統管理員能接收實時警報。
其他應該考慮資料庫強化措施包括:
- 刪除默認帳戶(Default accounts)
- 實施強密碼政策 (Strong password policy)
- 使用數據分類解決方案 (Data classification)
- 審計用戶的所有訪問連接 (Audit access connections)
- 禁用不必要的服務和組件 (Disable unnecessary services)
- 為資料庫表構建有效的模式
實時監控及提醒資料庫或其他重要數碼資產的變更及可疑活動,可利用Lepide Data Security Platform等方案輕鬆達成,聯絡我們詳細了解及試用。