如何处理仍未解决的MongoDB安全问题?

日期: 2017-06-06 作者:Matthew Pascucci翻译:张程程 来源:TechTarget中国 英文

有关MongoDB尚未解决的安全隐患是什么?在补丁可用之前,企业可以采取哪些措施以缓解这些威胁?

Matthew Pascucci:最近,网上有关MongoDB配置错误的攻击正在加剧。攻击者删除原始数据库并以备份件索要赎金,滥用这些MongoDB实例的身份验证和远程访问。

这些及其他MongoDB安全误配置和漏洞与补丁管理并不完全相关,较贴近配置管理领域。企业可采取措施来改善MongoDB的安全性,并保护数据库免受攻击。

这里的主要问题在于MongoDB的某些版本默认配置非常随意。在这种情况下,责任在于安装数据库软件的管理员,是因为他们没有恰当的管理造成的。

在我看来,默认情况下所有软件都应该被锁定,且应该仅在需要时启用某些功能。如果应用程序在默认情况下不执行此操作,并留有记录,那么责任归咎于管理员。由于较早版本的MongoDB的默认配置较随意,因此数据库管理员应该从验证一些事开始着手。

改善MongoDB安全性的第一步是确定运行数据库的服务器是否需要有任何入站连接。很多时候,这些数据库是远程安装的,需要远程管理员的访问。MongoDB的默认端口为27017,如果不是只绑定到127.0.0.1,并且防火墙没有被锁定,则攻击者能够远程访问数据库。

确保只打开了正确的端口,如无必要限制可以访问系统、并从互联网上删除所有访问的人员权限。另外,如果某些实例不得不通过互联网打开以降低可见性,考虑使用VPN连接的可能性。

其次,确保验证和运行数据库的用户身份有效。以前的一个问题是默认配置允许未经身份验证的用户通过互联网访问数据库。强烈建议企业采取某种基于角色的访问控制来限制特定用户无法访问的数据库部分。

此外,运行数据库的用户帐户不应对系统的其余部分拥有完整的管理员权限。将权限直接限制在应用程序中,可以抵御应用程序中可能出现的其他漏洞(如SQL注入)。

第三步是验证数据库中的数据在传输和存储过程中都被加密。有一种叫做WiredTiger的本地加密可以在特定的MongoDB版本中使用,有助于保护数据库中的数据。这不会有助于勒索软件攻击中发生的盗窃问题,但会让被盗数据被使用。如果企业需要远程访问数据库,则应通过TLS来实现以确保传输中的通信安全。

最后,日志记录和审计、漏洞扫描、配置和补丁管理都是很好的做法,可以缓解相关安全问题。如果没有对MongoDB实例或者真正的系统进行适当管理,可能会导致企业的安全风险升高,以致发生数据泄漏问题。

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

翻译

张程程
张程程

TechTarget中国编辑。专注报道企业级安全、网络领域的技术更迭和趋势变革,负责安全网站与网络网站的内容规划、组稿、原创和编辑。

相关推荐