Аутентификация Microsoft по отпечатку пальца Windows Hello обойдена на ноутбуках Dell, Lenovo и Surface

Если вы слышали, что исследователи обходили Windows Hello на ноутбуках Dell, Lenovo и Surface, это все, что вам нужно знать.

Ключевые выводы

  • Исследователям удалось обойти Windows Hello на ноутбуках Dell, Lenovo и Microsoft, выявив уязвимости в технологии сканирования отпечатков пальцев.
  • Датчики отпечатков пальцев на этих ноутбуках используют технологию «Match on Chip» для выполнения биометрической проверки на собственных микропроцессорах, но это по сути не предотвращает атаки спуфинга.
  • Протокол защиты устройств Microsoft (SDCP) направлен на устранение этих уязвимостей, но исследователи обнаружили, что некоторые ноутбуки, включая Lenovo ThinkPad T14 и Microsoft Surface Type Cover, вообще не использовали SDCP, что делало их более восприимчивыми к атаки.

Если у тебя есть Ноутбук с Windows, то вы наверняка сталкивались с Windows Hello. Это биометрический вход, который на поддерживаемых ноутбуках позволяет пользователям входить в систему с помощью сканирования лица, сканирования радужной оболочки глаза или сканирования отпечатков пальцев. Однако в случае использования отпечатка пальца для проникновения в ваш ноутбук имейте в виду: исследователи из штаб-квартиры Blackwing обошли Windows Hello на трех разных ноутбуках от Dell, Lenovo и Microsoft.

Выступая на конференции Microsoft BlueHat в Редмонде, штат Вашингтон, Джесси Д'Агуанно и Тимо Терас продемонстрировал как им удалось обойти Windows Hello на Dell Inspiron 15, Lenovo ThinkPad T14s и Microsoft Surface Pro Type Cover с идентификатором отпечатка пальца (для Surface Pro 8/X). Это означало, что они могли получить доступ к учетной записи пользователя и данным пользователя, как если бы они были обычным пользователем. Кроме того, в этих трех устройствах используются датчики от Goodix, Synaptics и ELAN соответственно. это означает, что эти уязвимости не ограничиваются одним производителем сканеров отпечатков пальцев или ноутбуком. OEM.

Матч по чипам, SDCP и как производители ноутбуков облажались

Surface Pro 7+ с черной клавиатурой-крышкой

Прежде всего, необходимо понимать, как эти сканеры отпечатков пальцев работают и взаимодействуют с хост-системой. Все три сканера отпечатков пальцев используют технологию «Match on Chip» (MoC), что означает, что они оснащены собственным микропроцессором и хранилищем. Вся проверка отпечатков пальцев выполняется на этом чипе, включая сравнение с базой данных «шаблонов отпечатков пальцев»; биометрические данные, которые получает датчик отпечатков пальцев. Это гарантирует, что даже если хост-машина будет скомпрометирована (в данном случае сам ноутбук), биометрические данные не будут подвергаться риску.

Еще одним преимуществом MoC является то, что он не позволяет злоумышленнику скомпрометировать поддельный датчик и отправить биометрические данные в хост-систему. Однако это не мешает злонамеренному датчику притворяться законным, сообщая системе, что пользователь прошел аутентификацию. Он также не может предотвратить атаки повторного воспроизведения, когда злоумышленник может перехватить действительную попытку входа в систему, а затем «воспроизвести» ее обратно в хост-систему. Windows Hello Advanced Sign-in Security (ESS) требует использования датчиков MoC, но вы уже можете увидеть ряд способов, с помощью которых злоумышленники могут попытаться проникнуть в ноутбук пользователя. Вот почему Microsoft разработала SDCP, протокол безопасной защиты устройств.

SDCP преследует следующие цели:

  1. Обеспечение доверия к устройству отпечатков пальцев
  2. Обеспечение работоспособности устройства отпечатков пальцев
  3. Защита ввода между устройством отпечатков пальцев и хостом

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

  1. Может ли хост быть уверен, что он разговаривает с настоящим устройством?
  2. Может ли хост быть уверен, что устройство не было взломано или модифицировано?
  3. Защищены ли данные, поступающие с устройства?

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

Все вышеперечисленное звучит хорошо, и SDCP как концепция является отличной функцией безопасности, которую должны использовать OEM-производители. В результате для исследователей стало неожиданностью, когда Lenovo ThinkPad T14s и Microsoft Surface Type Cover вообще не использовали SDCP.

Цитируем исследователей из штаб-квартиры Blackwing:

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

Наконец, мы обнаружили, что SDCP не был включен даже на двух из трех целевых устройств».

Атака на Dell, Lenovo и Surface

В случае с Dell Inspiron 15 исследователи обнаружили, что они могут зарегистрировать отпечаток пальца через Linux, который, в свою очередь, не будет использовать SDCP. При этом оказывается, что датчик хранит две базы данных отпечатков пальцев как для Linux, так и для Windows (следовательно, гарантируя, что SDCP используется только в Windows, и пользователь не может зарегистрироваться на Linux для входа в Windows) можно перехватить соединение между датчиком и хостом, чтобы сообщить датчику использовать базу данных Linux, несмотря на то, что машина загружается в Окна.

Все это стало возможным благодаря неаутентифицированному пакету, который проверял загружаемую операционную систему и мог быть перехвачен, чтобы вместо этого указать на базу данных Linux. Для регистрации пользователей в базе данных Linux потребовалось использовать Raspberry Pi 4 и подключиться к датчику вручную, но это сработало и позволило исследователям войти в систему Windows, используя любой отпечаток пальца, сохраняя при этом SDCP. нетронутый.

Источник: штаб-квартира Blackwing.

В случае с Lenovo ThinkPad T14s потребовалось обратное проектирование специального стека TLS, обеспечивающего связь между хостом и датчиком, полностью пропуская SDCP. Ключ, использованный для шифрования этого сообщения, оказался комбинацией продукта машины. имя и серийный номер, а эксплуатация просто потому, что это «техническая проблема», как выразились исследователи это.

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

Источник: штаб-квартира Blackwing.

Худший и самый вопиющий из трех — датчик отпечатков пальцев Microsoft Surface Cover от ELAN. SDCP отсутствует, он обменивается данными через USB в виде открытого текста и не предпринимает никаких усилий для аутентификации пользователя. Единственная проверка аутентификации, которую он выполняет, — это проверка хост-системы на предмет соответствия количества зарегистрированных отпечатков пальцев на хосте числу, имеющемуся на датчике. Эту проблему все еще можно легко обойти с помощью поддельного датчика, спрашивающего у настоящего датчика, сколько отпечатков пальцев зарегистрировано.

Что ты можешь сделать?

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

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