摘要:自從發生了數據庫安全事件之后,我一直很重視mysql的訪問權限控制,僅允許必須的服務器來連接數據庫,沒有用的IP都屏蔽掉了。
?
數據庫安全的那點事兒, 可能是每個DBA都會遇到的問題, 同時也是最容易忽略的事。因為大多數開發團隊都將精力放在了功能的實現上,很少去考慮安全相關的事兒,這也就給了黑客可乘之機。
我最初在一家小型BBS社區工作,主要是管理BBS的數據庫系統。這家公司人數不多,主營業務在行業內競爭比較激烈。我還清晰的記得,某天中午正在吃飯,就被叫回公司,同事焦急地說:“我們可能被黑了,所有BBS注冊用戶的金幣都多了10倍。”這意味著憑空而來的金幣會導致社區用戶對人民幣充值的熱情降低,直接影響公司的收入。
我首先想到的是有人入侵了數據庫修改了數據,所以仔細的查了一下數據庫的情況,看有沒有留下一點痕跡。其實對于一個剛工作不久的DBA來說,我的經驗不多,遇到問題還是有些措手不及。在忙亂中折騰了1個多小時,最后我終于想到了mysql的查詢日志(query
log),仔細查看這個日志,發現從10.10.1.23這個IP發過來這樣一條sql語句:update account set
jinbi=jinbi*10。對了!就是它了,正是這個sql語句導致了所有BBS用戶的金幣都多了10倍。接下來我檢查了10.10.1.23這個IP,這臺機器其實是一臺備機,還沒有啟用,所以操作系統安全等方面做的不夠全面,黑客正是通過這臺機器來操作數據庫的。同時我又檢查了一下mysql的權限,其中主機IP寫的是10.10.*,寫的是一個段的IP,正是因為這個設置,導致了黑客使用了有漏洞的機器來進行修改數據庫的操作。
這個案例深刻的告訴我mysql的權限控制有多重要。如果當時mysql的訪問權限將IP設置為只允許應用服務器來連接的話,也不會出現這樣的后果,所以今后的這幾年我都很重視mysql的訪問權限控制,僅允許必須的服務器來連接數據庫,沒有用的IP都屏蔽掉了。另外,就是query
log的重要性,因為它記錄了所有嘗試連接mysql的請求,如果某個IP不停的發出連接請求,并且總是用戶名和密碼錯誤,那么DBA就應該重視了,這樣的操作很有可能就是黑客在嘗試猜測mysql密碼,這也是很危險的,應該及時采取措施來應對。
總之,安全無小事,一定要引起重視,同時要有良好的安全意識,因為良好的習慣是工作順利進行的保證。
?
數據庫審計專家點評
?
該案例非常生動,對于數據庫事件的排查分析過程也很細致。所采取的安全措施除了訪問控制外,還有數據庫日志,這對一個DBA來說難能可貴。如果擔心開啟數據庫日志帶來的性能下降,也可考慮第三方審計產品。目前主流審計產品除了具備審計能力外,還具備異常行為分析和監控、權限管理等功能,甚至可以做訪問控制和違規阻斷,可協助安全管理人員做到數據庫訪問的事中防護和事后審計。
版權所有:鄭州三中網安科技有限公司 豫ICP備2020036495號-1 ?? | 豫公網安備 41019702002241號 | 站點地圖 | 人才招聘 | 聯系我們 |