Розгортання ключів дешифрування для eCryptfs у Linux або шифрування на базі Synology Vault
Сучасні системи шифрування розроблені для захисту конфіденційних файлів можуть створювати серйозні труднощі у ситуаціях, коли потрібно виконати відновлення даних або провести цифрову криміналістичну експертизу. Одна з можливих проблем полягає в тому, що фактичні ключі, які використовувалися для шифрування та дешифрування дек або файлів, не зберігаються на диску як звичайні файли. Натомість вони можуть бути захищені за допомогою додаткового рівня шифрування, відомого як "загортання паролю". У таких випадках, навіть якщо фізичне сховище не було пошкоджене та був введений дійсний пароль користувача, зашифрований вміст все ще може залишатися недоступним, допоки закодований ключ не буде належним чином "розгорнутий". Маючи глибоке розуміння основних схем загортання, UFS Explorer здатний обробляти та інтерпретувати файли загорнутих ключів, зокрема ті, що генеруються eCryptfs під Linux або шифруванням LUKS на базі Vault від Synology. Розкриваючи оригінальні ключі шифрування, програмне забезпечення дозволяє фахівцям отримати доступ до зашифрованих даних, які в іншому разі залишалися б недоступними.
Розгортання пароля в UFS Explorer
В сучасних технологіях шифрування практика загортання ключів шифрування не є чимось незвичайним. Наприклад, у разі увімкненого за замовчуванням шифрування директорії home під Linux, справжній ключ шифрування генерується системою випадковим чином. Потім цей ключ загортається (тобто шифрується) за допомогою пароля користувача для входу та зберігається в зашифрованому вигляді у спеціальному файлі ключа, який зазвичай називається "wrapped-passphrase" і розташовується у ~/.ecryptfs/. Тож щоб отримати доступ до зашифрованого тому, недостатньо лише ввести пароль користувача: потрібно виконати спеціальну процедуру розгортання, щоб отримати фактичний ключ дешифрування.
На противагу цьому, спрощений механізм на основі eCryptfs (який використовується у NAS від Asustor та у старіших моделях пристроїв від Synology під керуванням DSM 7.1 та попередніх версій) дозволяє розблокувати зашифровану спільну папку, використовуючи лише пароль користувача. Проте якщо пароль загубився, а NAS не завантажується, єдиним життєздатним рішенням є спробувати отримати пароль з резервної копії файлу ключа (наприклад, *.key або keystore), що знов-таки вимагає проведення процедури розгортання.
Подібний до вищезгаданого запатентований механізм застосовується в новіших пристроях NAS від Synology. У них вміст зашифрованого тому захищений за допомогою LUKS з випадково згенерованим ключем шифрування AES. Потім цей ключ шифрується (загортається) за допомогою призначеного користувачем пароля і зберігається в спеціальному контейнері Encryption Key Vault разом з метаданими, потрібними для його розгортання. Користувач також може експортувати ключ шифрування у форматі Base64 як файл *.rkey, який пізніше можна використовувати для розшифрування. Однак, якщо файл *.rkey відсутній і його неможливо відновити, самого лише пароля недостатньо для отримання доступу до даних: необхідно також опрацювати файли загорнутого ключа та Vault, щоб отримати фактичний ключ шифрування.
Редакції Professional та Technician UFS Explorer пропонують спеціальні інструменти, які дозволяють фахівцям з відновлення даних витягувати придатні для використання ключі шифрування з файлів загорнутих ключів, що надаються eCryptfs у Linux та шифруванням LUKS на базі Vault від Synology. Це суттєво спрощує розблокування зашифрованого вмісту для проведення подальшого відновлення даних або цифрової криміналістичної експертизи.
Для розгортання ключів потрібні наступні дані:
Для зашифрованої директорії /home у Linux:
- Файл "wrapped-passphrase" (зазвичай розташований у ~/.ecryptfs/);
- Пароль користувача (парольна фраза для входу).
Для Synology NAS з DSM 7.2+ (шифрування LUKS на основі Vault):
- Файл конфігурації Vault (vault_passwd.info);
- Файл загорнутого ключа шифрування (*.wkey);
- Пароль, який використовувався під час створення зашифрованого тому.
Для Asustor NAS та застарілих пристроїв Synology (шифрування на основі eCryptfs):
- Резервний файл ключа (*.key або keystore).
Ця функція доступна в UFS Explorer через опцію "Розгортка паролю" з меню "Інструменти".
У вікні цього інструменту користувачеві пропонується список утиліт для розгортання. Вибір відповідного варіанту відкриває діалогове вікно, призначене для роботи з обраним типом шифрування.
У випадку eCryptfs користувачеві потрібно вказати шлях до файлу загорнутого ключа, вибрати відповідне кодування пароля, ввести пароль для розгортання та натиснути "Розгорнути", щоб побачити фактичний ключ шифрування.
Коли йдеться про спрощену реалізацію eCryptfs на пристрої NAS, пароль загортання за замовчуванням можна обрати зі спадного списку.
У разі Synology Vault користувач має завантажити файли загорнутого ключа та конфігурації Vault, вибрати відповідне кодування пароля, ввести пароль Vault та натиснути кнопку "Розгорнути", щоб отримати ключ для розшифрування.
Розшифрування зашифрованої папки home у Linux
На прикладі нижче продемонстровано, як функцію розгортання ключів у UFS Explorer можна застосувати для відновлення зашифрованої директорії home під операційною системою Linux.
У цьому випадку клієнт втратив доступ до своєї інсталяції Ubuntu через раптову втрату живлення. Внаслідок інциденту деякі важливі документи залишилися заблокованими в каталозі /home, який був за замовчуванням зашифрований за допомогою eCryptfs. Клієнт погодився надати правильний пароль до свого системного облікового запису.
Тож наш спеціаліст створив образ з витягнутого з комп'ютера клієнта диска та відкрив його в UFS Explorer для подальшого опрацювання.
Зашифровані дані знаходяться в папці .ecryptfs, а саме в підпапці .Private каталогу home користувача (у нашому прикладі ім'я користувача - "test").
Всередині .ecryptfs знаходиться важливий файл під назвою "wrapped-passphrase", який містить фактичний ключ шифрування, загорнутий (зашифрований) за допомогою пароля для входу користувача.
Цей файл "wrapped-passphrase" потрібно скопіювати до безпечного місця для того, щоб у майбутньому мати змогу знов отримати оригінальний ключ шифрування.
Після цього ми спочатку клікаємо на опцію "Розгортка паролю" в меню "Інструменти", а потім на "Розгортка паролю eCryptfs".
У діалоговому вікні, що відкриється, потрібно завантажити файл wrapped-passphrase через параметр "Шлях до файла ключа" та ввести пароль користувача для входу у поле поруч з параметром "Пароль згортки".
Щойно ми натиснемо кнопку "Розгорнути", ключ розшифрування з'явиться у відповідному полі і його можна буде скопіювати до буфера обміну.
Тепер ми можемо виконати стандартну процедуру розшифрування eCryptfs, скориставшись функцією "Застосувати перетворення файлів", доступною у контекстному меню об'єкта зашифрованої файлової системи.
У новому діалоговому вікні ми вставляємо скопійований розгорнутий ключ у поле "Пароль декодування" та встановлюємо значення 128 біт для параметра "Довжина ключа для імен файлів", що відповідає налаштуванням шифрування, які використовуються у eCryptfs.
Після натискання на "Так" у UFS Explorer відкривається нова вкладка "Тому фільтра eCryptfs", що надає доступ до розшифрованого вмісту папки home клієнта. Тож ми можемо розпочати відновлення важливих документів.
Розблокування NAS від Synology, зашифрованого за допомогою LUKS на базі Vault
Наведемо ще один приклад застосування цієї функції на практиці. Цього разу йдеться про сучасний пристрій NAS від Synology з конфігурацією LUKS на базі Vault.
Клієнт використовував Synology DS3622xs NAS під керуванням DSM 7.2 з увімкненим шифруванням тому. У NAS стався апаратний збій, через що сховище стало недоступним. Проте жорсткі диски залишилися неушкодженими. Клієнт пам'ятає пароль шифрування, але не має експортованого файлу *.rkey, який міг би суттєво спростити процес розшифрування.
Наш фахівець розпочав свою роботу зі створення образів дисків NAS з наступним їх відкриттям у програмі UFS Explorer. Ці образи потрібні, щоб відтворити структуру сховища та зібрати файли, необхідні для розгортання ключа.
Спочатку ми знаходимо файл конфігурації Vault з назвою vault_passwd.info, який знаходиться у системному розділі за адресою /usr/syno/etc/encvol/<vault_UUID>/.
Далі ми шукаємо файл загорнутого ключа з розширенням *.wkey. Він відповідає формату іменування <volume>_vp.wkey та зберігається у /usr/syno/etc/encvol/<vault_UUID>/key_vault/.
Для зручності ми зберігаємо весь каталог <vault_UUID>.
Тепер ми можемо скористатися опцією "Розгортка паролю" з меню "Інструменти" в UFS Explorer.
У новому діалоговому вікні ми вибираємо "Розгортка ключа Synology Vault".
Потім вказуємо шляхи як до файлу конфігурації Vault, так і до файлу загорнутого ключа, та вводимо встановлений користувачем пароль для шифрування тому у поле "Пароль Vault".
Після натискання на кнопку "Розгорнути" UFS Explorer витягне ключ для розшифрування тому. Цей ключ еквівалентний тому, що зберігається у файлі *.rkey, але представлений у шістнадцятковому форматі замість Base64.
Скопіювавши ключ у шістнадцятковому форматі, ми відкриваємо інструмент UFS Explorer для розшифрування LUKS.
У вікні інструмента вставляємо отриманий ключ у поле "Пароль" і переконуємося, що для параметра "Перетворення пароля" встановлене значення "Декодувати шістнадцяткові дані", щоб програмне забезпечення правильно його інтерпретувало.
З введеним розшифрованим ключем зашифрований том успішно розблоковується, що дозволяє нам виконати відновлення даних клієнта.
Останнє оновлення: 06 серпня 2025 року