Диски WD с поддержкой AES можно расшифровать без ввода пароля

Внешние диски WD серии My Passport и My Book рекламируются как надёжный сейф для данных, поскольку выполняют сквозное шифрование по алгоритму AES. Исследователи из Рурского университета в Бохуме (Германия) изучили их модель безопасности и сочли её несостоятельной. Утечки памяти, слабый RNG и другие фундаментальные ошибки реализации криптозащиты привели к тому, что файлы с этих накопителей могут быть расшифрованы посторонним и независимо от сложности пароля. Сам же внешний диск может быть превращён в орудие злоумышленника, скрыто работающее против своего владельца.

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

My_passport_pwned

Компания Western Digital выпускает множество внешних дисков, подключаемых по USB 2.0 / 3.0, FireWire или Thunderbolt. Все они построены на базе HDD с интерфейсом SATA, а подключение к разным портам достигается за счёт использования моста – отдельной платы с контроллером, который выполняет преобразование данных и при необходимости расшифровывает их на лету.

Даже диски одной серии могут комплектоваться мостами с разными чипами, но общий принцип работы у всех одинаков. Это повышает совместимость, упрощает их производство, ремонт и… взлом. Немецкая команда исследователей отобрала для эксперимента шесть разных накопителей WD с чипами JMicron (JMS538S и JMS569), Symwave (SW6316), PLX Technology (OXUF943SE), а также Initio (INIC-1607E и INIC-3608).

Три из них были построены на базе архитектуры Intel 8051. В остальных использовалась архитектура Motorola M68k, ARC 600 и ARM v7. Внешний интерфейс не оказывает влияния на уровень защиты, поэтому для удобства рассматривались модели с подключением по USB. Обычно чип моста SATA-USB использует специфичные для вендора команды SCSI (VSC) и непосредственно выполняет процедуру аутентификации. Работать с VSC можно, например, с помощью линуксовой утилиты sg_raw, входящей в пакет sg3.

root@linux: ? /WD# sg_raw ?r 1k /dev/sdb [VSC as hex]

В последних моделях внешних дисков WD мост упростили. Теперь он просто перенаправляет все данные SATA-контроллеру, используя для разблокировки доступа общую команду SECURITY UNLOCK (F2h). Забегая вперёд, отмечу, что для каждого варианта был обнаружен свой набор уязвимостей, дополняющий общий сценарий атаки на внешние накопители WD.

Как пользовательские, так и служебные данные на внешних дисках WD с поддержкой AES всегда хранятся в зашифрованном виде. В зависимости от модели шифрование выполняется ключом с длиной 128 или 256 бит. Он задан изначально и называется DEK (Data Encryption Key). Этот ключ тоже не хранится в открытом виде, а шифруется с помощью другого – KEK (Key Encryption Key). Он представляет собой хеш SHA256, который вычисляется на основе введённого пользователем пароля и дополнительного набора данных (соль) после тысячи итераций.

Теоретически рандомизированная соль нужна для защиты от атак на хеш с помощью радужных таблиц, а тысяча итераций создаёт достаточную задержку в вычислениях, чтобы сделать исчерпывающий перебор неэффективным. Проблема дисков WD в том, что существуют обходные пути получения DEK. Поэтому ни комплексный пароль, ни соль, ни множество итераций при вычислении KEK не обеспечивают его должной защиты.

Данные на самом диске всегда зашифрованы ключом DEK (изображение: Gunnar Alendal et al.).
Данные на самом диске всегда зашифрованы ключом DEK (изображение: Gunnar Alendal et al.).

Физически зашифрованный DEK хранится в EEPROM (обычно это чип U8 или U14 на отдельной плате у дисков WD). В новых моделях он бывает записан в скрытом секторе или служебной области диска. В любом случае, его выдаёт низкая энтропия, и он всегда начинается с определённой записи. Её вид зависит от контроллера – например, для JMS538S зашифрованный ключ выглядит как «WDv1xxx…x». Расшифрованный DEK всегда начинается с «DEK1».

Пока пароль не задан, на диске используется предустановленное и не всегда корректно обрабатываемое значение KEK. При анализе фабричных настроек авторы выяснили, что во многих моделях накопителей эти значения хеш-функций были сгенерированы всего лишь на основе даты производства, а «соль» представляет собой не псевдослучайный набор данных, а банальную аббревиатуру «WDC». Более того, из-за программной ошибки некоторые диски продолжают использовать изначальное значение KEK вместо того, чтобы сгенерировать новое на основе пароля. Замена KEK у них происходит только при второй смене пароля – довольно редкая ситуация в реальном сценарии.

При подключении любого накопителя WD с поддержкой AES его контроллер пытается смонтировать дисковый раздел. Для этого он пробует расшифровать его с помощью DEK. Сначала ему требуется расшифровать сам ключ, для чего он использует заданный по умолчанию KEK. Если пароль не был задан, то криптографический чип получает расшифрованный DEK без вмешательства пользователя и дешифрует содержимое диска на лету.

Схема шифрования данных в дисках WD с использованием двух ключей (изображение: Gunnar Alendal et al.).
Схема шифрования данных в дисках WD с использованием двух ключей (изображение: Gunnar Alendal et al.).

Если же расшифровать диск не удаётся, то контроллер считает сам DEK зашифрованным с помощью пользовательского пароля, после чего запускает интерактивную процедуру генерирования KEK. Для этого вместо тома с данными он монтирует из флеш-памяти или служебной области виртуальный диск. На нём записаны программы с графическим интерфейсом для ввода пароля, и это ещё один потенциальный вектор атаки. Содержимое виртуального диска хранится в виде образа ISO без цифровой подписи. Он легко может быть подменён произвольным кодом, который будет скормлен на автозапуск по сценарию атаки badUSB. Если на Mac он выполняется с правами обычного пользователя, то в среде Windows запускается с правами администратора.

В отдельных моделях были выявлены дополнительные уязвимости на уровне контроллера, генератора случайных чисел и обработки мостом служебных команд. Механизм их реализации позволяет собрать часть материала для генерирования ключей и на порядки сократить время взлома. Самым слабым с точки зрения криптографии оказался контроллер INIC-3608. Он не ускоряет вычисления AES и выполняет примитивную авторизацию лишь сравнивая ключи. При этом копия KEK хранится в открытом виде.

За время экспериментов авторам удалось расшифровать DEK и данные на всех моделях внешних накопителей разными методами. Подробный отчёт объёмом 36 страниц размещён ими в свободном доступе.



Андрей Васильков, Компьютерра





Интересные новости
Экспресс тест: ATI Mobility Radeon HD 3470
Экспресс-тест: Atom N450 против Atom N270/N280, Celeron M 353 и VIA C7-M
Многообразие версий GeForce GTX 460 от партнёров NVIDIA
Экспресс-тест: ATI Mobility Radeon HD 5470
48 ядер в 2007 году?
Блок рекламы


Похожие новости

Razer представила, возможно, самый мощный 14-дюймовый ноутбук — Blade 14 получит Ryzen 9 6900HX и GeForce RTX 3080 TiRazer представила, возможно, самый мощный 14-дюймовый ноутбук — Blade 14 получит Ryzen 9 6900HX и GeForce RTX 3080 Ti
Чип Microsoft Pluton не вынудит всех переходить на Windows 11 — его можно отключитьЧип Microsoft Pluton не вынудит всех переходить на Windows 11 — его можно отключить
Представлена гарнитура Sharkoon B2 с 50-мм излучателями и поддержкой виртуального звука 7.1Представлена гарнитура Sharkoon B2 с 50-мм излучателями и поддержкой виртуального звука 7.1
Apple, возможно, готовит новый монитор, который будет вдвое дешевле актуального Pro Display XDRApple, возможно, готовит новый монитор, который будет вдвое дешевле актуального Pro Display XDR
На некоторых ASUS ROG Maximus Z690 Hero стали плавиться транзисторы — возможно, из-за неправильной установки конденсатора
LG представила флагманский саундбар S95QR с конфигурацией 9.1.5, а также поддержкой Dolby Atmos и DTS:X
Власти США попытаются ограничить возможности китайской SMIC без ущемления собственных интересов
Akasa представила сетевую карту 2.5 Gigabit PCIe с поддержкой PoE
Жёсткие диски Western Digital на 20 Тбайт поступили в продажу по цене $680
Первые 20-Тбайт жёсткие диски Western Digital с OptiNAND будут поставлены в ноябре
Последние новости

Подгружаем последние новости