Уязвимости TPM: как защитить данные BitLocker, когда TPM скомпрометирован

27 мая, 2026, Oleg Afonin
Рубрика: «Разное»

Основной целью «защиты устройства» по версии Microsoft была полностью прозрачная защита данных: системный диск зашифрован, а пользователю об этом не нужно даже знать. Шифрование на современных сборках Windows может происходить автоматически, ключи восстановления — так же автоматически загружаются в облако Microsoft (или в корпоративную сеть, Entra ID); пользователь никогда (по мнению Microsoft) не должен сталкиваться с паролями или ключами шифрования.

Иными словами — всё должно работать примерно так, как в iPhone, которые тоже зашифрованы, а пользователь об этом может даже не догадываться. Увы, но архитектура современных компьютеров Windows — далеко не iPhone, и, как это часто бывает, что-то пошло не так.

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

Какое-то время шифрование было препятствием и для работы криминалистических лабораторий. А потом исследователи начали публиковать информацию об уязвимостях и создавать эксплойты. На момент середины 2026 года базовая конфигурация BitLocker в варианте, который полагается исключительно на защиту ключей модулем TPM, более не защищает от локальных атак — тех самых атак, противодействовать которым и был призван BitLocker. Если раньше извлечение ключей требовало сложного аппаратного вмешательства, то публикация уязвимости YellowKey (CVE-2026-45585) автоматизировала процесс. Теперь доступ к данным в конфигурациях «TPM-only» можно получить за несколько минут с помощью специально подготовленного USB-накопителя через среду восстановления. Существуют и другие векторы — атаки с откатом версии загрузчика или аппаратный перехват данных на шинах LPC/SPI. О них мы подробно писали в англоязычном разделе блога — A Decade of BitLocker Vulnerabilities: What’s Patched, What’s Not, and What Still Works; не будем повторяться.

Как защитить данные?

Конкретно от эксплойта YellowKey можно защититься правкой WinRE (удалить autofstx.exe из BootExecute и переустановить доверие BitLocker для WinRE); конкретные шаги и скрипт для администраторов приведён в CVE-2026-45585 — Security Update Guide — Microsoft — Windows BitLocker Security Feature Bypass Vulnerability.

Переход к конфигурации с дополнительным фактором (ввод PIN-кода до загрузки ОС) согласно рекомендации Microsoft по той же ссылке кажется наиболее логичным решением: без PIN-кода TPM не выдаст ключ расшифровки. Для большинства систем это эффективная мера, но на старых платформах она не даёт стопроцентной гарантии.

Во-первых, процессоры AMD архитектур Zen 2 и Zen 3 с интегрированным модулем fTPM уязвимы к атаке faulTPM — извлечению ключей через целенаправленные сбои напряжения. Это сложный аппаратный метод, требующий физического доступа и специального оборудования, однако программными обновлениями он не устраняется. Вероятность применения такой атаки против обычного пользователя невелика, но при работе с конфиденциальными данными этот риск необходимо учитывать.

Во-вторых, автор эксплойта YellowKey заявил о возможности обхода связки TPM+PIN. Важно отметить: на момент написания статьи PoC для обхода TPM+PIN не обнародован, поэтому заявление остаётся непроверенным. Тем не менее, подобные заявления требуют внимания до тех пор, пока не появятся исчерпывающие опровержения.

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

Архитектура защиты: настройки и планирование обновлений

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

Базовый уровень: обязательные настройки

Здесь перечислены шаги, которые нужно предпринять «здесь и сейчас».

Переход на конфигурацию TPM + PIN

Включение обязательного запроса PIN-кода до загрузки операционной системы (через групповые политики) — первое и главное действие. Пока PIN не введён, модуль TPM просто не выдаёт ключ расшифровки. Это сразу обесценивает целый класс программных атак, использующих откат загрузчика, в том числе bitpixie и BitUnlocker (набор уязвимостей в среде восстановления Windows, раскрытый командой Microsoft в 2025 году). Все они выстроены вокруг получения мастер-ключа тома без ввода PIN-кода, поэтому второй фактор аутентификации лишает их смысла. Тот же запрос PIN защищает от перехвата данных на шине (сниффинга) и от атак через порты прямого доступа к памяти (DMA), пока ОС заблокирована.

Важный нюанс: по умолчанию минимальная длина PIN-кода в BitLocker — 6 цифр, и допускаются только цифры. Стоит понимать, что 6-значный код надёжно защищает ключ шифрования лишь до тех пор, пока работает аппаратная защита TPM от перебора: после нескольких неудачных попыток ввода чип переходит в защитный режим блокировки и перестаёт отдавать ключ. Если же перебор удаётся вынести за пределы чипа в офлайн, то этой защиты больше нет, и миллиона комбинаций 6-значного PIN уже недостаточно.

Усиление PIN-кода (особенно для систем на AMD Zen 2/3)

Процессоры AMD со встроенным fTPM уязвимы к аппаратному глитчингу — атаке faulTPM. Это инвазивная атака, требующая физического доступа и вскрытия устройства: манипулируя напряжением питания, злоумышленник вызывает сбой процессора и извлекает уникальный секрет чипа. После этого все объекты, запечатанные в TPM, можно расшифровать офлайн. Для конфигурации «только TPM» это означает мгновенный доступ к диску; для «TPM + PIN» — что встроенная защита TPM от перебора перестаёт работать, и стойкость системы упирается исключительно в PIN-код, который теперь можно перебирать офлайн. В разных источниках приводятся цифры порядка тысяч проверок в секунду, что делает перебор PIN-кода из 6 цифр делом минут, максимум — получаса машинного времени.

Ситуацию радикально меняет переход на длинный буквенно-цифровой код. Восемь символов из строчных и прописных букв и цифр — это уже пятнадцатизначное число комбинаций; полный перебор на одной видеокарте занимает сотни или тысячи лет, и даже специализированная стойка не делает атаку практичной. Рекомендуемый минимум — 8–9 символов с буквами разного регистра и цифрами; по возможности и длиннее.

Здесь есть важный практический нюанс. Обычный PIN-код в BitLocker по умолчанию состоит только из цифр. Чтобы разрешить буквы и символы, необходимо отдельно включить групповую политику «Allow enhanced PINs for startup» (расширенные PIN-коды). При этом стоит учитывать, что в предзагрузочной среде цифровые клавиши 0–9 и тем более буквы доступны не на всех клавиатурах. Это стандартное ограничение предзагрузочного окружения: гарантированно работают только клавиши F1–F10 (именно они часто используются для ввода цифр вместо цифрового ряда). Перед массовым внедрением политику нужно протестировать на целевых моделях устройств; BitLocker предлагает для этого встроенную проверку системы при настройке.

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

Защита на уровне загрузчика: устранение атак с откатом версии

Злоумышленнику не обязательно искать уязвимость в вашей текущей системе — он может принести на флешке старый, уязвимый загрузчик, который официально подписан старой, но ещё не отозванной цифровой подписью. Чтобы это исключить:

  • Контролируйте миграцию сертификатов (KB5025885). Убедитесь, что система использует актуальные цепочки доверия и обновлённый загрузчик, подписанный сертификатом Windows UEFI CA 2023.
  • Принудительно отзовите старые сертификаты. После обновления загрузочных образов и сред восстановления (WinRE) добавьте устаревший сертификат PCA 2011 в список запрета (DBX). Только после этого запуск старых уязвимых загрузчиков на устройстве станет невозможен.

Как это сделать? Обе задачи описаны в одной статье: KB5025885: How to manage the Windows Boot Manager revocations for Secure Boot changes associated with CVE-2023-24932

Статья описывает четыре последовательных действия: установку сертификата UEFI CA 2023 в базу доверия (DB), обновление загрузчика, затем отзыв старого сертификата PCA 2011 через список запрета (DBX). Перед применением третьего шага Microsoft предупреждает о необходимости создать загрузочный накопитель для восстановления, поскольку при ошибке устройство может не загрузиться.

Стоит отметить, что отзыв сертификата PCA 2011 через DBX со временем закрывает весь этот класс атак (bitpixie, BitUnlocker и аналогичные), а сама цепочка PCA 2011 постепенно выводится из обращения. Но до завершения этого перехода ответственность за актуальность цепочки доверия лежит на администраторе.

Предотвращение утечек из оперативной памяти

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

  • Отключение гибернации. Самый надёжный способ защититься от извлечения ключа FVEK — полностью отключить режим гибернации. Это устраняет и риск со стороны атак вроде CrashXTS (CVE-2025-21210, закрыта обновлением января 2025 года): атака не извлекает ключ напрямую, а заставляет Windows записать файл гибернации в незашифрованном виде, после чего его содержимое, включая чувствительные данные и ключ шифрования, становится доступным. Если отключить гибернацию нельзя, убедитесь, что файлы hiberfil.sys и подкачки принудительно зашифрованы, и держите систему в актуальном состоянии по обновлениям.
  • Защита от прямого доступа к памяти. Обязательно активируйте Kernel DMA Protection (потребуется включить поддержку виртуализации VT-d/IOMMU в настройках UEFI). Это не позволит злоумышленнику подключить специальное устройство через порт Thunderbolt/USB4 и выгрузить содержимое оперативной памяти с ключами.

Долгосрочная стратегия и обновление оборудования

Программные настройки закрывают большинство сценариев атак, но аппаратные уязвимости требуют обновления парка устройств.

  • Отказ от уязвимых шин. Постепенно выводите из эксплуатации компьютеры и ноутбуки с дискретными модулями TPM на шинах LPC и SPI, уязвимыми для сниффинга логическим анализатором. Перспективное направление — архитектуры с интегрированными сопроцессорами безопасности, прежде всего Microsoft Pluton, где внешней физической шины для перехвата данных нет. Имейте в виду: не все интегрированные модули одинаково безопасны; достаточно вспомнить об уязвимости старых версий fTPM.
  • Физический контроль. Для корпоративной техники, работающей с чувствительными данными, имеет смысл выбирать устройства с датчиками вскрытия корпуса (chassis intrusion). Если злоумышленник вскроет ноутбук, чтобы добраться до чипов с паяльником, система зафиксирует это на уровне BIOS и может заблокировать последующую загрузку до вмешательства администратора.

Почему всё же BitLocker?

BitLocker остаётся разумным выбором для шифрования всего диска потому, что это — встроенный в Windows компонент с бесшовной интеграцией. Шифрование и расшифровка происходят прозрачно, без участия пользователя, а при наличии TPM диск разблокируется автоматически (или после ввода простого PIN-кода). Это важно: любые средства защиты работают только тогда, когда ими реально пользуются, а инструмент, который усложняет вход в систему или требует сложных манипуляций, пользователи стараются так или иначе обойти. Добавим централизованное управление (групповые политики, депонирование ключей восстановления, отчёты), и для парка из десятков и сотен машин у BitLocker практически нет конкурентов: всего диапазона встроенных механизмов такого рода не предлагает ни один конкурирующий продукт, и каждую установку приходится настраивать и восстанавливать вручную.

Важно правильно понимать уязвимости, разобранные в этой статье. bitpixie, BitUnlocker, faulTPM и CrashXTS нацелены не на сам алгоритм шифрования, а на слабое звено BitLocker — привязку к TPM и к загрузочной цепочке Windows. Решения класса VeraCrypt не используют TPM и потому в принципе не подвержены этим векторам атак, но это не делает их неуязвимыми: и контейнеры, и шифрование точно так же открыты для атак с физическим доступом (например, выгрузка ключей из памяти). Таким образом, выбор стоит не между «слабым» и «стойким» шифрованием, а о методах защиты против разных моделей угроз. Меры из этой статьи — TPM + PIN, контроль загрузчика, защита памяти — закрывают известные слабые места BitLocker и возвращают тот уровень стойкости, ради которого он создавался.

Это не значит, что криптоконтейнеры бесполезны. Для особо чувствительных данных ограниченного объёма — отдельных документов, ключей, архивов, даже чувствительных баз данных — зашифрованный контейнер VeraCrypt служит хорошим вторым слоем защиты. Такой контейнер представляет собой виртуальный диск внутри файла; он не разблокируется автоматически вместе с системой, защищён отдельным паролём, не зависит от TPM, а монтировать его нужно вручную и только на время работы. Файл контейнера при этом можно разместить прямо на разделе, уже зашифрованном BitLocker: внешний слой защищает систему целиком при краже устройства, а внутренний оставляет самое ценное недоступным даже тогда, когда злоумышленник получил доступ к содержимому диска или загрузил систему. Грамотная защита — это не один продукт, а связка из правильных настроек и чёткого понимания того, от каких именно угроз защищаются данные.

НАШИ НОВОСТИ