關於MongoDB安全事件的一些思考

剛剛過去的這個周末,各位大數據和資料庫從業者想必是被MongoDB的「安全事件」給刷屏了,MongoDB作為當前NoSQL在全球的領軍人物,遭到這麼大規模的黑客攻擊,這也再次讓我們對於新一代的開源資料庫的數據安全問題產生了思考。而作為國內領先的新一代分散式資料庫廠商,我們也來說說我們對這個事件的看法。

事件回顧

此前,眾多無需身份驗證的開放式 MongoDB 資料庫實例正在遭受多個黑客組織的攻擊,被攻破的資料庫內容會被加密,受害者必須支付贖金才能找回自己的數據。攻擊者利用配置存在疏漏的開源 MongoDB 資料庫展開了一系列勒索行為。此番針對 MongoDB 的勒索行為最早是由 GDI Foundation 的安全研究人員 Victor Gevers 在2016年12月27日發現的,在這之後影響陸續擴大,目前至少有五個不同黑客組織控制了上萬個資料庫實例。

目前在Google Docs上有一個列表,其中列出了參與此次攻擊的黑客組織名單,具體數量還在增加中。攻擊者所要求支付的金額各異,最低僅0.15個比特幣,但也有高達1個比特幣的贖金。2017年至今,比特幣的價值上下波動,截止1月6日,具體金額約等於892美元。

此次針對MongoDB的攻擊非常簡單,利用了配置有誤且可公開訪問的資料庫,無須具備相應的管理員憑據即可展開攻擊。一旦攻擊者登錄到開放的資料庫,隨後會全面奪取控制權並竊取或加密資料庫,被勒索的受害者必須支付贖金才能找回自己的數據。

事件幾點分析

針對此次的MongoDB安全時間,業界的評判不一,而從一個資料庫廠商的角度,我們認為主要的原因有一下幾點:

1) 資料庫用戶的安全意識:本次攻擊的原理並不複雜,基本屬於把自己資料庫的大門敞開,難免最終會被賊「光顧」。一方面,用戶對於資料庫特別是MongoDB這樣的資料庫新面孔並沒有特別熟悉,因此在使用的過程中由於經驗不足而沒有注意資料庫安全的設置。另一方面,一些用戶會認為防火牆和數據中心的安全機制已經足夠,不需要再管資料庫的安全設置,最終「大意失荊州」。歸集起來,原因主要還是用戶對於資料庫使用的經驗不足。

2) 黑客攻擊後未有有效的警告:除了本身用戶使用的大意,對於資料庫安全的監控無論是廠商自己還是相關的機構都遠未達到大家的預期。首先,早在15年有關MongoDB「裸奔」的消息放出後,無論是廠商還是業界都沒有引起足夠的重視,更沒有有效的警告和提醒。其次,在本次大規模的攻擊事件發生後,各方的反應也較慢,直到有媒體開始爆出消息才引起了廠商和用戶群體的警惕。然而可以說是「為時已晚」。

3) MongoDB的安全機制不完善:雖然本次安全時間並不是因為MongoDB程序自身的漏洞而遭到大規模攻擊,但是作為廠商,產品用戶遭到大規模的攻擊和勒索,自己也是難逃其咎。總結起來主要有兩個問題,一個是安全機制的不完善,也就是在使用中沒有自動化的安全保護機制,如MongoDB在3.x之後更改了鑒權協議,而不兼容2.x版本協議,許多用戶因為不願升級而最終選擇「裸奔」。另一個,MongoDB也沒有能有效的提醒用戶注意設置資料庫許可權,對於可能出現的「裸奔」情況,其並沒有做好十足的提醒,保證用戶必須設置好許可權才可以使用,這也是造成本次事件的主要原因之一。

資料庫安全的思考

說了這麼多,大家應該也比較關心怎麼去預防類似問題的出現,我們也在這裡給大家幾點思考吧:

1) 資料庫安全十分重要:這次的事件提醒大家,資料庫安全真的很重要。無論是資深的還是新人「小白」用戶,都應該把資料庫的安全提到一個重要的位置。用戶們要注意資料庫的安全保護,充分利用好資料庫的安全機制,保護好自己的數據。避免這次MongoDB「裸奔」的情況出現。

2) 企業用戶需要專業的技術支持:對於數據量達到一定規模或者是保存的數據十分敏感、重要的企業用戶,無論是資料庫安全還是資料庫的高效管理、高性能配置,我們認為最好都要尋求專業的廠商技術團隊的支持。廠商專業的團隊可以幫助企業更全面的使用和管理好自己的資料庫平台,同時,廠商專業的團隊也能給到用戶最好最及時的資料庫安全保護和漏洞修復服務,避免大規模資料庫安全事故的發生。

3) 國產化與開源產品:雖然目前業界也有許多的海外開源產品,但是作為用戶,如果在並不能完全了解這些技術的前提下使用開源架構,很可能也會面臨使用上和管理上的一些盲點,造成出現資料庫「裸奔」這樣的失誤。因此,國內的用戶我們也認為可以考慮更多國產大數據架構,這樣不僅產品更適合國內應用場景需求,在技術支持上相對海外的開源架構,更能給到原廠代碼級別的服務支持。

4) 廠商的產品服務:反過來,對於廠商,我們希望廠商也都能引以為戒,產品開發要更全面的考慮到用戶的需求以及可能遇到的問題,同時對客戶的服務響應上也要更加的及時,不要等到大規模的爆發了問題才引起重視。

SequoiaDB巨杉資料庫

SequoiaDB巨杉資料庫是一款新一代的分散式NewSQL資料庫,完全自主研發並且產品已經商業化開源。巨杉資料庫的產品和服務能夠切實保障用戶的數據安全:

· 分散式高可用:完全的分散式架構,實現了數據的多副本與高可用,保證數據實時在線。

· 容災:巨杉資料庫的跨數據中心異地容災,保證企業的數據安全。

· 7x24小時原廠技術支持:巨杉最專業的技術團隊,為企業用戶提供7x24的本地技術支持,加速企業用戶的大數據業務,是您的大數據系統的堅強後盾。


推薦閱讀:

事務的ACID特性
循序漸進學習如何在 MariaDB 中配置主從複製
Access資料庫應用思維導圖
MySQL資料庫應用總結(十)—MySQL資料庫數據的插入、更新和刪除操作
七周成為數據分析師:SQL,從熟練到掌握

TAG:資料庫 | NewSQL | 資料庫安全 |