Рабочие документы или личные данные, база клиентов или семейные фотографии — все это нужно защищать от чужих глаз, особенно на ноутбуке, который легко забыть в кофейне или такси.
Можно поставить пароль на вход в систему, но это как ставить копеечный замок на амбарные ворота — такая защита очень легко обходится сбросом пароля или загрузкой с внешнего носителя. Полнодисковое шифрование, такое как TrueCrypt или Bitlocker, защищает гораздо лучше, но этот способ не очень удобный, потому что мало кто захочет по нескольку раз в день тратить время на включение и отключение шифрования.
Существует промежуточный вариант — защитить данные средствами самого жесткого диска. Для этого в меню BIOS на диск ставится пароль, который запрашивается при каждом включении компьютера. Без пароля злоумышленник не сможет получить доступ к данным, даже если достанет диск из ноутбука.
Предупреждение: редакторы PRO32 не рекомендует неопытным пользователям шифровать и ставить пароли на жесткие диски. Существует риск забыть или потерять пароль и навсегда лишиться доступа к данным. Используйте нашу инструкцию с умом, изучайте в ознакомительных целях и не забывайте о резервном копировании.
Как работает парольная защита диска?
Для того, чтобы парольная защита работала, нужна поддержка как со стороны диска, так и со стороны ноутбука.
Все современные 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. Рассмотрим процедуру сброса пароля через эту.
При запуске и определении диска, видим, что накопитель защищен паролем:

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


И считываем модуль №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 надежнее защищают данные, хотя и с меньшими удобствами, но это тема для отдельной статьи.