18 декабря 2020 10573

Неприступная крепость. Как поставить пароль на жесткий диск

Рабочие документы или личные данные, база клиентов или семейные фотографии — все это нужно защищать от чужих глаз, особенно на ноутбуке, который легко забыть в кофейне или такси.

Можно поставить пароль на вход в систему, но это как ставить копеечный замок на амбарные ворота — такая защита очень легко обходится сбросом пароля или загрузкой с внешнего носителя. Полнодисковое шифрование, такое как TrueCrypt или Bitlocker, защищает гораздо лучше, но этот способ не очень удобный, потому что мало кто захочет по нескольку раз в день тратить время на включение и отключение шифрования.


Существует промежуточный вариант — защитить данные средствами самого жесткого диска. Для этого в меню BIOS на диск ставится пароль, который запрашивается при каждом включении компьютера. Без пароля злоумышленник не сможет получить доступ к данным, даже если достанет диск из ноутбука.

Предупреждение: редакция ESET Russia не рекомендует неопытным пользователям шифровать и ставить пароли на жесткие диски. Существует риск забыть или потерять пароль и навсегда лишиться доступа к данным. Используйте нашу инструкцию с умом, изучайте в ознакомительных целях и не забывайте о резервном копировании.



Как работает парольная защита диска?

Для того, чтобы парольная защита работала, нужна поддержка как со стороны диска, так и со стороны ноутбука.

Все современные SATA-диски (как HDD, так и SSD) поддерживают парольную защиту, а именно следующий набор Security-команд:

  • SECURITY_SET_PASSWORD — задать пароль и установить защиту;
  • SECURITY_UNLOCK — разблокировать диск до выключения;
  • SECURITY_DISABLE_PASSWORD — снять защиту;
  • SECURITY_ERASE — стереть диск;
  • SECURITY_FREEZE_LOCK — заблокировать защиту.
Назначение последней команды может вызвать недоумение — зачем блокировать команды управления парольной защитой? Тем не менее это самая часто используемая команда из набора — она автоматически посылается операционной системой при подключении каждого SATA-диска. Это действие необходимо для того, чтобы никакой софт или вирус не поставил пароль без ведома пользователя.

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


Пока диск заблокирован, пользовательские данные нельзя прочитать. Можно узнать только «паспорт» диска, в котором указаны модель, серийный номер диска и другие его характеристики. На разблокировку дается от трех до пяти попыток, после чего диск необходимо выключать и включать. Общее количество попыток не ограничено.


Чаще всего функцию установки пароля на диск можно встретить в ноутбуках. Обычно эта опция располагается на вкладке Security меню BIOS:

Пароля для разблокировки будет запрашиваться при каждом включении ноутбука:

Интересный факт: пароль, который вводится с клавиатуры, может не иметь ничего общего с реальным паролем, который передается на диск. Так, на ноутбуках серии Thinkpad «реальный» пароль генерируется на основе пароля, введенного пользователем, и серийного номера самого диска.



Насколько надежна такая защита?

В стандарте SATA не описывается, как происходит проверка пароля и как он хранится в устройстве, поэтому у каждый производитель жестких дисков по-своему реализует технологию парольной защиты. Более того, помимо стандартных команд, в прошивку добавляют специальные служебные команды, которые нужны для заводской настройки, диагностики и ремонта диска.

Проблема в том, что служебные команды могут использовать для обхода парольной защиты. Например, во многих сервисах по восстановлению данных применяют комплекс AceLab PC3000, в число возможностей которого входит и сброс паролей:

Для некоторых моделей HDD есть и бесплатные решения. Например, WD Marvel для дисков фирмы Western Digital. Рассмотрим процедуру сброса пароля через эту.

При запуске и определении диска, видим, что накопитель защищен паролем:

Выбираем пункт Разное — Очистка паролей:

Пароль успешно сбрасывается. Кстати, его можно подсмотреть и вручную. Для этого выбираем RAM — Чтение/запись Static файлов:

И считываем модуль №2, в котором видим наш пароль:

Как можно заметить, в дисках WD пароль хранится в открытом виде. Но как уже упоминалось, стандарт не указывает способ хранения пароля, каждый производитель выбирает его сам. Например, в жестких дисках производства Samsung хранится только SHA-1 хеш-сумма пароля, в дисках Toshiba пароль зашифрован, а Seagate и Hitachi и вовсе запрещают использование сервисных команд при установленном пароле, что значительно усложняет взлом.

Интересный факт: в дисках Toshiba пароль зашифрован алгоритмом, использующим в качестве ключа следующий текст:

На японском языке это примерно означает «Надеюсь, это никогда не взломают. А, ладно, я перехожу работать в TOKO. Всего хорошего!» Такая вот пасхалка от разработчика.

Так или иначе, на большинстве дисков с помощью того же PC-3000 пароль можно узнать или сбросить, получив доступ к данным. Но существуют диски, для которых пароль нельзя сбросить или обойти — SED.



Самошифруемые диски (SED)

На большинстве накопителей парольную защиту можно сравнить с замком на воротах, сломав или обойдя такой «замок», злоумышленник получает доступ к данным. Совсем другое дело, когда данные зашифрованы и без корректного пароля доступ получить невозможно в принципе.

Именно так устроены самошифруемые диски (SED) стандарта OPAL:

  • данные всегда хранятся зашифрованными (даже когда защита выключена);
  • при чтении/записи шифрование происходит на диске на лету;
  • ключ шифрования данных (MEK) хранится в зашифрованном виде;
  • ключ шифрования ключа (KEK) задается пользователем.

В результате без правильного пароля можно считать только зашифрованные данные. А двойная схема шифрования позволяет в мгновение ока стереть диск — достаточно удалить ключ шифрования данных (MEK). Без него не удастся получить доступ к данным даже зная пользовательский ключ.

В отличие от SATA-пароля, когда сам BIOS запрашивает пароль у пользователя и передает диску, при шифровании системного диска в стандарте OPAL используется двухэтапная схема загрузки:

  • с небольшого «открытого» раздела диска загружается программа авторизации (PBA);

  • пользователь вводит пароль разблокировки;
  • компьютер перезагружается и запускается с разблокированного диска.
Основная сложность заключается в настройке. Нужно не только задать пароль с помощью специальной утилиты, но и записать загрузчик с программой авторизации (PBA) в специальный раздел диска. Наиболее подробная инструкция по настройке OPAL, как ни странно, находится на странице проекта Astra Linux.

К сожалению, даже наличие заявленной поддержки стандарта OPAL не гарантирует надежность хранения данных. Каждый производитель самостоятельно реализует и тестирует функции шифрования, что не гарантирует отсутствие ошибок в алгоритмах (да и вообще наличие самого шифрования). Например, голландские исследователи в 2018 году показали несовершенство методов внутридискового шифрования. Согласно результатам тестирования, с некоторых SSD дисков можно считать данные даже при активном шифровании:



Подводим итоги

С одной стороны, встроенные в современные накопители средства защиты обладают недостатками — пароль на SATA-диске можно обойти, некоторые шифрованные SED-диски можно расшифровать без пароля. С другой — наличие дополнительной защиты данных, подобно дополнительному замку на двери, усложняет доступ злоумышленнику.

Программные средства полнодискового шифрования TrueCrypt и Bitlocker надежнее защищают данные, хотя и с меньшими удобствами, но это тема для отдельной статьи.

Комментарии

0
Оставьте комментарий!