安全動(dòng)態(tài)

如何處理仍未解決的MongoDB安全問題?

來源:聚銘網(wǎng)絡(luò)    發(fā)布時(shí)間:2017-06-07    瀏覽次數(shù):
 

信息來源:企業(yè)網(wǎng)

        有關(guān)MongoDB尚未解決的安全隱患是什么?在補(bǔ)丁可用之前,企業(yè)可以采取哪些措施以緩解這些威脅?

        Matthew Pascucci:最近,網(wǎng)上有關(guān)MongoDB配置錯(cuò)誤的攻擊正在加劇。攻擊者刪除原始數(shù)據(jù)庫并以備份件索要贖金,濫用這些MongoDB實(shí)例的身份驗(yàn)證和遠(yuǎn)程訪問。

        這些及其他MongoDB安全誤配置和漏洞與補(bǔ)丁管理并不完全相關(guān),較貼近配置管理領(lǐng)域。企業(yè)可采取措施來改善MongoDB的安全性,并保護(hù)數(shù)據(jù)庫免受攻擊。

        這里的主要問題在于MongoDB的某些版本默認(rèn)配置非常隨意。在這種情況下,責(zé)任在于安裝數(shù)據(jù)庫軟件的管理員,是因?yàn)樗麄儧]有恰當(dāng)?shù)墓芾碓斐傻摹?/span>

        在我看來,默認(rèn)情況下所有軟件都應(yīng)該被鎖定,且應(yīng)該僅在需要時(shí)啟用某些功能。如果應(yīng)用程序在默認(rèn)情況下不執(zhí)行此操作,并留有記錄,那么責(zé)任歸咎于管理員。由于較早版本的MongoDB的默認(rèn)配置較隨意,因此數(shù)據(jù)庫管理員應(yīng)該從驗(yàn)證一些事開始著手。

        改善MongoDB安全性的第一步是確定運(yùn)行數(shù)據(jù)庫的服務(wù)器是否需要有任何入站連接。很多時(shí)候,這些數(shù)據(jù)庫是遠(yuǎn)程安裝的,需要遠(yuǎn)程管理員的訪問。MongoDB的默認(rèn)端口為27017,如果不是只綁定到127.0.0.1,并且防火墻沒有被鎖定,則攻擊者能夠遠(yuǎn)程訪問數(shù)據(jù)庫。

        確保只打開了正確的端口,如無必要限制可以訪問系統(tǒng)、并從互聯(lián)網(wǎng)上刪除所有訪問的人員權(quán)限。另外,如果某些實(shí)例不得不通過互聯(lián)網(wǎng)打開以降低可見性,考慮使用VPN連接的可能性。

        其次,確保驗(yàn)證和運(yùn)行數(shù)據(jù)庫的用戶身份有效。以前的一個(gè)問題是默認(rèn)配置允許未經(jīng)身份驗(yàn)證的用戶通過互聯(lián)網(wǎng)訪問數(shù)據(jù)庫。強(qiáng)烈建議企業(yè)采取某種基于角色的訪問控制來限制特定用戶無法訪問的數(shù)據(jù)庫部分。

        此外,運(yùn)行數(shù)據(jù)庫的用戶帳戶不應(yīng)對(duì)系統(tǒng)的其余部分擁有完整的管理員權(quán)限。將權(quán)限直接限制在應(yīng)用程序中,可以抵御應(yīng)用程序中可能出現(xiàn)的其他漏洞(如SQL注入)。

        第三步是驗(yàn)證數(shù)據(jù)庫中的數(shù)據(jù)在傳輸和存儲(chǔ)過程中都被加密。有一種叫做WiredTiger的本地加密可以在特定的MongoDB版本中使用,有助于保護(hù)數(shù)據(jù)庫中的數(shù)據(jù)。這不會(huì)有助于勒索軟件攻擊中發(fā)生的盜竊問題,但會(huì)讓被盜數(shù)據(jù)被使用。如果企業(yè)需要遠(yuǎn)程訪問數(shù)據(jù)庫,則應(yīng)通過TLS來實(shí)現(xiàn)以確保傳輸中的通信安全。

        最后,日志記錄和審計(jì)、漏洞掃描、配置和補(bǔ)丁管理都是很好的做法,可以緩解相關(guān)安全問題。如果沒有對(duì)MongoDB實(shí)例或者真正的系統(tǒng)進(jìn)行適當(dāng)管理,可能會(huì)導(dǎo)致企業(yè)的安全風(fēng)險(xiǎn)升高,以致發(fā)生數(shù)據(jù)泄漏問題。

 
 

上一篇:《網(wǎng)絡(luò)安全法》施行行業(yè)的責(zé)任與機(jī)遇

下一篇:2017年06月07日 聚銘安全速遞