勒索解密后oracle无法启动故障处理----惜分飞

2023-11-28 09:04

本文主要是介绍勒索解密后oracle无法启动故障处理----惜分飞,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

客户linux平台被勒索病毒加密,其中有oracle数据库.客户联系黑客进行解密【勒索解密oracle失败】,但是数据库无法正常启动,dbv检查数据库文件报错

[oracle@hisdb ~]$ dbv file=system01.dbf

DBVERIFY: Release 11.2.0.1.0 - Production on 星期一 11月 27 21:49:17 2023

Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.

DBV-00107: 未知标头格式 (31) (287942924)

对应的英文为:DBV-00107: Unknown header format (31) (287942924),检查数据文件信息发现提示为 FILE NOT FOUND,使用脚本为:Oracle数据库异常恢复检查脚本(Oracle Database Recovery Check)检测结果
 

20231127220917


通过分区确认是文件头损坏
 

20231127220354


修复正确的文件头
 

20231127220457


再次dbv检查数据文件

[oracle@hisdb ~]$ dbv file=system01.dbf

DBVERIFY: Release 11.2.0.1.0 - Production on 星期一 11月 27 22:05:41 2023

Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.

DBVERIFY - 开始验证: FILE = /u01/app/oracle/oradata/system01.dbf

页 12800 标记为损坏

Corrupt block relative dba: 0x00403200 (file 1, block 12800)

Bad header found during dbv:

Data in bad block:

 type: 88 format: 1 rdba: 0x33877808

 last change scn: 0x257a.7b3a44e3 seq: 0xe8 flg: 0xe6

 spare1: 0x4e spare2: 0x73 spare3: 0x0

 consistency value in tail: 0x65251001

 check value in block header: 0xc3b4

 computed block checksum: 0x4ca7

DBVERIFY - 验证完成

检查的页总数: 13440

处理的页总数 (数据): 3297

失败的页总数 (数据): 0

处理的页总数 (索引): 2097

失败的页总数 (索引): 0

处理的页总数 (其他): 1441

处理的总页数 (段)  : 1

失败的总页数 (段)  : 0

空的页总数: 6604

标记为损坏的总页数: 1

流入的页总数: 0

加密的总页数        : 0

最高块 SCN            : 1667927064 (12.1667927064)

修复其他文件头,并dbv检查,发现均在12800位置损坏.尝试recover database恢复数据库,报ORA-00742 ORA-00312之类错误.

Sat Nov 25 17:03:39 2023

ALTER DATABASE RECOVER  database 

Media Recovery Start

 started logmerger process

Parallel Media Recovery started with 40 slaves

Sat Nov 25 17:03:40 2023

Recovery of Online Redo Log: Thread 1 Group 7 Seq 27220 Reading mem 0

  Mem# 0: /u01/app/oracle/oradata/redo07.log

Sat Nov 25 17:03:41 2023

Hex dump of (file 3, block 7) in trace file /u01/app/oracle/diag/rdbms/his/his/trace/his_pr0l_52669.trc

Corrupt block relative dba: 0x00c00007 (file 3, block 7)

Bad header found during media recovery

Data in bad block:

 type: 124 format: 7 rdba: 0x1698b845

 last change scn: 0x4fa1.3eaa638f seq: 0x6 flg: 0x24

 spare1: 0x26 spare2: 0x42 spare3: 0x0

 consistency value in tail: 0xa39e1e01

 check value in block header: 0x2ca4

 computed block checksum: 0x3b25

Reading datafile '/u01/app/oracle/oradata/undotbs01.dbf' for corruption at rdba: 0x00c00007 (file 3, block 7)

Reread (file 3, block 7) found same corrupt data (no logical check)

Sat Nov 25 17:03:41 2023

Hex dump of (file 46, block 3) in trace file /u01/app/oracle/diag/rdbms/his/his/trace/his_pr0w_52691.trc

Corrupt block relative dba: 0x0b800003 (file 46, block 3)

Bad header found during media recovery

Data in bad block:

 type: 7 format: 7 rdba: 0x77922022

 last change scn: 0xdff3.c40df5b6 seq: 0x6f flg: 0xe5

 spare1: 0xcd spare2: 0x6d spare3: 0x83d7

 consistency value in tail: 0x63c63d2c

 check value in block header: 0xf662

 computed block checksum: 0xec49

Data in bad block:

 type: 135 format: 4 rdba: 0x45ad2864

 last change scn: 0x9d7e.34949c73 seq: 0x32 flg: 0x3e

 spare1: 0x89 spare2: 0x0 spare3: 0x9f9f

 consistency value in tail: 0xa5807800

 check value in block header: 0xb2c9

 computed block checksum: 0x3aea

Reread (file 5, block 11259) found same corrupt data (no logical check)

 type: 214 format: 1 rdba: 0x0228dbe9

Bad header found during media recovery

 last change scn: 0xed57.ca4f7559 seq: 0x9b flg: 0x4a

Data in bad block:

 spare1: 0x97 spare2: 0x77 spare3: 0x2bab

 type: 33 format: 6 rdba: 0x018d584a

 consistency value in tail: 0x359f90d6

 last change scn: 0xaeb8.2fa361eb seq: 0x60 flg: 0x92

 check value in block header: 0x6b26

 spare1: 0xea spare2: 0xe spare3: 0xb405 block checksum disabled

Reread (file 3, block 4) found same corrupt data (no logical check)

Corrupt block relative dba: 0x0b800e61 (file 46, block 3681)

Bad header found during media recovery

Data in bad block:

 type: 131 format: 6 rdba: 0xc7edd0fc

 last change scn: 0xd319.d0e54941 seq: 0x6f flg: 0x6d

 spare1: 0xe7 spare2: 0x82 spare3: 0x439f

 consistency value in tail: 0x18dc47b6

 check value in block header: 0xe9c8

 computed block checksum: 0x204d

Reread (file 46, block 3681) found same corrupt data (no logical check)

Hex dump of (file 1, block 2017) in trace file /u01/app/oracle/diag/rdbms/his/his/trace/his_pr10_52699.trc

Corrupt block relative dba: 0x004007e1 (file 1, block 2017)

Bad header found during media recovery

Data in bad block:

 type: 159 format: 2 rdba: 0x52c5b2b0

 last change scn: 0x2ed8.e0bc5af9 seq: 0x62 flg: 0xe9

 spare1: 0x81 spare2: 0x1e spare3: 0xda98

 consistency value in tail: 0xc5753dd3

 check value in block header: 0x2bba

 block checksum disabled

Reading datafile '/u01/app/oracle/oradata/system01.dbf' for corruption at rdba: 0x004007e1 (file 1, block 2017)

Reread (file 1, block 2017) found same corrupt data (no logical check)

Media Recovery failed with error 742

Errors in file /u01/app/oracle/diag/rdbms/his/his/trace/his_pr00_52622.trc:

ORA-00283: recovery session canceled due to errors

ORA-00742: Log read detects lost write in thread %d sequence %d block %d

ORA-00312: online log 7 thread 1: '/u01/app/oracle/oradata/redo07.log'

ORA-10877 signalled during: ALTER DATABASE RECOVER  database  ...

尝试强制打开数据库报ORA-600 krsi_al_hdr_update.15,参考:Oracle断电故障处理中有类似报错

SQL> alter database open resetlogs;

alter database open resetlogs

*

ERROR at line 1:

ORA-00600: internal error code, arguments: [krsi_al_hdr_update.15],

[4294967295], [], [], [], [], [], [], [], [], [], []

由于redo问题无法resetlogs成功,解决异常redo,再次尝试open库,由于undo坏块无法open成功

SQL> alter database open resetlogs;

alter database open resetlogs

*

ERROR at line 1:

ORA-01092: ORACLE instance terminated. Disconnection forced

ORA-01578: ORACLE data block corrupted (file # 3, block # 1848)

ORA-01110: data file 3: '/u01/app/oracle/oradata/undotbs01.dbf'

Process ID: 55655

Session ID: 2623 Serial number: 5

解决undo异常,数据库open成功.导出客户需要数据,完成此次恢复工作

这篇关于勒索解密后oracle无法启动故障处理----惜分飞的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/429434

相关文章

如何解决mmcv无法安装或安装之后报错问题

《如何解决mmcv无法安装或安装之后报错问题》:本文主要介绍如何解决mmcv无法安装或安装之后报错问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录mmcv无法安装或安装之后报错问题1.当我们运行YOwww.chinasem.cnLO时遇到2.找到下图所示这里3.

Oracle数据库常见字段类型大全以及超详细解析

《Oracle数据库常见字段类型大全以及超详细解析》在Oracle数据库中查询特定表的字段个数通常需要使用SQL语句来完成,:本文主要介绍Oracle数据库常见字段类型大全以及超详细解析,文中通过... 目录前言一、字符类型(Character)1、CHAR:定长字符数据类型2、VARCHAR2:变长字符数

Python FastAPI+Celery+RabbitMQ实现分布式图片水印处理系统

《PythonFastAPI+Celery+RabbitMQ实现分布式图片水印处理系统》这篇文章主要为大家详细介绍了PythonFastAPI如何结合Celery以及RabbitMQ实现简单的分布式... 实现思路FastAPI 服务器Celery 任务队列RabbitMQ 作为消息代理定时任务处理完整

C#使用SQLite进行大数据量高效处理的代码示例

《C#使用SQLite进行大数据量高效处理的代码示例》在软件开发中,高效处理大数据量是一个常见且具有挑战性的任务,SQLite因其零配置、嵌入式、跨平台的特性,成为许多开发者的首选数据库,本文将深入探... 目录前言准备工作数据实体核心技术批量插入:从乌龟到猎豹的蜕变分页查询:加载百万数据异步处理:拒绝界面

Springboot处理跨域的实现方式(附Demo)

《Springboot处理跨域的实现方式(附Demo)》:本文主要介绍Springboot处理跨域的实现方式(附Demo),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不... 目录Springboot处理跨域的方式1. 基本知识2. @CrossOrigin3. 全局跨域设置4.

python+opencv处理颜色之将目标颜色转换实例代码

《python+opencv处理颜色之将目标颜色转换实例代码》OpenCV是一个的跨平台计算机视觉库,可以运行在Linux、Windows和MacOS操作系统上,:本文主要介绍python+ope... 目录下面是代码+ 效果 + 解释转HSV: 关于颜色总是要转HSV的掩膜再标注总结 目标:将红色的部分滤

SpringBoot启动报错的11个高频问题排查与解决终极指南

《SpringBoot启动报错的11个高频问题排查与解决终极指南》这篇文章主要为大家详细介绍了SpringBoot启动报错的11个高频问题的排查与解决,文中的示例代码讲解详细,感兴趣的小伙伴可以了解一... 目录1. 依赖冲突:NoSuchMethodError 的终极解法2. Bean注入失败:No qu

Python实现自动化接收与处理手机验证码

《Python实现自动化接收与处理手机验证码》在移动互联网时代,短信验证码已成为身份验证、账号注册等环节的重要安全手段,本文将介绍如何利用Python实现验证码的自动接收,识别与转发,需要的可以参考下... 目录引言一、准备工作1.1 硬件与软件需求1.2 环境配置二、核心功能实现2.1 短信监听与获取2.

Python使用date模块进行日期处理的终极指南

《Python使用date模块进行日期处理的终极指南》在处理与时间相关的数据时,Python的date模块是开发者最趁手的工具之一,本文将用通俗的语言,结合真实案例,带您掌握date模块的六大核心功能... 目录引言一、date模块的核心功能1.1 日期表示1.2 日期计算1.3 日期比较二、六大常用方法详

电脑win32spl.dll文件丢失咋办? win32spl.dll丢失无法连接打印机修复技巧

《电脑win32spl.dll文件丢失咋办?win32spl.dll丢失无法连接打印机修复技巧》电脑突然提示win32spl.dll文件丢失,打印机死活连不上,今天就来给大家详细讲解一下这个问题的解... 不知道大家在使用电脑的时候是否遇到过关于win32spl.dll文件丢失的问题,win32spl.dl