MongoDB 4.2 Linux勒索病毒删库清空恢复技术方案教程,没有collection*.wt、WiredTIger.wt,附件:MongoDB专用数据恢复工具!!!(2021.4.15)

故障简述

平台:华为云ECS云服务器
操作系统:CentOS
数据库:MongoDB 4.2
数据量:数千个集合,共3TB压缩数据(实际数据约8TB)

2021年4月11日, MongoDB遭到黑客勒索病毒攻击入侵,清空了所有库和wt 文件,并留下勒索信息;之后,因业务无法停止,又陆续覆盖写入了20GB数据。

用户寻求数据恢复公司支持,但因集合数量过多,数据量过大,又有20GB的覆盖,所有恢复公司均无法提供数据恢复服务。

用户最终联系了数寻信息科技,我们判断这种情况可以通过 BSON碎片提取的方式处理,现将处理思路和处理过程整理并发布。
在这里插入图片描述

恢复过程

步骤一:保护生产数据,制定恢复方案

第一时间建议用户给数据盘做快照/磁盘备份保护,以防止数据被进一步破坏。

目前针对MonogoDB的恢复方案有很多,包括:

方案一:使用wt工具对数据进行打捞
要求有WT文件,且结构完好,这时可以用bsondump提取json:

bsondump xxx.wt

生成的bson文件可用mongorestore导入到mongodb中:

mongorestore --host  --port  --db= --collection=

方案二:采用DU_MongoDB_Restore系列工具做BSON碎片抽取,此工具可以直接从磁盘中提取出所有bson碎片。
首先在linux下提取到所有bson碎片:

DU_MongoDB_Restore_Linux -s [source_dev] -d [out_bson_file]

然后在windows平台将提取到的bson文件转化为json:
生成的bson文件即可用mongorestore导入到mongodb中:

mongorestore --host  --port  --db= --collection=

在本案例中,WT文件已经被删除,且无法恢复,因此只能采用方案二作BSON碎片提取。

步骤二:恢复过程

  1. 新建一台CentOS云主机做为恢复机,并将原始数据盘和中转盘挂载到恢复机上
mkfs.ext4 /dev/vdc
mount /dev/vdc /mnt
  1. 上传DU_MongoDB_Restore_Linux到 /mnt下,设置权限,并运行,这里数据源磁盘路径为/dev/vdb,我们设置为后台运行模式:
chmod 777 /mnt/DU_MongoDB_Restore_Linux
sudo nohup /mnt/DU_MongoDB_Restore_Linux -s /dev/vdb -d /mnt/bson.bin &

查看nohup.out,可以监控扫描进度:

open /dev/vdc success.
open ./bson.bin success.
/dev/vdc DevSize = 3221225472000.
Will Search Len = 3221225472000 .
Thu Apr 15 01:12:20 2021
 blockC = 2098,outLen = 241348217 (230 MB),searched: 104857600 (100 MB 0%).
Thu Apr 15 01:12:20 2021
 blockC = 3113,outLen = 355406251 (338 MB),searched: 209715200 (200 MB 0%).
Thu Apr 15 01:12:20 2021
 blockC = 3113,outLen = 355406251 (338 MB),searched: 314572800 (300 MB 0%).
Thu Apr 15 01:12:20 2021
 blockC = 3332,outLen = 377038566 (359 MB),searched: 419430400 (400 MB 0%).
  1. 新建一台windows恢复机,建议配置4核心CPU,8GB以上内存

  2. 如果bson.bin比较小,可以直接上传到windows上;如果文件较大,则可以将CentOS上的12TB BSON保存磁盘卸载后,直接挂载到windows恢复机上。案例中扫描到的BSON.bin达到 8TB,因此我们选择将整个磁盘挂载到windows上。

  3. 在windows上运行DU_MongoDB_Restore_Win.exe,按提示输入BSON.bin所在的磁盘序号;也可以直接将BSON.bin文件拖入到窗口分析。工具在运行目录下创建RESTORE_FILE目录,按字段不同,将json文件归类输出;单个json文件上限4GB:
    在这里插入图片描述
    在这里插入图片描述在这里插入图片描述

  4. 生成的bson文件即可用mongorestore导入到mongodb中:

mongorestore --host  --port  --db= --collection=

至此恢复工作完满结束。

补充:数天后,客户对数寻信息的恢复工作给予了高度肯定!
在这里插入图片描述在这里插入图片描述

技术支持

在这里插入图片描述

https://shop65444600.taobao.com

在这里插入图片描述

恢复工具

DU_MongoDB_Restore v5.2 2021.4.14 :
链接:https://pan.baidu.com/s/175LSTgS5yOk6cHw466J2bg
提取码:l6ry

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

数据恢复专家

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值