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

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

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

Зміст

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

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

Для дисків, що самошифруються, існує Trusted Computing Group (англ.) Opal Storage Specification (OPAL) (англ.), яка надає прийняті в галузі стандарти.

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

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

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

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

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

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

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

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

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

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

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

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