Проблема затрагивает модели SSD, поддерживающие аппаратное шифрование.
Специалисты университета Редбаунд (Нидерланды) обнаружили несколько уязвимостей в прошивках самошифруемых твердотельных накопителей (SSD) производства Micron (Crucial) и Samsung, позволяющих обойти функцию шифрования и скрыто получить доступ к данным без пароля. Проблема затрагивает исключительно модели SSD, поддерживающие аппаратное шифрование (шифрование с помощью встроенного чипа, отдельно от центрального процессора).
Уязвимости связаны с реализациями систем аутентификации ATA security (безопасность ATA) и TCG OPAL. Хотя проанализированные исследователями самошифруемые диски (self-encrypting drive, SED) позволяли пользователям устанавливать собственные пароли для дешифрования данных, все они поставлялись с так называемым «мастер-паролем», установленным производителем. Таким образом, злоумышленник, ознакомившийся с руководством пользователя, может легко обойти пользовательский пароль и получить доступ к данным. Для предотвращения подобной ситуации владельцам SSD потребуется либо переустановить мастер-пароль, либо выставить в настройках параметр «максимум» (деактивирует мастер-пароль).
You Need To Encrypt Your Drives! (Seriously…)
Однако вышеуказанная проблема оказалась далеко не единственной. Как выяснили эксперты, из-за некорректной реализации функций ATA security и TCG OPAL на уязвимых дисках отсутствует криптографическое связывание между пользовательским паролем и ключом шифрования диска.
Иными словами, злоумышленник может с помощью ключа шифрования, хранимого в чипе, расшифровать данные без необходимости использования пароля. В связи с ограниченным доступом к SSD специалисты протестировали только небольшое количество моделей твердотельных накопителей (Crucial MX100, Crucial MX200, Crucial MX300, Samsung 840 EVO, Samsung 850 EVO, Samsung T3 Portable и Samsung T5 Portable), все они оказались уязвимыми.
Оба производителя уже выпустили обновления прошивки, устраняющие указанные уязвимости. Особую опасность проблемы представляют для пользователей Windows, в частности из-за дефолтного поведения встроенной в ОС функции Windows BitLocker (технологии шифрования содержимого дисков компьютера). По словам исследователей, в случае с устройствами с поддержкой аппаратного шифрования приложение шифрует данные на уровне аппаратного обеспечения, а не программного. Это значит, что при применении уязвимых твердотельных накопителей от Crucial или Samsung многие пользователи BitLocker подвергают риску свои данные. Владельцы ПК на базе Windows могут настроить шифрование BitLocker на уровне ПО в групповых политиках, однако им придется отформатировать накопитель и сделать переустановку, поскольку старые данные останутся зашифрованными на аппаратном уровне даже после смены настроек.
Как удалить свой ЦИФРОВОЙ СЛЕД в интернете? Подпишитесь на наш ТГ канал и обретите свою цифровую свободу.
Источник: www.securitylab.ru
What are Self AES Encrypting Drives? Self-Encrypting Drives Simply Explained in English
Как начать использовать аппаратное шифрование SSD-диска на примере Samsung EVO 850 и программы sedutil
Это просто короткая подсказка, которую, я надеюсь, можно использовать и для других дисков со встроенным шифрованием (SED, self encrypting drives). Здесь нет глубокого разъяснения принципов и терминов.
Samsung EVO или PRO всегда хранит данные в зашифрованном (AES) виде, даже если вы ничего для этого не предпринимали. Просто, пока вы не включили защиту, он всегда эти данные возвращает расшифрованными. А когда включите защиту, потребует пароль для расшифровки. Это означает, что установка пароля не приведёт к тому, что скорость работы диска упадёт, всё шифровалось и без него. А также означает, что не придётся диск шифровать от начала до конца – он уже зашифрован.
Однако, нет никаких сведений о том, какой ключ шифрования используется. Возможно, он один и тот же для всех дисков модели, или, например, для тех, что поставляются к нам. И при серьёзных усилиях (например, перепаять кусок от диска-донора, в котором пароль не установлен) можно будет данные прочитать.
Но если вам просто, как и мне, неприятно, что кто-то может бесстыдно покопаться в данных украденного у вас или потерянного ноутбука, то предлагаемого метода вполне достаточно.
Закрыть данные на дисках Samsung EVO можно одним из трёх способов (не нужно пытаться их комбинировать, только сломаете всё):
1. установить пароль диска ATA в BIOS
Это самый простой способ, но, практически бесполезный. Кроме user-пароля, BIOS, как правило, прописывает ещё и master-пароль, который известен сервисной службе компании-производителя компьютера, и потом добрые люди могут помочь расшифровать данные любому обратившемуся за помощью. См., например, конференции iXBT, “Снять пароль с биоса (BIOS)”.
В сети описаны примеры некрасивой работы BIOS при установке пароля ATA, кеширования пароля в BIOS и чтения его оттуда, использования hdparm вместо BIOS для установки пароля, чтения диска с установленным паролем на компьютере той же модели и т.д. При желании можете сами почитать и оценить, но меня этот способ разочаровал.
2. включить функционал eDrive и использовать BitLocker
Неплохо, но годится только для дорогих версий Windows, и не годится для linux, если что.
3. использовать функции TCG OPAL через утилиту sedutil
Крупными мазками: идея этого метода в том, что при активизации защиты, после включения питания диск, вместо своего настоящего содержимого, показывает маленький служебный раздел. Туда можно записать что угодно, но обычно это утилита, которая спросит у вас пароль и попытается скормить его диску, чтобы он заработал по-настоящему.
Плюс этого метода в том, что пароль вводится до загрузки операционной системы, то есть ничего в операционной системе менять не нужно, и некому этот пароль перехватить.
- Компьютер нельзя переводить в состояние standby. После возобновления подачи питания на диск он будет в заблокированном состоянии. Операционная система, проснувшаяся в оперативной памяти, резко свалится.
- Лишняя перезагрузка — после ввода пароля, когда диск открыл своё истинное содержимое, машина перезагружается, чтобы BIOS заново определил, что это за диск.
Ну, данные потерять можно запросто, если неправильно задать пароль при закрытии диска, или тут же его забыть, например. Поэтому ОБЯЗАТЕЛЬНО выполнить резервное копирование перед всеми последующими действиями.
В случае же, когда диск не поддаётся расшифровке, его обычно можно сбросить в исходное (фабричное) состояние, правда, ценой полной потери данных.
Итого: кирпич можно вернуть к жизни, но данных можно лишиться.
Вернёмся к дискам Samsung.
Готовой утилиты на служебном разделе у дисков Samsung нет. Есть коммерческие программы, которые могут туда себя прописывать, но мы воспользуемся бесплатной утилитой с открытым исходным кодом – sedutil (в девичестве — msed).
Качаем файлы из раздела executable distributions (не забудьте раскрыть архивы .gz. ):
Архив sedutil_WIN.zip – то, чем мы будем оживлять шифрование на диске, если мы работаем под Windows. Далее идёт описание работы именно под Windows. Работа c linux-версией практически не отличается. Разве что названия дисков разные, например, вместо \.PhysicalDrive0 будет /dev/sda.
Архивы LINUXPBARelease.img.gz или UEFI64_Release.img.gz – содержат то, что будет загружаться с маленького раздела диска, когда основное его содержимое станет заблокировано после выключения питания. Разные варианты для машин с BIOS и UEFI.
Архив Rescue.img.gz – содержит образ утилиты восстановления – если что-то пойдёт не так и захочется всё вернуть назад, а компьютер не грузится.
Записываем на флешку утилиту восстановления на всякий случай (предложенной программой Win32DiskImager) и проверяем, что можем с неё загрузиться. Заодно увидим, что работает она из командной строки linux, и убедимся, что мы его не боимся.
Также на сайте рекомендуется записать на другую флешку LINUXPBARelease.img и проверить, что при загрузке и вводе любого пароля мы увидим список дисков. Но это не так, на сайте устаревшее описание, которое забыли поменять (по состоянию на 01.01.2017). Если диск ещё не зашифрован, мы получим только сообщения об ошибках и уйдём в перезагрузку. Не расстраивайтесь, это нормально (описано в Issues на github).
Итак, из командной строки посмотрим, кто из дисков у нас способен к самошифрованию:
V:sedutil>sedutil-cli —scan Scanning for Opal compliant disks \.PhysicalDrive0 12 Samsung SSD 850 EVO 1TB EMT01B6Q \.PhysicalDrive1 12 Samsung SSD 850 EVO mSATA 500GB EMT41B6Q No more disks present ending scan
Закроем оба диска, но пароль для них будет один. Поскольку мы будем вводить его в командной строке, нужно, чтобы в нём не было символов, которые в командной строке имеют специальное значение, вроде всяких пробелов-слешей-кавычек-меньше-больше. Кроме того, символы, которые вы будете использовать, должны быть доступны при вводе с клавиатуры при загрузке компьютера (читай, символы QWERTY-клавиатуры). Наконец, забейте пароль в текстовый файл, сохраните его на флешку, и вставляйте его при помощи Copy-Paste в последующие команды.
Допустим, загрузочный диск у нас — PhysicalDrive1.
Пусть пароль у нас будет MyPassword.
V:sedutil>sedutil-cli —initialsetup MyPassword \.PhysicalDrive1 — 13:21:04.000 INFO: takeOwnership complete — 13:21:04.436 INFO: Locking SP Activate Complete — 13:21:05.982 INFO: LockingRange0 disabled — 13:21:05.513 INFO: LockingRange0 set to RW — 13:21:06.028 INFO: MBRDone set on — 13:21:06.558 INFO: MBRDone set on — 13:21:07.057 INFO: MBREnable set on — 13:21:07.057 INFO: Initial setup of TPer complete on \.PhysicalDrive1
Загружаем в служебный раздел образ загрузчика (здесь вы должны определить, какой вариант загрузчика вам нужен: BIOS или UEFI )
V:sedutil>sedutil-cli —loadPBAimage MyPassword \.PhysicalDrive1 — 13:01:34.000 INFO: Writing PBA to \.PhysicalDrive1 | [*********************] 1049600 bytes written — 13:03:38.317 INFO: PBA image written to \.PhysicalDrive1 V:sedutil>sedutil-cli —setMBREnable on MyPassword \.PhysicalDrive1 — 13:05:02.000 INFO: MBRDone set on — 13:05:03.562 INFO: MBREnable set on
Тот самый момент, после которого диск начинает вести себя по-другому после выключения питания:
V:sedutil>sedutil-cli —enableLockingRange 0 MyPassword \.PhysicalDrive1
Зашифруем заодно и второй диск (не загрузочный). Всё то же самое, только загрузчик можно на него не записывать.
V:sedutil>sedutil-cli —initialsetup MyPassword \.PhysicalDrive0 V:sedutil>sedutil-cli —enableLockingRange 0 MyPassword \.PhysicalDrive0
После выключения питания и включения вновь, увидим запрос пароля. Если ввели его неправильно – перезагрузка и повторный запрос. Если правильно – перезагрузка и запуск операционной системы с открывшегося раздела диска.
В случае успеха можете наблюдать, как в Windows изменились значки диcков – у них появились открытые жёлтые замочки:
В случае неудачи… Хм… Выходные длинные нынче. Начните с более подробного изучения утилиты sedutil, руководствуясь приведённой выше ссылкой.
Прежде всего, в разделе «Remove OPAL» говорится о том, как восстановить обычное поведение диска, чтобы он опять работал без подмены разделов при включении и без запроса пароля.
В разделе «PSID Revert» приводятся крайние меры, когда вы забыли/не знаете пароль, но хотите оживить диск ценой потери данных. При этом потребуется узнать уникальный номер диска (PSID), обычно написанный где-то у него на корпусе.
- Системное администрирование
- IT-инфраструктура
- Восстановление данных
- Резервное копирование
- Хранение данных
Источник: habr.com