云服务器上Mongodb被拖库,黑客向我勒索0.015 BTC

文章目录

  • Mongodb被拖库,黑客向我勒索0.015 BTC
  • 分析
  • 改善措施
    • 更改SSH端口
    • Mongodb走SSH
    • 定时备份
    • 服务不用的时候停掉

Mongodb被拖库,黑客向我勒索0.015 BTC

下午跑了一下某网站的房价爬虫(go+mongodb),跑完之后使用compass连上mongodb发现之前的数据都不见了,找到了这个:

You must pay 0.015 BTC to …
云服务器上Mongodb被拖库,黑客向我勒索0.015 BTC_第1张图片

{
    "_id":"5efb5a7be7ddf851a25aba82",
    "content":"All your data is a backed up. You must pay 0.015 BTC to 13JwJDaU3xdNFfcSySFCy95E2Tko18fiyB 48 hours for recover it. After 48 hours expiration we will leaked and exposed all your data. In case of refusal to pay, we will contact the General Data Protection Regulation, GDPR and notify them that you store user data in an open form and is not safe. Under the rules of the law, you face a heavy fine or arrest and your base dump will be dropped from our server! You can buy bitcoin here, does not take much time to buy https://localbitcoins.com with this guide https://localbitcoins.com/guides/how-to-buy-bitcoins After paying write to me in the mail with your DB IP: [email protected]"
}

大爷的,幸好没有什么关键的数据。目前(2020年7月28日 16:00)
1 BTC = $10825 = ¥75335
0.015 BTC = ¥ 1130
被敲诈了 ¥1130RMB,去他大爷的,赶紧把mongodb的服务停掉,防火墙端口关掉。

分析

来猜测一下,对方是怎么进入到我的mongodb的。

首先看一下mongodb的配置:
云服务器上Mongodb被拖库,黑客向我勒索0.015 BTC_第2张图片
防火墙的配置:
在这里插入图片描述
果然犯了最低级的错误,密码都没有,端口还是默认的。只需要知道公网IP地址,就能把数据拖出来。是不是这样的呢?看一下在一台机器上的mysql数据库里面的数据是不是也被拖了

mysql连接配置:
云服务器上Mongodb被拖库,黑客向我勒索0.015 BTC_第3张图片
mysql数据:
云服务器上Mongodb被拖库,黑客向我勒索0.015 BTC_第4张图片
mysql里面的数据还是完整的,松了一口气。上面的分析没有错,应该是下面2个问题导致的:

  • mongodb没有设置密码
  • 端口默认使用27017

怎么解决呢?建议

  • SSH默认端口22,改成其他端口,比如51992(5+自己生日的年份)
  • 关闭mongodb公网访问端口,通过SSH连接
  • 服务不用的时候,关掉mongodb
  • 定时备份

改善措施

更改SSH端口

$ vim /etc/ssh/sshd_config

找到port 22  添加一行修改为自己规定的端口
#port 22
port 51998

保存退出
重启sshd服务
$ systemctl restart sshd

防火墙端口映射一下:
在这里插入图片描述

Mongodb走SSH

为什么不是加密码呢?因为mongodb和mysql还不太一样,所以不建议通过设置密码解决。
云服务器上Mongodb被拖库,黑客向我勒索0.015 BTC_第5张图片

定时备份

参考:mongodb 定时备份

服务不用的时候停掉

systemctl stop mongod

每次可能会忘记,所以可以在定时任务里面加一下。

你可能感兴趣的:(mysql,后端开发,mongodb,安全,拖库)