最近测试环境表现得不正常,MongoDB的数据展现不出来。
查了日志,发现有这么几条:
2017-02-08T23:28:32.384+0000 I COMMAND [conn773] dropDatabase PLEASE_READ_ME starting 2017-02-08T23:28:32.388+0000 I COMMAND [conn773] dropDatabase PLEASE_READ_ME finished 2017-02-08T23:28:34.581+0000 I COMMAND [conn773] dropDatabase iwesee starting 2017-02-08T23:28:34.601+0000 I COMMAND [conn773] dropDatabase iwesee finished
我的代码中不可能有dropDatabase的操作,也没这么手动操作过。
既然PLEASE_READ_ME,那我去就读。
在数据库中发现了PLEASE_READ_ME库,库下有PLEASE_READ_ME集合,集合中有这么个文档:
{ "_id" : ObjectId("58a06f3a6d3d693e86ae59da"), "info" : "Don't panic. Your DB is in safety and backed up (check logs). To restore send 0.05 BTC and email with your server ip or domain name. Each 48 hours we erase all data.", "amount" : "0.05 BTC", "data_we_have" : { "DB_H4CK3D" : [ "URG3NT_W4RN1NG" ], "iwesee" : [ "ticket.subject.movie.nowplaying", "ticket.subject.movie.later", "ticket.subject.photo", "ticket.subject" ] }, "Bitcoin Address" : "16bm9fMWdmGCmhXDm3QqMgzwAFwPzLpGaR", "email" : "kraken8888@sigaint.org" }
日志中还有不少国外的ip连接记录。
于是确认自己遇上了传说中的数据库勒索者了。
0.05BTC我是没有。数据库也不过是测试数据库,删除了还能自动重建。当初为了方便访问,才绑定公网地址并没设密码。于是重建mongo容器,改为绑定内网地址,并趁这个机会,升级到3.4。以后访问,也只好加SSH通道。
emmmm 如果mongodb放在内网一般不会被勒索。