Шифрування диска

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до навігації Перейти до пошуку

Шифрування диска — технологія захисту інформації, яка переводить дані на диску в  код, який не читається і який нелегальний користувач не зможе легко розшифрувати. Для шифрування диска використовується спеціальне програмне або апаратне забезпечення, яке зашифровує кожен біт сховища.

Вираз англ. full disk encryption (FDE) зазвичай означає, що все на диску знаходиться в зашифрованому вигляді, в тому числі і завантажувальні системні розділи.

Класифікація[ред. | ред. код]

На ринку є безліч реалізацій повного шифрування диска, вони можуть дуже сильно розрізнятися за можливостями й захищеністю, їх можна розділити на програмні та апаратні.[1] Апаратні у свою чергу можна розділити на ті, що реалізовані в самому пристрої зберігання, й інші, наприклад, адаптер шини.

Апаратно реалізовані системи повного шифрування всередині диска, називаються самозашифрованими (Self-Encrypted Drive — SED). На відміну від програмно-реалізованого FDE, SED більш продуктивний.[2] Більш того, ключ шифрування ніколи не покидає пристрою, а значить не доступний вірусам в операційній системі.

Для самозашифрованих дисків існує Trusted Computing Group[en] Opal Storage Specification[en], яка надає прийняті в галузі стандарти.

Прозоре шифрування[ред. | ред. код]

Прозоре шифрування (англ. Transparent encryption), також називається шифруванням в реальному часі (англ. real-time encryption) або шифрування на льоту (on-the-fly encryption) — це метод, що використовує яке-небудь програмне забезпечення для шифрування диска[3]. Слово «прозорий» означає, що дані автоматично зашифровуються або розшифровуються при читанні або записі, для чого зазвичай потрібна робота з драйверами, для встановлення яких необхідні спеціальні права доступу. Однак деякі FDE після установки й налаштування адміністратором дозволяють звичайним користувачам шифрувати диски[4].

Існує кілька способів організації прозорого шифрування: шифрування розділів і шифрування на рівні файлів. Прикладом першого може бути шифрування диска, другого — файлова система (EFS). У першому випадку, вся файлова система на диску знаходиться в зашифрованому вигляді (назви папок, файлів, їх вміст і метадані), і без коректного ключа не можна отримати доступ до даних. У другому, шифруються тільки дані вибраних файлів.

Шифрування диска і шифрування на рівні файлової системи[ред. | ред. код]

Шифрування на рівні файлової системи (англ. filesystem-level encryption — FLE) — процес шифрування кожного файлу в сховище. Доступ до зашифрованих даних можна отримати тільки після успішної аутентифікації. Деякі операційні системи мають власні додатки для FLE, при цьому доступно й безліч реалізацій від сторонніх розробників. FLE прозоро, це означає, що кожен, хто має доступ до файлової системи, може переглядати назви та метадані зашифрованих файлів, якими може скористатися зловмисник.[5]

Шифрування на рівні файлової системи відрізняється від повного шифрування диска. FDE захищає дані до тих пір, поки користувач не пройде завантаження, так що у разі втрати або крадіжки диска дані будуть для зловмисника недоступні, якщо ж під час роботи диск розшифрований і зловмисник отримав доступ до вашого комп'ютера, він отримує доступ до всіх файлів у сховищі. FLE ж захищає до тих пір, поки користувач не пройде аутентифікацію для конкретного файлу, при роботі з одним файлом решта  так само зашифровані, тому FLE може бути використаний разом з повним шифруванням для більшої безпеки.[6]

Ще одна важлива відмінність полягає в тому, що FDE автоматично шифрує всі дані на диску у той час, як FLE не захищає дані зовні зашифрованих файлів і папок, тому часові і swap файли можуть містити не зашифровану інформацію.

Шифрування диска і Trusted Platform Module[ред. | ред. код]

Trusted Platform Module (TPM) — це безпечний криптопроцессор, вбудований в материнську плату, який може бути використаний для аутентифікації апаратних пристроїв. Так само він може зберігати великі двійкові дані, наприклад, секретні ключі й пов'язувати їх з конфігурацією цільової системи, в результаті чого вони будуть зашифровані, і розшифрувати їх можна буде тільки на вибраному пристрої.[7]

Є як FDE, використовують TPM, наприклад, BitLocker, так і ті, які не підтримують роботу з ним, наприклад TrueCrypt.[8]

Повне шифрування і головний завантажувальний запис[ред. | ред. код]

При установці програмно-реалізованого FDE на завантажувальний диск операційної системи, яка використовує головний завантажувальний запис (англ. master boot record, MBR), FDE повинен перенаправляти MBR на спеціальне передзавантажене середовище (англ. pre-boot environment, PBE), для здійснення передзавантажувальної аутентифікації (англ. Pre-Boot Authentication, PBA). Тільки після проходження PBA буде розшифровано завантажувальний сектор операційної системи. Деякі реалізації надають можливість PBA по мережі[9]

Однак, зміна процесу завантаження може привести до проблем. Наприклад, це може перешкодити здійсненню мультизавантаження або призвести до конфлікту з програмами, які зазвичай зберігають свої дані в дисковий простір, де, після установки FDE, буде розташована PBE. Так само це може перешкодити пробудженню за сигналом з локальної мережі, так як перед завантаженням потрібно PBA. Деякі реалізації FDE можна налаштувати так, щоб вони пропускали PBA, але це створює додаткові проблеми, якими може скористатися зловмисник. Даних проблем не виникає при використанні самозашифрованих дисків.[10]

Механізми відновлення пароля/даних[ред. | ред. код]

Для систем шифрування дисків необхідні безпечні та надійні механізми відновлення даних. Реалізація повинна надавати простий і безпечний спосіб відновлення паролів (найбільш важливу інформацію) у разі, якщо користувач забуде.

Більшість реалізацій пропонують рішення на основі пароля користувача. Наприклад, якщо є захищений комп'ютер, то він може надіслати користувачу, який забув пароль, спеціальний код, що він використовує для доступу до сайту відновлення даних. Сайт поставить користувачеві секретне питання, на яке він раніше давав відповідь, після чого йому буде висланий пароль або одноразовий код відновлення даних. Це так само може бути реалізовано зверненням до служби підтримки.[11]

Інші підходи до відновлення даних, як правило складніші. Деякі FDE надають можливість самому, без зверненнядо служби підтримки, відновити дані. Наприклад, використовуючи смарт-карти або криптографічні токени. Так само є реалізації, які підтримують локальний механізм відновлення даних "запитання-відповідь". Але такі підходи зменшують захищеність даних, тому багато компаній не дозволяють використовувати їх. Втрата аутентифікатора може призвести до втрати доступу до даних або до доступу зловмисника до них[12].

Проблеми безпеки[ред. | ред. код]

Більшість програмно реалізованих систем повного шифрування уразливі для атаки методом холодного перезавантаження, за допомогою якого ключі можуть бути вкрадені.[13] Атака заснована на тому, що дані в оперативній пам'яті можуть зберігатися до декількох хвилин після вимикання комп'ютера. Час збереження можна збільшити охолодженням пам'яті.[14] Системи, що використовують TPM, теж нестійкі до такої атаки, так як ключ, необхідний операційній системі для доступу до даних,  зберігається в оперативній пам'яті.[15]

Програмні реалізації так само складно захистити від апаратних кейлогерів. Є реалізації, здатні їх виявити, але вони апаратно-залежні.[16]

Див. також[ред. | ред. код]

Примітки[ред. | ред. код]

  1. Self-Encrypting Disks pose Self-Decrypting Risks. How to break Hardware-based Full Disk Encryption, 2012, с. 1.
  2. B. Bosen: FDE Performance Comparison. Hardware Versus Software Full Drive Encryption, 2010, с. 9.
  3. А. М. Коротин: О СПОСОБАХ РЕАЛИЗАЦИИ ПРОЗРАЧНОГО ШИФРОВАНИЯ ФАЙЛОВ НА БАЗЕ СЕРТИФИЦИРОВАННОГО СКЗИ ДЛЯ ОПЕРАЦИОННОЙ СИСТЕМЫ LINUX, 2012, с. 62.
  4. File System Encryption with Integrated User Management, 2001, с. 1.
  5. K. Scarfone, M. Souppaya, M Sexton: Guide to Storage Encryption Technologies for End User Devices, 2007, с. 3-4.
  6. K. Scarfone, M. Souppaya, M Sexton: Guide to Storage Encryption Technologies for End User Devices, 2007, с. 3-5 - 3-6.
  7. J. Winter: Eavesdropping Trusted Platform Module Communication, 2009, с. 2-3.
  8. Stark Tamperproof Authentication to Resist Keylogging, 2013, с. 3.
  9. K. Scarfone, M. Souppaya, M Sexton: Guide to Storage Encryption Technologies for End User Devices, 2007, с. 3-1.
  10. K. Scarfone, M. Souppaya, M Sexton: Guide to Storage Encryption Technologies for End User Devices, 2007, с. 3-2 - 3-3.
  11. K. Scarfone, M. Souppaya, M Sexton: Guide to Storage Encryption Technologies for End User Devices, 2007, с. 4-5.
  12. K. Scarfone, M. Souppaya, M Sexton: Guide to Storage Encryption Technologies for End User Devices, 2007, с. 4-6.
  13. Stark Tamperproof Authentication to Resist Keylogging, 2013, с. 12.
  14. Lest We Remember: Cold Boot Attacks on Encryption Keys, 2008, с. 5.
  15. Lest We Remember: Cold Boot Attacks on Encryption Keys, 2008, с. 12.
  16. Stark Tamperproof Authentication to Resist Keylogging, 2013, с. 13.

Література[ред. | ред. код]

  • K. Scarfone, M. Souppaya, M. Sexton. {{{Заголовок}}}.
  • А. М. Коротин. . — № 2012-2.
  • B. Bosen. .
  • Stefan Ludwig, Prof. Dr. Winfried Kalf. .
  • Tilo Müller, Tobias Latzo, Felix C. Freiling. .
  • Tilo Müller, Hans Spath, Richard M¨ackl, Felix C. Freiling. .
  • J. Winter. .
  • J. Alex Halderman, Seth D. Schoen, Nadia Heninger, William Clarkson, William Paul, Joseph A. Calandrino, Ariel J. Feldman, Jacob Appelbaum, Edward W. Felten. .
  • Poul-Henning Kamp. .

Посилання[ред. | ред. код]