Больше материалов: Boosty | Sponsr | TG
• даётся подробное объяснение атаки, включая
задействованные аппаратные и программные
компоненты.
• обсуждаются последствия этой атаки и
предлагаются рекомендации по защите данных от
данного типа атак.
II. МЕТОДОЛОГИЯ
Методология анализа BitLocker включает в себя
несколько этапов:
• Понимание технических деталей: стартовой
точкой выступает тщательное изучение
технических аспектов BitLocker, включая его
алгоритмы шифрования, механизмы управления
ключами и функции безопасности, чтобы
сформировать знание для выявления
потенциальных уязвимостей.
• Обзор исследований и литературы:
рассматриваются актуальные исследовательские
работы, статьи и рекомендации по безопасности,
связанные с BitLocker.
Аннотация - В этом документе представлен анализ метода,
продемонстрированного в видео "Breaking Bitlocker - Bypassing • Демонстрация атаки в обход TPM: даётся
the Windows Disk Encryption" с использованием недорогой подробное объяснение атаки в обход TPM, включая
аппаратной атаки, способной обойти шифрование BitLocker. необходимые аппаратные и программные
Анализ будет охватывать различные аспекты атаки, включая компоненты с практической демонстрацией работы
технический подход, использование TPM-чипа и последствия атаки с целью извлечения ключа шифрования из
для практики обеспечения безопасности. чипа TPM.
Материал предоставляет информацию, которая может • Анализ алгоритмов шифрования BitLocker:
быть использована специалистами в области безопасности и анализируются алгоритмы шифрования BitLocker,
других областей с целью понять потенциальные риски и включая AES и XTS-AES, и обсуждаются их
принять необходимые контрмеры. Документ также особенно сильные и слабые стороны. Также рассматриваются
полезен экспертам по кибербезопасности, ИТ-специалистам и механизмы управления ключами BitLocker, и то, как
организациям, которые полагаются на BitLocker для защиты они могут быть использованы злоумышленниками,
данных и подчёркивают необходимость постоянных оценок что обеспечивает более глубокое понимание
безопасности и потенциал аналогичных уязвимостей в других уязвимостей в BitLocker и помогает оценить
системах шифрования. значимость атаки.
I. ВВЕДЕНИЕ • Анализ уязвимостей: на основе технического
понимания, обзора литературы и практического
В видео "Breaking Bitlocker - Bypassing the Windows Disk тестирования выполняется комплексный анализ
Encryption" автор рассказывает о методе обхода уязвимостей BitLocker с целью определения
шифрования диска Windows (BitLocker) с использованием потенциальных векторов атак, использования
различных атак, в том числе с использованием недорогого уязвимостей и оценку влияния этих уязвимостей на
аппаратного решения. Показывается, как злоумышленник безопасность BitLocker.
может использовать простое устройство для извлечения
ключа шифрования из чипа TPM (Trusted Platform Module) • Практическое тестирование и эксперименты:
компьютера, реализующего хранение ключа шифрования проводятся практические тесты и эксперименты для
для BitLocker. В результате атаки злоумышленник сможет оценки эффективности функций безопасности
расшифровать жёсткий диск компьютера и получить доступ BitLocker с использованием тестовых сред,
к данным, не зная пароля BitLocker. имитации атак и анализа результатов для выявления
потенциальных слабых мест.
В видео представлено:
• Разработка контрмер и рекомендаций: в
• демонстрируется метод обхода BitLocker с
заключении предлагаются контрмеры и
использованием недорогой аппаратной атаки.
рекомендации по устранению выявленных
• нацеленность на чип TPM, который используется уязвимостей и повышению общей безопасности
для хранения ключа шифрования BitLocker. BitLocker, включающие рекомендации по
настройке, обновления системы безопасности и
Больше материалов: Boosty | Sponsr | TG
дополнительные меры для усиления защиты • Шина LPC — это шина «точка-точка», что означает,
данных, зашифрованных с помощью BitLocker. что она соединяет только два устройства.
III. ПРИЧИНЫ ВОЗНИКНОВЕНИЯ АТАКИ • Шина LPC является устаревшей шиной и больше не
используется в новых компьютерных системах.
Атака возможна из-за нескольких факторов:
B. Возможности использования шины LPC в
• Слабые алгоритмы шифрования: BitLocker
использует слабые алгоритмы шифрования, такие компьютерных системах
как AES-128 и XTS-AES, которые можно легко • Подключение устройств с низкой пропускной
взломать с помощью атак методом перебора. способностью к материнской плате, таких как
загрузочное ПЗУ и ПЗУ BIOS
• Плохая реализация BitLocker: BitLocker плохо
реализован, что делает его уязвимым для • Подключение устаревших устройств ISA к
различных атак, включая атаку обхода TPM и атаку материнской плате
процесса загрузки.
• Подключение TPM к материнской плате
• Недостаточная осведомлённость о
• Подключение других устройств с низкой
безопасности: многие пользователи не
пропускной способностью к материнской плате,
осведомлены о рисках безопасности, связанных с
таких как последовательные и параллельные порты
BitLocker, и не предпринимают адекватных шагов
для защиты своих данных. C. Извлечение BitLocker
Атака также возможна из-за доступности недорогих Чтобы извлечь ключ BitLocker из TPM с
аппаратных устройств, которые можно использовать для использованием шины LPC, злоумышленнику потребуется:
обхода функций безопасности BitLocker.
• Получение физического доступа к компьютеру.
С точки зрения аппаратного обеспечения эта атака Выполняется путём кражи компьютера или
возможна, поскольку шина LPC, связанная с обменом получения доступа к нему с помощью социальной
данными TPM, не зашифрована. Это означает, что инженерии или другими способами.
злоумышленник, имеющий физический доступ к
• Открытие корпуса компьютера и обнаружение
компьютеру, может легко отслеживать данные, которые
чипа TPM. Чип TPM обычно находится на
передаются по шине.
материнской плате.
IV. ШИНА LPC • Подключение логического анализатора или
Шина LPC (Low Pin Count) – компьютерная шина, другого аппаратного устройства к шине LPC. Это
используемая на IBM-совместимых персональных позволяет злоумышленнику отслеживать данные,
компьютерах для подключения к материнской плате которые передаются по шине.
устройств с низкой пропускной способностью, таких как
загрузочное ПЗУ, "устаревшие" устройства ввода-вывода • Загрузка компьютера и ожидание отправки
(интегрированные в микросхему super I / O) и доверенный ключа BitLocker по шине LPC. Ключ BitLocker
платформенный модуль (TPM). отправляется из чипа TPM в операционную систему
при загрузке компьютера.
A. Назначение шины LPC в TPM
• Извлечение ключа BitLocker с помощью
Шина LPC — это низкоскоростная мультиплексируемая логического анализатора или другого
шина типа «точка-точка», которая используется для аппаратного устройства. Как только ключ
подключения устройств с низкой пропускной BitLocker будет извлечён, злоумышленник сможет
способностью к материнской плате. Шина LPC является использовать его для расшифровки диска,
устаревшей шиной и больше не используется в новых зашифрованного BitLocker.
компьютерных системах.
D. Безопасность LPC
Чип TPM — это аппаратный модуль безопасности,
который используется для хранения криптографических Фактически, шина LPC является потенциальным
ключей и выполнения криптографических операций. Шина вектором атаки, который может быть использован для
LPC используется для отправки команд на микросхему извлечения ключа BitLocker из чипа TPM.
TPM и получения ответов от неё. Ключевые детали: Злоумышленник может использовать аппаратное
• Шина LPC — это низкоскоростная шина, устройство для подключения к шине LPC и отслеживания
работающая на частоте 33 МГц. данных, которые передаются между чипом TPM и
материнской платой компьютера. Эти данные включают
• Шина LPC является мультиплексированной шиной, ключ BitLocker.
что означает, что она использует одни и те же
провода для передачи данных в обоих Для защиты от этой атаки пользователям следует
направлениях. включить в BitLocker режим "только для доверенного
модуля". Для этого режима требуется наличие и
Больше материалов: Boosty | Sponsr | TG
функциональность чипа TPM для расшифровки диска, 2) Как использовать LPC Sniffer TPM
зашифрованного BitLocker. Это значительно затрудняет • Изменить EEPROM FTDI и включить оптический
злоумышленнику извлечение ключа BitLocker из чипа TPM. режим на канале B.
V. ПЕРЕХВАТ / СНИФФИНГ TPM • Запрограммировать lpc_sniffer.bin в ice40 с
помощью iceprog lpc_sniffer.bin.
A. Сниффинг TPM: взаимодействие Bootmgr с TPM в
открытом режиме • Подключить шину LPC.
Сниффинг TPM — это метод, который позволяет • Извлечь данные LPC: python3 ./parse/read_serial.py
злоумышленнику извлечь ключ BitLocker из чипа TPM, /dev/ttyUSB1| tee outlog.
отслеживая обмен данными между менеджером загрузки и • Извлечь ключ из данных: cut -f 2 -d' outlog | grep
чипом TPM. Это возможно, ввиду обмена данными в '2...00$' | perl -pe 's/.{8}(..)..\n/$1/' | grep -Po
открытом виде (без шифрования) между диспетчером "2c0000000100000003200000(..){32}".
загрузки с чипом TPM.
B. Цель сниффинга TPM VI. ДЕМОНСТРАЦИЯ АТАКИ ОБХОДА МЕХАНИЗМОВ TPM
Целью сниффинга TPM является извлечение ключа Атак с целью обхода механизмов TPM позволяет
BitLocker из чипа TPM для расшифровки диска, извлечь ключ шифрования, используемый BitLocker для
зашифрованного BitLocker. шифрования данных на компьютере и в дальнейшем
расшифровать жёсткий диск компьютера и получить доступ
C. Как работает перехват TPM к данным, не зная пароля BitLocker.
Сниффинг TPM работает путём мониторинга связи Используемое в видео устройство подключается к
между менеджером загрузки и чипом TPM. Эта связь материнской плате компьютера и позволяет
осуществляется по шине LPC. Злоумышленник может злоумышленнику напрямую получить доступ к чипу TPM.
использовать аппаратное устройство для подключения к Получив доступ к чипу TPM, можно извлечь ключ
шине LPC и мониторинга данных, которые передаются шифрования и использовать его для расшифровки жёсткого
между диспетчером загрузки и чипом TPM. диска компьютера.
Менеджер загрузки — это небольшая программа, Далее приводится несколько примеров атак, которые
которая отвечает за загрузку операционной системы. Когда могут быть скомбинированы для обхода BitLocker
компьютер включён, диспетчер загрузки попадает в память
и начинает выполняться. Затем он загружает операционную A. Обход TPM
систему в память и передаёт ей управление. Атака нацелена на чип TPM, который является
Диспетчер загрузки взаимодействует с чипом TPM. Это аппаратным компонентом, используемым для хранения
сообщение используется для проверки целостности ключа шифрования BitLockerСуществует несколько
процесса загрузки и загрузки ключа шифрования для диска, способов обойти TPM:
зашифрованного BitLocker. • Физические атаки: злоумышленник может
Злоумышленник может использовать аппаратное физически удалить чип TPM с компьютера или
устройство для подключения к шине LPC и отслеживания использовать аппаратное устройство для прямого
связи между диспетчером загрузки и чипом TPM. Это доступа к чипу TPM.
позволяет ему извлечь ключ шифрования для диска, • Атаки с использованием встроенного ПО:
зашифрованного BitLocker. злоумышленник может воспользоваться
D. denandz/lpc_sniffer_tpm уязвимостями во встроенном ПО чипа TPM для
извлечения ключа шифрования.
LPC Sniffer TPM – проект с открытым исходным кодом
и использовался для извлечения ключей BitLocker VMK • Программные атаки: злоумышленник может
путём прослушивания шины LPC, когда BitLocker был использовать программный эксплойт для обхода
включён в конфигурации по умолчанию. чипа TPM и доступа к ключу шифрования.
LPC Sniffer TPM – это аппаратное устройство, которое B. Атака на процесс загрузки
может использоваться для извлечения ключа BitLocker из Оказывая воздействие на процесс загрузки,
чипа TPM путём прослушивания связи между менеджером злоумышленник в конечном счёте сможет расшифровать
загрузки и чипом TPM. Устройство подключается к шине жёсткий диск компьютера.
LPC и отслеживает данные, которые передаются между
диспетчером загрузки и чипом TPM. Существует несколько способов изменить процесс
загрузки:
1) Особенности LPC Sniffer TPM
• Считывание ввода-вывода и запись • Изменение загрузчика: злоумышленник может
изменить загрузчик, чтобы предотвратить загрузку
• Чтение из памяти и запись BitLocker или загрузить вредоносную версию
• Ошибки синхронизации BitLocker.
Больше материалов: Boosty | Sponsr | TG
• Использование буткита: злоумышленник может C. Анализ результатов
использовать буткит для изменения процесса Этот анализ включает изучение времени, необходимого
загрузки и загрузки вредоносной версии BitLocker. для взлома шифрования BitLocker, ресурсов, необходимых
• Использование уязвимостей в процессе загрузки: для проведения атаки, и влияния атаки на целостность
злоумышленник может использовать уязвимости в данных.
процессе загрузки для обхода BitLocker. D. Демонстрация атаки в обход TPM
C. Атаки по побочным каналам Практическое тестирование и эксперименты,
Атаки по побочным каналам используют изначально проведённые автором, предоставляют убедительные
недоступную информацию, но которая становится доступна доказательства в поддержку аргумента о том, что BitLocker
в процессе шифрования или дешифрования. Анализируя можно обойти с помощью относительно простой и
эту информацию, злоумышленник потенциально может недорогой атаки.
восстановить ключ шифрования. VIII. ПРОГРАММНЫЕ И АППАРАТНЫЕ КОМПОНЕНТЫ АТАКИ
Существует несколько типов атак по побочным
A. Аппаратные компоненты:
каналам:
1) Атака обхода TPM:
• Временные атаки: выполнение измерения время, • Raspberry Pi 3 Модель B+
необходимое для шифрования или дешифрования • Bus Pirate v3.6
данных, и использовать эту информацию для • Провода Dupont
восстановления ключа шифрования.
• Паяльник
• Атаки с анализом энергопотребления: • Припой
выполнение измерения энергопотребления 2) Атака на процесс загрузки:
компьютера в процессе шифрования или • Флэш-накопитель USB
дешифрования и использовать эту информацию для • Rufus
восстановления ключа шифрования. • Загрузочный дистрибутив Linux
• Электромагнитные атаки: выполнение измерения B. Программные компоненты:
электромагнитного излучения компьютера в
процессе шифрования или дешифрования и 1) Атака в обход TPM:
использовать эту информацию для восстановления • TPM2-Инструменты
ключа шифрования. • Python
• Scapy
D. Атаки методом "грубой силы"
C. Атака процесса загрузки:
Атака направлена на перебор возможных комбинаций
пароля или ключа шифрования, пока не будет найдена • ПО для кастомизации GRUB
правильная. Атаки методом перебора занимают много • Syslinux
времени, но быть успешными, если пароль или ключ
D. Применение в атаках:
шифрования недостаточно надёжны.
1) Атака обхода TPM:
VII. АПРОБАЦИЯ • Настройка оборудования: подключение
В видео проводится апробация для оценки Raspberry Pi к разъёму TPM компьютера с
эффективности функций безопасности BitLocker и анализ помощью проводов Dupont.
результатов для выявления потенциальных слабых мест. • Настройка программного обеспечения:
A. Тестовые среды установка TPM2-Tools, Python и Scapy на
Используются несколько тестовых сред для Raspberry Pi.
моделирования различных сценариев и конфигураций, что • Извлечение ключа шифрования:
позволяет протестировать эффективность функций использование TPM2-Tools для извлечения
безопасности BitLocker в различных ситуациях, например, ключа шифрования из чипа TPM.
при загрузке компьютера с USB-накопителя или при
отключении чипа TPM. 2) Атака на процесс загрузки:
• Создание загрузочного USB-накопитель:
B. Имитация атак использование Rufus для создания загрузочного
Моделируются различные атаки на BitLocker, включая USB-накопителя с дистрибутивом Linux.
атаки методом перебора, атаки по побочным каналам и
аппаратные атаки. Эти атаки предназначены для проверки • Изменение загрузчика: использование GRUB
надёжности алгоритмов шифрования BitLocker и Customizer, чтобы изменить загрузчик на USB-
механизмов управления ключами. накопителе для загрузки вредоносной версии
BitLocker.
Больше материалов: Boosty | Sponsr | TG
• Загрузка с USB-накопителя: загрузка • Компрометация конфиденциальной
компьютера с USB-накопителя. информации: атака может быть использована для
компрометации конфиденциальной информации,
• Расшифровка жесткого диска: вредоносная такой как государственные секреты, военные планы
версия BitLocker расшифровывает жесткий или корпоративные коммерческие секреты. Это
диск компьютера. имеет серьёзные последствия для национальной
E. Шаги по извлечению ключа BitLocker безопасности, общественного спокойствия и
экономической стабильности.
• Подключение Raspberry Pi к TPM-header.
Использование провода Dupont для X. КОНТРМЕРЫ
подключения выводов GPIO Raspberry Pi к
разъёму TPM компьютера. Несколько контрмер и рекомендаций по устранению
выявленных уязвимостей и повышению общей
• Установка TPM2-Tools, Python и Scapy на безопасности BitLocker:
Raspberry Pi с использованием авторских
инструкций. • Использование надёжного пароля BitLocker:
надёжный пароль затрудняет злоумышленнику
• Загрузка Raspberry Pi. принудительное использование ключа шифрования.
• Выполнение команды для извлечения ключа • Включение дополнительных функций
шифрования из чипа TPM: python безопасности: BitLocker предлагает несколько
tpm2_extractkey.py -d /dev/tpm0 -o [Link] дополнительных функций безопасности, таких как
двухфакторная аутентификация и безопасная
• Ключ шифрования будет сохранен в файле загрузка, которые могут помочь защитить от атак.
[Link].
• Поддержание актуальности операционной
IX. ПОСЛЕДСТВИЯ АТАКИ системы и программного обеспечения
• Потеря данных: атака позволяет компьютера: обновления программного
злоумышленникам расшифровать данные на обеспечения часто включают исправления
компьютере жертвы и получить к ним доступ, безопасности для защиты от уязвимостей.
включая личные файлы, финансовую информацию • Использование аппаратного TPM-чипа:
и коммерческие секреты. Это может привести к аппаратные TPM-чипы более безопасны, чем
значительным финансовым потерям, программные TPM-чипы.
репутационному ущербу и юридической
ответственности жертвы. A. Предотвращение сниффинга TPM
• Заражение вредоносным ПО: злоумышленники Есть несколько вещей, которые можно сделать, чтобы
могут использовать атаку для установки предотвратить перехват TPM, в том числе:
вредоносного ПО на компьютер жертвы, такого как • Включение режима BitLocker "только для
программы-вымогатели, шпионское ПО или доверенного модуля" значительно затрудняет
ботнеты. Это может дать удалённый контроль над извлечение ключа BitLocker из чипа TPM.
компьютером жертвы, позволяя им красть данные,
запускать атаки на другие системы или шпионить за • Поддержание операционной системы и
действиями жертвы. встроенного ПО компьютера в актуальном
состоянии помогает защититься от уязвимостей,
• Отказ в обслуживании: атака может быть которые могут быть использованы для получения
превращена в атаку типа отказа в обслуживании доступа к шине LPC.
компьютера жертвы, не позволяя ей получить
доступ к своим данным или использовать свой • Использование надёжного пароля или кодовой
компьютер в рабочих или личных целях. Это фразы для ключа шифрования BitLocker
приведёт к потере производительности, затруднит злоумышленнику принудительное
финансовым потерям и репутационному ущербу. использование ключа шифрования.