У меня есть задача восстановить файлы .mdf с зашифрованного VHD. Система была атакована вымогателями, но с профессиональным прошлым.
Злоумышленник удалил все резервные копии, низкоуровневые все онлайн-резервные копии, к сожалению, автономных резервных копий не было.
Моя текущая задачаэто попытаться восстановить файлы mssql .mdf.
Итак, я восстановил около 40 файлов .mdf, но они повреждены, включая файлы журналов (.mdl).
Я сравнил разныеЗаголовки файлов mdf, чтобы получить «волшебный байт» из этих файлов для монтирования их в системе.
, поэтому после сравнения 3 файлов все 3 сравниваемых файла выглядят как заголовок:
magic = b'\x01\x0F\x00\x00\x08\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x63\x00\x00\x00'
У меня есть несколько mdf-файлов, но заголовок, похоже, отсутствует.
Итак, чтобы перейти к моему вопросу:
как я могу прочитать двоичный файл, как каналв питоне? я хочу начать чтение файла со смещения 0x0, сопоставить его с магией сверху, прочитать следующий байт, снова сопоставить его с магией и т. д.
Я буду открыт для других идей ...