non sed ssd что это
Уязвимости в популярных моделях SSD позволяют обойти шифрование
Linux для хакера
Специалисты нидерландского Университета Неймегена обнародовали доклад (PDF), раскрывающий подробности опасных уязвимостей, которые представляют угрозу для SSD с поддержкой аппаратного шифрования. Обнаруженные проблемы позволяют без пароля обойти шифрование и получить доступ к данным, хранящимся на накопителе.
Уязвимые SSD представляют собой самошифруемые диски (self-encrypting drive — SED). Такие решения стали весьма популярны в последние годы, особенно с учетом того, что софтверное шифрование неидеально (например, атакующий вполне может извлечь необходимый для дешифровки информации пароль из RAM машины).
В своем докладе эксперты рассказывают, что отреверсили прошивки ряда устройств, чтобы разобраться, как работает шифрование на разных SSD. В итоге они обнаружили ряд слабых мест, и в основном проблемы оказались связаны со спецификациями ATA security и TCG Opal, использующимися для реализации аппаратного шифрования. Эксплуатируя баги, специалисты сумели модифицировать прошивку устройств или задействовать отладочный интерфейс, чтобы изменить ход процесса валидации пароля. В результате становится возможно расшифровать хранящиеся на SSD данные без пароля.
В своих экспериментах исследователи проверяли такие популярные устройства, как Crucial MX100, Crucial MX200, Crucial MX300, Samsung 840 EVO, Samsung 850 EVO, Samsung T3 Portable и Samsung T5 Portable. При этом подчеркивается, что другие модели, других производителей, скорее всего, точно так же подвержены обнаруженным уязвимостям.
Так, выяснилось, что накопители SED позволяют пользователям установить свой пароль для расшифровки информации, но при этом устройства фактически поддерживают так называемый «мастер-пароль», который задает вендор. И если атакующий ознакомится с инструкцией и использует этот мастер-пароль, он может попросту обойти пароль пользователя. Единственный способ защиты от такой атаки: сменить мастер-пароль или установить настройку Master Password Capability на максимум, что так же нейтрализует угрозу.
Однако мастер-пароль был лишь одной из многих проблем. Также обнаружилось, что из-за некорректных имплементаций ATA security и TCG Opal заданный пользователем пароли и ключ шифрования диска (disk encryption key — DEK) не связаны криптографически. То есть злоумышленник может взять значение DEK (хранится на специальном чипе SED) и использовать для расшифровки данных. Фактический пароль пользователя для этого знать не нужно. Исследователи пишут, что это настоящая катастрофа, ведь выходит, что сохранность информации не зависит от секрета, а все необходимые для дешифровки данные можно извлечь с самого уязвимого устройства.
При этом уязвимости несут дополнительную угрозу для пользователей Windows, которые полагаются на Windows BitLocker. Дело в том, что когда BitLocker обнаруживает SED-накопитель, он не шифрует информацию на этом устройстве софтверно, полагаясь на его аппаратные возможности. Изменить эту настройку можно только через Group Policy, причем накопитель для этого придется отформатировать.
Инженеры Crucial и Samsung уже начали выпускать патчи для проблемных устройств.
Что такое «шифрование твердотельного накопителя» и как оно работает?
Сегодня все люди во всем мире, от предприятий и правительств до частных лиц, разделяют одно: необходимость и желание защитить важную личную и конфиденциальную информацию. Независимо от того, хранятся ли данные или перемещаются, их защита абсолютно необходима. Финансовые и репутационные последствия утечки данных, взлома, утерянных или украденных ноутбуков/ ПК могут быть астрономическими.
Для защиты от хакеров и утечки данных в организации необходимо шифровать данные и во время их перемещения, и во время хранения. Шифрование обеспечивает усиленный уровень защиты на тот случай, если каким-либо образом будет получен несанкционированный доступ к компьютерной сети или устройству хранения. Если это произойдет, хакер не сможет получить доступ к данным. В этой статье мы сосредоточимся на программном шифровании, накопителях с самошифрованием (сокращенно SED) и общем объяснении того, как работает шифрование твердотельных накопителей.
Что такое шифрование?
Говоря упрощенно, шифрование преобразует информацию, введенную в цифровое устройство, в блоки данных, которые кажутся бессмысленными. Чем сложнее процесс шифрования, тем более неразборчивыми и не поддающимися расшифровке будут данные. И наоборот, дешифрование восстанавливает исходную форму зашифрованных данных, делая их снова доступными для чтения. Зашифрованная информация часто называется шифротекстом, а незашифрованная — обычным текстом.
Сравнение аппаратного и программного шифрования
Программное шифрование использует различные программы для шифрования данных в логическом томе. При первом шифровании накопителя создается уникальный ключ, который сохраняется в памяти компьютера. Этот ключ зашифрован парольной фразой, выбранной пользователем. Когда пользователь вводит парольную фразу, он разблокирует ключ и предоставляет доступ к незашифрованным данным на накопителе. Копия ключа также записывается на накопитель. Программное шифрование действует как посредник между считыванием/записью данных приложения на устройство; перед физическим сохранением данных на накопителе они шифруются с помощью ключа. При считывании с накопителя данные дешифруются с использованием того же ключа, прежде чем будут переданы программе.
Хотя программное шифрование является рентабельным, оно надежно ровно настолько, насколько надежно устройство, на котором оно используется. Если хакер взломает код или пароль, он получит доступ к вашим зашифрованным данным. Кроме того, поскольку шифрование и дешифрование выполняется процессором, замедляется работа всей системы. Еще одна уязвимость программного шифрования заключается в том, что при загрузке системы ключ шифрования сохраняется в оперативной памяти компьютера, что делает его целью для низкоуровневых атак.
В накопителях с самошифрованием (SED) используется аппаратное шифрование, предлагающее более целостный подход к шифрованию пользовательских данных. Накопители SED оснащаются встроенным крипточипом AES, который шифрует данные перед записью и расшифровывает их перед чтением непосредственно с носителя NAND. Аппаратное шифрование находится между ОС, установленной на накопителе, и BIOS системы. При первом шифровании накопителя создается ключ шифрования, который сохраняется во флеш-памяти NAND. При первой загрузке системы загружается настраиваемая система BIOS, которая запрашивает парольную фразу пользователя. После ввода парольной фразы содержимое накопителя расшифровывается, и предоставляется доступ к ОС и пользовательским данным.
Накопители с самошифрованием также шифруют/дешифруют данные «на лету» с помощью встроенного крипточипа, который отвечает за шифрование данных до их передачи во флеш-память NAND и дешифрует данные перед их чтением. Центральный процессор не участвует в процессе шифрования, что снижает потери производительности, связанные с программным шифрованием. В большинстве случаев при загрузке системы ключ шифрования сохраняется во встроенной памяти твердотельного накопителя, что усложняет его получение и делает менее уязвимым для низкоуровневых атак. Этот аппаратный метод шифрования обеспечивает высокий уровень безопасности данных, поскольку он невидим для пользователя. Его нельзя отключить, и он не влияет на производительность.
256-битное аппаратное шифрование по протоколу AES
AES (Advanced Encryption Standard) — это алгоритм симметричного шифрования (то есть ключи шифрования и дешифрования совпадают). Поскольку AES является блочным шифром, данные делятся на 128-битные блоки перед их шифрованием 256-битным ключом. 256-битное шифрование AES — это международный стандарт, который обеспечивает превосходную безопасность данных и признан, в частности, правительством США. Шифрование AES-256 практически не поддается расшифровке, что делает его самым надежным стандартом шифрования.
Почему этот алгоритм не поддается расшифровке? Протокол AES включает алгоритмы AES-128, AES-192 и AES-256. Цифры представляют количество битов ключа в каждом блоке шифрования и дешифрования. Для каждого добавленного бита количество возможных ключей удваивается, то есть 256-битное шифрование равносильно двум в 256 степени! Это чрезвычайно большое количество возможных вариантов ключа. В свою очередь, каждый бит ключа имеет разное количество раундов. (Раунд — это процесс трансформации обычного текста в шифротекст.) Для 256 бит используется 14 раундов. 2 256 Не говоря уже о времени и вычислительной мощности, необходимых для выполнения этой операции.
Программное шифрование по протоколу TCG Opal 2.0
TCG — это международная группа по промышленным стандартам, которая определяет основанный на аппаратных средствах доверительный учет для совместимых доверенных вычислительных платформ. Этот протокол обеспечивает возможность инициализации, аутентификации и управления зашифрованными твердотельными накопителями с помощью независимых поставщиков программного обеспечения, использующих решения для управления безопасностью TCG Opal 2.0, таких как Symantec, McAfee, WinMagic® и другие.
Таким образом, хотя программное шифрование имеет свои преимущества, оно может не соответствовать понятию «всеобъемлющего». Программное шифрование добавляет дополнительные шаги, потому что данные должны быть зашифрованы, а затем дешифрованы, когда пользователю необходимо получить доступ к данным, тогда как аппаратное шифрование предлагает более надежное решение. Твердотельный накопитель с аппаратным шифрованием оптимизирован для работы с остальной частью накопителя без снижения производительности. В зависимости от приложения вы можете быть удивлены тем, что принимает участие в защите ваших данных. Не все средства шифрования одинаково, и понимание различий будет играть ключевую роль в том, насколько эффективна и действенна ваша безопасность.
Аппаратная поддержка BitLocker на SED SSD дисках
Многие современные жесткие диски (в том числе SSD) поддерживают технологию самошифровния, предназначенную для защиты данных пользователя. Диски с поддержкой шифрования на уровне контроллера называются SED дисками (Self-Encrypting Drives). Алгоритм шифрования с симметричным ключом реализуется аппаратно на уровне контроллера диска. При записи на диск все данные шифруются, а при чтении – расшифровываются, причем абсолютно прозрачно с точки зрения пользователя. Windows 8 и Windows Server 2012 могут использовать аппаратный функционал SED дисков для шифрования данных BitLocker-ом, тем самым разгружая процессор и уменьшая общее энергопотребление системы.
При использовании SED диска с шифрованиеми BitLocker на Windows 7 / 2008, данные на диске по сути шифруются дважды, на уровне ОС шифрование выполняет BitLocker, а затем эти же данные шифруются контроллером диска. Не очень-то эффективно…
В BitLocker на Windows 8 / Windows Server 2012 появилась возможность разгрузить процессор, передав функционал шифрования контроллеру жесткого диска. По различным оценкам, передача функций шифрования BitLocker контролеру SED диска увеличивает производительность системы на 15-29%. Кроме того, при переходе на аппаратное шифрование, увеличивается срок работы устройств от аккумуляторной батареи и срок ее жизни (Как проверить состояние аккумулятора в Windows 8).
При использовании аппаратного шифрования BitLocker увеличивается безопасность системы за счет того, что ключ шифрования более не хранится в памяти компьютера, тем самым память компьютера более не может быть потенциальным вектором атаки
Microsoft определила особый стандарт Microsoft eDrive, описывающий требования к SED дискам для использования вместе с BitLocker. eDrive основан на стандартах спецификаций TCG OPAL и IEEE 1667.
При использовании SED дисков, поддерживающих стандарт eDrive, накопитель выполняет шифрование «на лету», практически полностью исчезает падение производительности системы при работе BitLocker (по сравнению с программным шифрованием BitLocker).
Судя по описаниям Microsoft, задействовать аппаратное шифрование BitLocker на совместимых устройствах не составляет труда. Но, оказалось, перейти на аппаратное шифрование не так просто. Далее покажем, как включить поддержку BitLocker Hardware Encryption на SSD диске, поддерживающим стандарт eDrive.
Для того, чтобы BitLocker мог использовать для шифрования контроллер жесткого диска, окружение должно соответствовать следующим требованиям.
Требования к загрузочной системе:
Требования к SED SSD диску с данными:
В нашей конфигурации мы пытаемся включить аппаратное шифрование BitLocker на SSD диске Samsung SSD 850 Pro (eDrive совместимый SSD). Для управления параметрами SSD диска будем использовать официальную утилиту Samsung для работы с SSD накопителями — Samsung Magician.
По задумке Microsoft, если система удовлетворяет описанным условиям, то при включении BitLocker на SED диске, для шифрования данных автоматически использования функционал контроллера. Однако проблема оказалась в том, что со старыми версиями драйвера Intel Rapid Storage Technology (RST), это не работает. Рабочая версия RST с корректной поддержкой BitLocker – 13.2.
В дальнейшем данный SED диск можно использовать в качестве загрузочного, установив на него систему. Каждый раз при загрузке такой системы необходимо будет указывать ключ Bitlocker.
Как начать использовать аппаратное шифрование 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
Крупными мазками: идея этого метода в том, что при активизации защиты, после включения питания диск, вместо своего настоящего содержимого, показывает маленький служебный раздел. Туда можно записать что угодно, но обычно это утилита, которая спросит у вас пароль и попытается скормить его диску, чтобы он заработал по-настоящему.
Плюс этого метода в том, что пароль вводится до загрузки операционной системы, то есть ничего в операционной системе менять не нужно, и некому этот пароль перехватить.
Ну, данные потерять можно запросто, если неправильно задать пароль при закрытии диска, или тут же его забыть, например. Поэтому ОБЯЗАТЕЛЬНО выполнить резервное копирование перед всеми последующими действиями.
В случае же, когда диск не поддаётся расшифровке, его обычно можно сбросить в исходное (фабричное) состояние, правда, ценой полной потери данных.
Итого: кирпич можно вернуть к жизни, но данных можно лишиться.
Вернёмся к дискам Samsung.
Готовой утилиты на служебном разделе у дисков Samsung нет. Есть коммерческие программы, которые могут туда себя прописывать, но мы воспользуемся бесплатной утилитой с открытым исходным кодом – sedutil (в девичестве — msed).
Архив 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).
Итак, из командной строки посмотрим, кто из дисков у нас способен к самошифрованию:
Закроем оба диска, но пароль для них будет один. Поскольку мы будем вводить его в командной строке, нужно, чтобы в нём не было символов, которые в командной строке имеют специальное значение, вроде всяких пробелов-слешей-кавычек-меньше-больше. Кроме того, символы, которые вы будете использовать, должны быть доступны при вводе с клавиатуры при загрузке компьютера (читай, символы QWERTY-клавиатуры). Наконец, забейте пароль в текстовый файл, сохраните его на флешку, и вставляйте его при помощи Copy-Paste в последующие команды.
Допустим, загрузочный диск у нас — PhysicalDrive1.
Пусть пароль у нас будет MyPassword.
Загружаем в служебный раздел образ загрузчика (здесь вы должны определить, какой вариант загрузчика вам нужен: BIOS или UEFI )
Тот самый момент, после которого диск начинает вести себя по-другому после выключения питания:
Зашифруем заодно и второй диск (не загрузочный). Всё то же самое, только загрузчик можно на него не записывать.
После выключения питания и включения вновь, увидим запрос пароля. Если ввели его неправильно – перезагрузка и повторный запрос. Если правильно – перезагрузка и запуск операционной системы с открывшегося раздела диска.
В случае успеха можете наблюдать, как в Windows изменились значки диcков – у них появились открытые жёлтые замочки:
В случае неудачи… Хм… Выходные длинные нынче. Начните с более подробного изучения утилиты sedutil, руководствуясь приведённой выше ссылкой.
Прежде всего, в разделе «Remove OPAL» говорится о том, как восстановить обычное поведение диска, чтобы он опять работал без подмены разделов при включении и без запроса пароля.
В разделе «PSID Revert» приводятся крайние меры, когда вы забыли/не знаете пароль, но хотите оживить диск ценой потери данных. При этом потребуется узнать уникальный номер диска (PSID), обычно написанный где-то у него на корпусе.
Аппаратное шифрование SSD диска
Если вы хотите защитить свои данные и сохранить их в безопасности, то вам следует подумать о том, чтобы активировать на своем компьютере шифрование. После шифрования данных вам потребуется секретный ключ или пароль, чтобы расшифровать их и получать к ним доступ. Мы акцентируем внимание на аппаратном шифровании, но если вы хотите узнать больше о других типах безопасности, ознакомьтесь с нашей статьей Различные типы шифрования и защиты дисков.
Что такое аппаратное шифрование?
Аппаратное шифрование означает, что шифрование происходит внутри накопителя. Твердотельный накопитель со встроенным в аппаратное обеспечение шифрованием чаще всего называют самошифруемым диском (Self-Encrypting Drive, SED). Большинство твердотельных накопителей Crucial® являются SED.
Как работает аппаратное шифрование в SED от Crucial?
В SED шифрование всегда включено, то есть, когда данные записываются в SED, они шифруются контроллером, а затем дешифруются при считывании с SED. Функция защиты паролем должна быть активирована программным обеспечением для управления шифрованием. Если этого не будет сделано, то ничто не помешает пользователю считать данные на диске. Другими словами, SED будет расшифровывать всю информацию для всех, кто ее запрашивает, если только для предотвращения этого не будет установлено программное обеспечение для управления безопасностью.
Самый простой способ — рассматривать это как систему безопасности дома. Если ее не «включить» (например, с использованием стороннего программного обеспечения для применения учетных данных для входа), она будет просто присутствовать, а не активно защищать ваши данные.
Какие преимущества аппаратного шифрования?
SED — это проверенная, сертифицированная технология, которая гарантирует практически неуязвимую защиту доступа к данным пользователя перед загрузкой. Поскольку шифрование является частью контроллера диска, оно обеспечивает защиту данных перед загрузкой. Запуск программной утилиты для попытки взлома кодов аутентификации невозможен, поскольку шифрование включается до начала загрузки любого программного обеспечения. Еще одно преимущество функции шифрования, которая работает постоянно, заключается в том, что она позволяет диску соответствовать требованиям государственных стандартов в отношении данных в банковских, финансовых, медицинских и государственных секторах за счет соблюдения требований TCG Opal 2.0 и IEEE-1667 «Протоколы аутентификации доступа». SED от Crucial также поддерживают стандартный протокол полного шифрования диска с помощью набора функций безопасности ATA-8.
Кроме того, поскольку шифрование происходит только на SED, ключи шифрования хранятся в самом контроллере и никогда не покидают диска.
Аппаратное или программное шифрование?
Основным преимуществом использования аппаратного шифрования вместо программного шифрования на твердотельных накопителях является то, что функция аппаратного шифрования оптимизирована относительно работы остальной части диска. Если пользователь применяет программное шифрование к накопителю, это добавляет несколько дополнительных действий к процессу записи на носитель, поскольку во время записи данные должны быть зашифрованы программным обеспечением шифрования. Затем те же самые данные должны снова расшифровываться программным обеспечением, когда пользователь хочет получить к ним доступ, что замедляет процесс чтения. Другими словами, добавление программного шифрования отрицательно влияет на производительность SSD.
В то же время аппаратное шифрование SED интегрировано в контроллер, а это означает, что оно не влияет на производительность SSD ни в краткосрочной, ни в долгосрочной перспективе. Скорость чтения и записи уже учитывает шифрование, потому что шифрование происходит в каждом цикле записи, а дешифрование происходит в каждом цикле чтения. Шифрование — это часть нормальной работы накопителя.
Как активировать аппаратное шифрование?
Всё, что нужно пользователю для использования возможности шифрования SED — это программная утилита, которая обеспечивает управление ключами шифрования для устройств SED. SED от Crucial полностью соответствуют стандарту Microsoft® eDrive, который обеспечивает простую защиту данных по принципу «plug-and-play» благодаря использованию Windows® BitLocker®. Поскольку Windows BitLocker не нужно шифровать диск перед началом использования (шифрование уже выполнено контроллером твердотельного накопителя), то во время шифрования нет никакой задержки или ожидания. После включения Windows BitLocker SED мгновенно готов к использованию. Всё, что вам нужно сделать, это позволить самошифруемому диску работать так же, как и всегда, и наслаждаться спокойствием и высокой производительностью диска с аппаратным шифрованием.
Для того чтобы активировать аппаратное шифрование на вашем диске, см. наше руководство здесь.