【问题标题】:MongoDB database deleted automaticallyMongoDB数据库自动删除
【发布时间】:2017-05-26 00:45:05
【问题描述】:

我对这些天面临的 MongoDB 行为感到非常困惑。我在 Windows Live 服务器上运行 MEAN(MongoDB、Express、Angular、NodeJS)应用程序。两次发生我的应用程序连接的整个数据库被自动删除。我不知道它发生了什么。我在网上搜索过,但没有找到答案。我正在为 MongoDB 使用 Monk。

如何检测它的问题?

【问题讨论】:

    标签: windows mongodb monk


    【解决方案1】:

    嘿,这是病毒攻击阅读这篇文章https://www.bleepingcomputer.com/news/security/mongodb-apocalypse-professional-ransomware-group-gets-involved-infections-reach-28k-servers/

    实际上超过 28k 的 mongodb 服务器受到了社区的攻击,他们要么删除了数据库,要么对其进行了加密。现在他们要求比特币作为备份。

    现在出现的问题是 mongoDb 是安全的,因为许多数据库已被删除或加密

    答案是YES Mongodb 是完全安全的,这背后的原因是程序员缺乏安全措施。

    1. 您应该只打开 Amazone Web 服务器 (AWS) 中所需的服务器端口,一些程序员打开安全组的所有端口停止这样做。

    现在来解决问题。

    检查服务器上的 mongod.conf 文件:

    当我们安装 mongodb 时,服务器上会自动生成一个文件名 mongod.conf。您可以通过以下命令进行检查。

    cd /etc/
    sudo vim mongod.conf
    

    在这张图片中你会发现 bindIp 是 127.0.0.1 这是一个本地主机意味着只有这个服务器被允许使用数据库在你的情况下这必须是 0.0.0.0 这允许黑客获取访问您的数据并删除所有文件,因此只需将 bindIp 更新为 127.0.0.1,它现在不会发生。

    即使您可以使用 mongo 身份验证,请使用此链接进一步参考https://docs.mongodb.com/manual/tutorial/enable-authentication/

    【讨论】:

    • 这也发生在我身上,bindIp 已经设置为127.0.0.1。有什么想法吗?
    【解决方案2】:

    我注意到一个行为:

    创建新数据库 > 暂时不要添加任何数据(集合/文档) > 断开 mongodb 客户端 > 重新连接到 mongodb > 砰,新数据库消失!

    而且当有一些数据添加时,它显然不会自动删除数据库。

    我猜这是 mongodb 的默认行为,或者可能是我使用的客户端(Robo 3T)。

    【讨论】:

    • 数据库和集合仅在首次插入文档时创建。这种行为与 MongoDB 对数据的动态处理方式是一致的;就像不需要预先定义文档的结构一样,可以在运行时创建单独的集合和数据库。这可以简化和加速开发过程。
    猜你喜欢
    • 2018-08-21
    • 2020-06-03
    • 2017-06-30
    • 1970-01-01
    • 2019-03-18
    • 1970-01-01
    • 1970-01-01
    • 2021-04-04
    • 1970-01-01
    相关资源
    最近更新 更多