mongodb安全权限设定

如何防范此类攻击?

  1. 做好访问认证。打开你的MongoDB配置文件(.conf),设置为auth=true
  2. 做好防火墙设置。建议管理者关闭27017端口的访问。
  3. Bind_ip,绑定内网IP访问。
  4. 做好升级。请管理者务必将软件升级到最新版本。
  5. 可参考安全手册(https://docs.mongodb.com/manual/security/)

轻视安全问题是要付出代价的。事实上MongoDB数据库泄漏问题早在2015年就被报导过。当时Shodan(搜索引擎)的负责人John Matherly统计到有30,000个以上的MongoDB数据库实例,近600TB的数据暴露于公网之上,无需任何认证就可访问。很多版本滞后的数据库配置文件里没有做IP捆绑(bind_ip 127.0.0.1),在用户不甚了解的时候留下了安全隐患。虽然MongoDB的开发团队在下一个版本里修复了这个问题,但截止事发,仍然有数量众多的数据库管理者没来得及更新。

这次勒索事件的一个显著后果就是世界范围内存储在MongoDB数据库里数据量的大幅下滑。据Merrigan提供的信息显示,在短短3天内就有114.5TB的数据因此消失。据估计,目前网上约有50,000个开放访问的MongoDB数据库,也许用不了多久所有没做好安全措施的数据库都会被黑客攻陷。这个过程需要多久?据Gevers估算,这个过程可能用不了几周。

毫无疑问,黑客们的疯狂给人们敲响了警钟。现在应该会有很多人后悔了。

MongoDB官方建议如下:

如何知道自己有没有受到攻击:

  1. 如果已经为数据库正确配置了访问控制,攻击者应该访问不到数据,可参考安全手册(https://docs.mongodb.com/manual/security/)
  2. 验证数据库和集合。在最近的案例中,攻击者丢弃了数据库和/或集合,并用一个ransom需求的新的替换它们。
  3. 如果启用访问控制,请审核系统日志以进行未经授权的访问尝试或可疑活动。

如果已经受到攻击:

  1. 如果您是MongoDB企业支持客户,请尽快提交P1订单,我们的技术服务工程师可以指导您完成以下过程。
  2. 您的首要任务是保护您的集群以防止进一步的未授权访问。您可以参照我们的安全实践文档。
  3. 通过运行 usersInfo 来检查是否有添加,删除或修改的用户。
  4. 检查日志以查找攻击的时间。检查是否有删库或者删表,修改用户或创建赎金记录的命令。
  5. 如果你有定期对受损数据库进行备份,则可以还原最近的备份。您需要评估最近的备份和攻击时间之间可能已更改的数据量。如果您使用Ops Manager或Cloud Manager进行备份,则可以恢复到攻击之前的时间点。
  6. 如果您没有备份或以其他方式无法还原数据,那么您的数据可能会永久丢失。
  7. 您应该假设攻击者已经复制了受影响的数据库的所有数据。请按照内部安全流程对数据泄露事件进行恰当处理。

最后,请参阅我们的安全最佳做法和资源,以便将来保护您的数据。

如何防范此类攻击?

  1. 做好访问认证。打开你的MongoDB配置文件(.conf),设置为auth=true
  2. 做好防火墙设置。建议管理者关闭27017端口的访问。
  3. Bind_ip,绑定内网IP访问。
  4. 做好升级。请管理者务必将软件升级到最新版本。

mongodb安全权限设定的更多相关文章

  1. Python进阶----数据库的基础,关系型数据库与非关系型数据库(No SQL:not only sql),mysql数据库语言基础(增删改查,权限设定)

    day37 一丶Python进阶----数据库的基础,mysql数据库语言基础(增删改查,权限设定) 什么是数据库:    简称:DataBase ---->DB    数据库即存放数据的仓库, ...

  2. linux 账号管理与ACL权限设定

    此文涉及命令:useradd.usermod.userdel.passwd.chage.setfacl.getfacl.su.sudo.fingr.chfn.chsh.id.groupadd.grou ...

  3. 为mongodb加上权限

    我们知道mysql在安装的时候需要我们设置一个数据库默认的用户名和密码,mongodb也不例外,不过mongodb是默认的没有设置访问限制的,不需要输入用户名和密码都可以访问的,但是这样会十分的不安全 ...

  4. (转)Linux 文件目录特殊权限设定(SUID,SGID,SBIT)

    原文:https://blog.csdn.net/leshami/article/details/77184029 Linux文件及目录的权限设定,除了我们孰知的读写执行(rwx)之外,还有一些特殊的 ...

  5. mongodb的权限操作

    一.开启权限认证 1.windows下的mongodb开启权限认证 C:\Users\Administrator>sc delete MongoDB //原来创建的服务如果没有开启 则删除 [S ...

  6. MongoDB用户权限管理配置

    MongoDB系列第一课:MongDB简介 MongoDB系列第二课:MongDB环境搭建 MongoDB系列第三课:MongDB用户管理 MongoDB系列第四课:MongoDB数据库.集合.文档的 ...

  7. Linux SUID SGID SBIT 简介和权限设定

    SUID :Set UID 1 SUID 权限仅对二进制程序(binary program)有效 2 执行者对于该程序需要具有x的可执行权限 3 本权限仅在执行该程序的过程中有效(run-time) ...

  8. MongoDB用户权限认证

    关于用户的认证及权限 用户是跟着库创建的,在哪个库创建的什么权限的什么用户,只对此库有相应权限(除超级管理员以外). 官网文档:https://docs.mongodb.com/master/refe ...

  9. mongodb 用户权限控制

    MongoDB已经使用很长一段时间了,基于MongoDB的数据存储也一直没有使用到权限访问(MongoDB默认设置为无权限访问限制),今天特地花了一点时间研究了一下,研究成果如下: 注:研究成果基于W ...

随机推荐

  1. FreeMarker详解

    什么是 FreeMarker? FreeMarker 是一款 模板引擎: 即一种基于模板和要改变的数据, 并用来生成输出文本(HTML网页,电子邮件,配置文件,源代码等)的通用工具. 它不是面向最终用 ...

  2. python的前后端分离(一):django+原生js实现get请求

    一.django新建项目和应用 参考:https://segmentfault.com/a/1190000016049962#articleHeader2 1.创建项目 django-admin st ...

  3. SVN安装部署

    svn安装版本用的是1.8 SVN属于功能性软件,yum安装即是最佳实践. 安装svn yum install subversion 检查svn是否安装完毕 [root@mysql ~]# rpm - ...

  4. 前端 HTML form表单标签 input标签 type属性 file 上传文件

     加上上传文件功能 input type='file' - 依赖form表单里一个属性 enctype="multipart/form-data" 加上这个属性表示把你上次文件一点 ...

  5. 002-MVC架构,贫血的领域模型、spring mvc,webhars使用

    一.MVC.贫血的领域模型 MVC理念是将视图与模型进行解耦. 贫血的领域模型 <领域驱动设计>定义了一组架构规则,能够指导我们更好地将业务领域集成到代码中. 其中一个核心理念是将面向对象 ...

  6. javascript篇-浅拷贝与深拷贝

    理解javascript 的浅拷贝与深拷贝,首先看一下js的数据类型: js有5种基本数据类型:undefined,null,boolean,number,string 还有一种复杂的数据类型(也叫引 ...

  7. vue-watch监听路由的变化

  8. 由swap引发的关于按值传递和引用传递的思考与总结

    函数的参数传递定义:在调用一个函数时,将实参传递给形参. C++中函数的参数传递有按值传递.地址传递和引用传递3种方式.注意:地址也是一种值,按值传递和按地址传递都是单向的值传递方式,即形参都不会回传 ...

  9. vim 常用

    Format JSON :%!python -m json.tool 1. define custom function and use it define function in .vimrc fu ...

  10. python SMTP other

    HTML 正文,带链接和图片 //test.py import smtplib from email.mime.image import MIMEImage from email.mime.text ...