Linux系統安全(十):NoSQL數據庫與公有云安全

保障Linux應用安全是構建縱深防禦體系不可或缺的重要部分,而提到與網站相關的應用安全保障,就不得不提數據庫和公有云安全,本文聚焦在緩存服務器、Key-Value數據庫和MySQL這一關係型數據庫的安全設置。

Memcached安全

Memcached是流行的NoSQL緩存軟件,廣泛用於網站系統中,作爲後端數據庫的緩存和存儲Session會話信息等。在實踐中,我們一般從以下幾個方面來保障Memcached的安全:

  • 將Memcached部署在僅有內網IP的服務器上,避免對公網開放。

  • 爲Memcached服務器配置精細化的防火牆iptables設置,僅允許前端Web服務器和應用服務器來調用,避免對整個局域網網段開放。

  • 服務降權。專門設置一個獨立的普通用戶,例如memcached來啓動Memcached。

Redis安全

Redis是一個開源的使用ANSI C語言編寫、支持網絡、可基於內存也可持久化的Key-Value數據庫,並提供多種語言的API。它被廣泛用於緩存、消息中間件,也經常作爲持久化的數據庫使用。

根據知名安全公司Incapsula研究表明,75%在公網上開放的Redis服務器都受到了RedisWannaMine攻擊。爲了預防類似的攻擊,在實踐中,我們一般從以下幾個方面來保障Redis的安全:

  • 將Redis部署在僅有內網IP的服務器上,避免對公網開放。

  • 爲Redis服務器配置精細化的防火牆iptables設置,僅允許前端Web服務器和應用服務器來調用,避免對整個局域網網段開放。

  • 服務降權。專門設置一個獨立的普通用戶,例如redis來啓動Redis。

  • 禁用危險命令。在配置文件中加入如下的內容以禁用危險命令:

rename-command FLUSHALL "" 
rename-command FLUSHDB "" 
rename-command CONFIG "" 
rename-command KEYS ""
  • 啓用Redis auth。修改redis.conf配置文件增加如下內容:
requirepass QUeFbmudgkNn
  • 保存後重啓Redis即可。

MySQL安全

數據庫服務器上存儲了應用程序記錄的核心數據,保障數據庫安全,我們一般可以從以下方面進行:

  • 將MySQL部署在僅有內網IP的服務器上,避免對公網開放。這將極大的縮減攻擊面。

  • 爲MySQL服務器配置精細化的防火牆iptables設置,僅允許前端Web服務器和應用服務器來調用,避免對整個局域網網段開放。CVE-2012-2122中指出,在某些特定版本MySQL的sql/password.c中存在漏洞,在某些特定運行環境中會導致遠程攻擊者可以通過多次重複嘗試同一個錯誤密碼而有概率性的繞過認證機制。如果沒有網絡層的防護,這將是造成非常嚴重的信息泄露;而通過精細化的訪問控制則可以有效的解決這個問題。

  • 服務降權。專門設置一個獨立的普通用戶,例如使用mysql這一用戶來啓動數據庫進程。

  • 刪除安裝後的測試數據庫。在MySQL中,數據庫初始安裝完成後,會生成一個test庫。直接刪除即可。

  • 檢查數據庫的密碼。通過如下的語句,我們可以檢查出沒有配置密碼的帳號:

select User,Host,Pasword from mysql.user where Password='';
  • 數據庫授權。
    1)採用權限最小化原則,對應用程序使用分級授權。對於只需要讀的帳號,僅僅授予“SELECT”權限。
    2)對數據庫來說,我們希望客戶端過來的連接都是安全的,因此,就很有必要在創建用戶的時候同時指定可以進行連接的服務器IP,只有符合授權的IP纔可以進行數據庫的訪問。數據庫授權時,精確到主機,不允許在grant命令中對所有主機授權。

通過定期備份來避免數據庫誤操作或者黑客入侵導致的數據丟失。常用的備份工具包括Oracle MySQL mysqldump和Percona XtraBackup for MySQL等。

使用公有云上的WAF服務

隨着越來越多的企業把業務遷移到公有云上,這些雲上業務對WAF的需求也越來越大。因此,公有云服務商也逐步推出了雲WAF的服務。如圖8-7所示爲國內某公有云廠商提供的針對中小規模網站的雲WAF解決方案所具備的規格能力:

圖8-7 國內某雲WAF服務能力規格圖

雲WAF的優點有:

  • 部署簡單,維護成本低:這也是雲WAF最有價值和受用戶喜愛的一點,無需安裝任何軟件或者部署任何硬件設備,只需修改DNS即可將網站部署到雲WAF的防護範圍之內。

  • 用戶無需更新:雲WAF的防護規則都處於雲端,新漏洞爆發時,由雲端負責規則的更新和維護,用戶無需擔心因爲疏忽導致受到新型的漏洞攻擊。

  • 可充當CDN:雲WAF在提供防護功能的同時,還同時具有CDN的功能,在進行防護的同時還可以提高網站訪問的速率,CDN通過跨運營商的多線智能解析調度將靜態資源動態負載到全國的雲節點,用戶訪問某個資源時會被引導至最近的雲端節點從而提高訪問速度。

基於以上的分析,我們建議,對於已經使用了公有云部署服務的企業來說,可以考慮使用雲WAF作爲應用防護方案。

本文內容來自作者圖書作品《Linux 系統安全:縱深防禦、安全掃描與入侵檢測》,點擊購買

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章