Шифрование диска (Onsjkfguny ;nvtg)

Перейти к навигации Перейти к поиску

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

Выражение 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[править | править код]

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].

Однако изменение процесса загрузки может привести к проблемам. Например, это может помешать осуществлению мультизагрузки или привести к конфликту с программами, которые обычно сохраняют свои данные в дисковое пространство, где, после установки FDE, будет расположена PBE. Также это может помешать пробуждению по сигналу из локальной сети, так как перед загрузкой требуется PBA. Некоторые реализации FDE можно настроить так, чтобы они пропускали PBA, но это создаёт дополнительные уязвимости, которыми может воспользоваться злоумышленник. Данных проблем не возникает при использовании самошифрующихся дисков[11]. В свою очередь, это не означает преимущество самошифрующихся дисков над остальными накопителями. Для сохранения мультизагрузки операционных систем разных семейств, необязательно настраивать программный процесс шифрования до инсталляции операционной системы: полное шифрование диска с сохранением мультизагрузки возможно применить при уже установленных системах.[12]

Механизмы восстановления пароля/данных[править | править код]

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

Большинство реализаций предлагают решения на основе пароля пользователя. К примеру, если есть защищённый компьютер, то он может отправить пользователю, забывшему пароль, специальный код, который он потом использует для доступа к сайту восстановления данных. Сайт задаст пользователю секретный вопрос, на который пользователь ранее давал ответ, после чего ему будет выслан пароль или одноразовый код восстановления данных. Это также может быть реализовано обращением к службе поддержки[13].

Другие подходы к восстановлению данных, как правило, сложнее. Некоторые FDE предоставляют возможность самому без обращения к службе поддержки восстановить данные. Например, используя смарт-карты или криптографические токены. Также есть реализации, поддерживающие локальный механизм восстановления данных «вопрос-ответ»[14]. Но такие подходы уменьшают защищённость данных, поэтому многие компании не разрешают использовать их. Утрата аутентификатора может привести к потере доступа к данным или к доступу злоумышленника к ним[15].

Проблемы безопасности[править | править код]

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

Программные реализации также сложно защитить от аппаратных кейлогеров. Есть реализации, способные их обнаружить, но они аппаратно зависимы[19].

См. также[править | править код]

Примечания[править | править код]

  1. 1 2 Self-Encrypting Disks pose Self-Decrypting Risks. How to break Hardware-based Full Disk Encryption, 2012, p. 1.
  2. Maxcrypto Techbrief. Дата обращения: 16 декабря 2015. Архивировано 4 марта 2016 года.
  3. B. Bosen: FDE Performance Comparison. Hardware Versus Software Full Drive Encryption, 2010, p. 9.
  4. 1 2 А. М. Коротин: О СПОСОБАХ РЕАЛИЗАЦИИ ПРОЗРАЧНОГО ШИФРОВАНИЯ ФАЙЛОВ НА БАЗЕ СЕРТИФИЦИРОВАННОГО СКЗИ ДЛЯ ОПЕРАЦИОННОЙ СИСТЕМЫ LINUX, 2012, p. 62.
  5. File System Encryption with Integrated User Management, 2001, p. 1.
  6. K. Scarfone, M. Souppaya, M Sexton: Guide to Storage Encryption Technologies for End User Devices, 2007, p. 3—4.
  7. 1 2 K. Scarfone, M. Souppaya, M Sexton: Guide to Storage Encryption Technologies for End User Devices, 2007, pp. 3—5 - 3-6.
  8. J. Winter: Eavesdropping Trusted Platform Module Communication, 2009, pp. 2—3.
  9. Stark Tamperproof Authentication to Resist Keylogging, 2013, p. 3.
  10. K. Scarfone, M. Souppaya, M Sexton: Guide to Storage Encryption Technologies for End User Devices, 2007, p. 3—1.
  11. K. Scarfone, M. Souppaya, M Sexton: Guide to Storage Encryption Technologies for End User Devices, 2007, pp. 3—2 - 3-3.
  12. Полнодисковое шифрование Windows Linux установленных систем. Зашифрованная мультизагрузка. habr.com. Архивировано 3 ноября 2021 года.
  13. K. Scarfone, M. Souppaya, M Sexton: Guide to Storage Encryption Technologies for End User Devices, 2007, p. 4—5.
  14. «Symantec: How Wholedisk Encryption Works, p. 3». Дата обращения: 6 декабря 2015. Архивировано 20 октября 2016 года.
  15. K. Scarfone, M. Souppaya, M Sexton: Guide to Storage Encryption Technologies for End User Devices, 2007, p. 4—6.
  16. Stark Tamperproof Authentication to Resist Keylogging, 2013, p. 12.
  17. Lest We Remember: Cold Boot Attacks on Encryption Keys, 2008, p. 5.
  18. Lest We Remember: Cold Boot Attacks on Encryption Keys, 2008, p. 12.
  19. Stark Tamperproof Authentication to Resist Keylogging, 2013, p. 13.

Литература[править | править код]

Ссылки[править | править код]