Как я могу предоставить устройства разделов диска для дискового образа (не монтировать)

Вопрос или проблема

У меня есть сырой образ диска, на котором находятся четыре зашифрованных раздела LUKS.

Я использую bruteforce-luks, чтобы попытаться восстановить пароль. Мне нужно иметь возможность указать путь к (началу) каждого раздела (а не только к началу образа диска).

Очевидно, я не могу смонтировать эти разделы, потому что не помню пароль.

Я мог бы восстановить сырой образ на реальный диск, а затем использовать соответствующее устройство /dev/sd?{1-4}, но у меня нет необходимого оборудования.

Мне удалось передать сырой образ виртуальной машине в качестве диска, и это работает, но виртуальная машина очень медленная (30 паролей в секунду), потому что не может использовать графический процессор.

Мне нужен прозрачный способ указать пути к отдельным разделам внутри сырого образа, чтобы я мог предоставить эти пути инструменту.

Как я могу это сделать?

Ответ или решение

Для решения задачи о предоставлении путей к разделам в образе диска, содержащем зашифрованные LUKS-разделы, можно использовать несколько подходов. Важно понимать, что мы работаем с образами диска, и поскольку доступ к данным на этих разделах ограничен из-за шифрования, мы не можем их смонтировать. Однако, существует один из эффективных методов, который позволяет предоставить устройства для отдельных разделов без необходимости монтирования.

1. Использование losetup для создания циклических устройств

Первый шаг состоит в использовании утилиты losetup, которая позволяет создать циклические устройства для отдельных разделов образа диска. Сначала необходимо узнать, где начинаются и заканчиваются разделы в вашем образе.

Определение начальных секторов разделов

Если вы не знаете границ разделов, воспользуйтесь следующей командой:

fdisk -lu /path/to/your/disk-image.img

Эта команда выдаст таблицу разделов, из которой можно извлечь информацию о начальных секторах и размерах каждого раздела.

Создание циклических устройств

Зная начальные позиции разделов, создайте циклические устройства для каждого из них. Например, если ваш LUKS-раздел начинается с 2048-го сектора и имеет размер 1024000 секторов:

losetup -f --show -o $((2048 * 512)) -s $((1024000 * 512)) /path/to/your/disk-image.img

Где:

  • -f — находит свободное устройство
  • --show — выводит имя созданного устройства
  • -o — смещение, указывающее, с какого байта начинать
  • -s — размер создаваемого устройства в байтах (можно использовать -s для указания размера)

После выполнения этой команды вы получите путь к циклическому устройству, например, /dev/loop0. В дальнейшем, этот путь можно использовать для работы с bruteforce-luks.

Повторение для каждого раздела

Повторите процесс для всех четырех разделов, подставляя соответствующие значения смещения и размера для каждого. В итоге у вас будет несколько устройств вида /dev/loop1, /dev/loop2 и т.д.

2. Установка bruteforce-luks

Теперь вы можете использовать bruteforce-luks, указывая каждое циклическое устройство как аргумент. Например:

bruteforce-luks -i /dev/loop0
bruteforce-luks -i /dev/loop1
...

Заключение

Используя метод циклических устройств через losetup, вы можете легко указать пути к разделам в образе диска. Это не требует монтирования и не влияет на скорость работы инструмента. Убедитесь, что у вас есть права доступа для выполнения этих операций, и следите за тем, чтобы не повредить ваш оригинальный файл образа. Подобная техника позволяет эффективно работать с зашифрованными данными и повышает эффективность подбора паролей в таких системах.

Оцените материал
Добавить комментарий

Капча загружается...