无论您投入多少努力来加强 MongoDB 安装的安全性,随着时间的推移,新漏洞将不可避免地出现。
例如,您应该定期检查 MongoDB 的新更新,以确保您正在使用的版本没有任何未修补的漏洞。 Mongo 版本号以 X.Y.Z 的形式使用,X 指的是版本号,Y 指的是发布或开发系列号,Z 指的是修订或修补号。
虽然MongoDB 通常建议您使用最新的可用版本来优化安全性,但请注意,新版本系列(即从版本 4.4 到版本 4.6)可能会破坏反向兼容性。
人们还应该考虑他们打算如何与MongoDB数据库进行互动,以及这些情况是否会随着时间的推移而发生变化。MongoDB提供了几种命令和方法,允许您默认执行JavaScript函数的服务器侧执行。例如,您可以使用$where
操作器来评估JavaScript表达式以查询文档。这为您提供了更大的灵活性,因为它允许您表达查询,而没有同等标准操作器。然而,通过允许服务器侧执行JavaScript,您还将数据库暴露在潜在恶意表达式中。
同样,默认情况下,MongoDB 会验证所有用户输入,以确保客户端无法将错误的 BSON 插入到数据库中。