Использование виртуальных смарт-карт с Windows 8

Опубликовано: 7 Апреля, 2023
Использование виртуальных смарт-карт с Windows 8

Введение

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

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

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

Что такое виртуальная смарт-карта?

Традиционные смарт-карты представляют собой физические объекты; они относятся к категории средств аутентификации «что-то, что у вас есть» и используются вместе с «чем-то, что вы знаете» (пароль или PIN-код) для обеспечения двухфакторной аутентификации. Виртуальные смарт-карты (VSC) создают программную конструкцию, которая эмулирует и представляется операционной системе в виде смарт-карты, подобно тому, как виртуальная машина эмулирует отдельный компьютер и экземпляр ОС. Однако здесь задействован аппаратный элемент: TPM. Таким образом, у вас все еще есть двухфакторная аутентификация (TPM плюс PIN-код).

Большинство новых машин бизнес-класса имеют чипы TPM; многие потребительские компьютеры, особенно те, которым несколько лет, этого не делают. Если TPM присутствует, его необходимо включить в системном BIOS. На компьютере с Windows 7/8 вы можете узнать, есть ли у вас TPM, запустив tpm.msc. Откроется консоль управления TPM, где вы увидите информацию о своем TPM или, если у вас его нет (или если он отключен в BIOS), вы увидите сообщение «Доверенный платформенный модуль (TPM)». невозможно найти на этом компьютере».

Характеристики ВСК

Виртуальные смарт-карты и виртуальные устройства чтения смарт-карт отображаются в Windows 8 и в приложениях так же, как физические смарт-карты, и используют одни и те же API-интерфейсы уровня приложений, но вы можете отличить их друг от друга, поскольку значок отличается. Значок, представляющий VSC, показан на рисунке 1.

Изображение 23082
фигура 1

Что касается операционной системы и приложений, то они видят, что VSC всегда вставлен в устройство считывания виртуальных карт. Таким образом, вы не можете установить политику (как в случае с физическими смарт-картами) для автоматического выхода пользователя из системы при извлечении карты. Для пользователя войти в систему с помощью VSC так же просто, как войти с помощью простого пароля; все, что нужно сделать пользователям, это ввести свои PIN-коды.

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

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

Примечание:
Хотя VSC специфичен для одного TPM на одном компьютере, администраторы могут выпустить VSC для того же пользователя, который будет использовать его на каждом компьютере, к которому ему необходимо получить доступ. Кроме того, точно так же, как другие пользователи могут вставлять свои собственные смарт-карты в устройство чтения, чтобы несколько пользователей могли использовать одну и ту же машину, другим пользователям могут быть выданы отдельные VSC для одной и той же машины. Это было бы уместно в тех случаях, когда Windows-To-Go позволяет разным пользователям использовать одну и ту же физическую машину, вставляя свои USB-накопители со своими собственными экземплярами Windows. На одном компьютере можно создать до шести VSC.

Как и физические смарт-карты, VSC блокируют пользователя, который вводит неправильный PIN-код определенное количество раз. Это похоже на функцию блокировки учетной записи, которую можно настроить с помощью групповой политики Windows, и она предназначена для предотвращения атак методом грубой силы, которые просто пробуют один PIN-код за другим в надежде найти правильный. В терминологии смарт-карт эта функция блокировки известна как защита от взлома.

Каковы недостатки VSC по сравнению с физическими смарт-картами? Наиболее очевидным является то, что то, что делает ВСК более удобным для пользователя, является и его слабостью — его нельзя снять с устройства и взять с собой. Если вы покидаете компьютер, смарт-карта все еще «вставлена», поэтому, если злоумышленник получит доступ к машине и узнает PIN-код, он внутри. Таким образом, безопасность PIN-кода очень важна.

Как работают ВСК

Смарт-карты (виртуальные или иные) основаны на цифровых сертификатах, а это означает, что вам нужна инфраструктура открытых ключей (PKI). Центр сертификации (ЦС) Windows Server 2012 имеет два шаблона сертификатов по умолчанию, которые можно использовать для выдачи сертификатов смарт-карт. Шаблон входа со смарт-картой подходит, когда карта используется только для входа в систему. Если вы хотите, чтобы пользователи могли использовать сертификат для шифрования электронной почты, используйте шаблон пользователя смарт-карты.

Вы можете создавать собственные шаблоны сертификатов. В качестве CSP (поставщика криптографических услуг) для сертификатов следует использовать криптопровайдер Microsoft Base Smart Card. Вы можете установить срок действия сертификата и минимальный размер ключа.

Перед созданием VSC необходимо создать шаблон сертификата на сервере. Это делается с помощью оснастки MMC «Шаблоны сертификатов». Если вы собираетесь разрешить пользователям регистрировать свои сертификаты, вам необходимо предоставить права «регистрации» группе «аутентифицированные пользователи». Затем вам нужно будет зайти в MMC центра сертификации в ЦС и выбрать вновь созданный шаблон в качестве нового шаблона сертификата для выдачи.

Примечание:
Для крупномасштабного создания VSC существуют программные решения для управления VSC.

Создание и выдача VSC

Чтобы создать VSC, используйте утилиту командной строки Tpmvscmgr.exe, показанную на рис. 2, которую необходимо запустить с правами локального администратора на компьютере под управлением Windows 8, который является членом вашего домена.

Изображение 23083
фигура 2

Синтаксис команды показан на рисунке. Вы можете настроить PIN-код для ключа, ключ разблокировки PIN-кода (PUK) и ключ администратора. PUK-код используется для разблокировки VSC, чтобы пользователь мог сбросить PIN-код, если он забыт. Ключ администратора — это более безопасный способ разблокировать карту для сброса ПИН-кода. То, что вы используете, зависит от вашего решения для управления смарт-картами. Обратите внимание, что PIN-код должен состоять как минимум из восьми цифр, и вы также можете использовать буквенные и специальные символы, что делает его больше похожим на пароль, чем на PIN-код. Ключ администратора состоит из 48 шестнадцатеричных цифр.

В домене вы можете создать смарт-карту на удаленном компьютере с помощью подкоманды /machine. Вы должны запускать утилиту под учетной записью, входящей в группу локальных администраторов на удаленном компьютере.

Когда карта будет создана, утилита отобразит для нее «идентификатор экземпляра». Вам нужно будет знать этот идентификатор, если вы когда-нибудь захотите использовать команду /destroy для удаления VSC с компьютера.

Регистрация

Если вы раньше работали со смарт-картами, то знаете, что перед их использованием их необходимо зарегистрировать. Здесь к карте прикрепляются учетные данные пользователя. Процесс немного отличается с VSC, потому что здесь нет регистрационной станции. Они регистрируются на локальном компьютере с Windows 8 с помощью мастера регистрации сертификатов в консоли управления сертификатами (доступ к которой осуществляется путем запуска certmgr.msc). Чтобы запустить мастер, выполните следующие действия, как показано на рис. 3:

  1. На левой панели щелкните правой кнопкой мыши узел Personal.
  2. Выберите Все задачи.
  3. Выберите Запросить новые сертификаты.

Изображение 23084
Рисунок 3

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

Использование и техническое обслуживание ВСК

VSC теперь можно использовать так же, как физическую смарт-карту (за исключением того, что ее никогда не извлекают из устройства). Приложения будут рассматривать его как традиционную смарт-карту.

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

Если Windows необходимо переустановить или если VSC скомпрометирован, VSC необходимо будет повторно выпустить. Это означает повторный процесс создания карты, создание нового PIN-кода и ключа администратора. Также обратите внимание, что если доверенный платформенный модуль на компьютере необходимо повторно инициализировать, вам придется заново создать VSC.

Если неправильный PIN-код вводится слишком много раз (как при атаке методом грубой силы), VSC может перейти в режим временной задержки, при котором он блокируется и его необходимо сбросить. Кроме того, сам доверенный платформенный модуль может перейти в режим блокировки, и его потребуется сбросить с помощью пароля владельца доверенного платформенного модуля. Это две разные проблемы.

Для получения более подробной информации, включая пошаговые инструкции по использованию средств, описанных в этой статье, загрузите документ Understanding and Evaluating Virtual Smart Cards.docx из Центра загрузки Microsoft.

Резюме

Поддержка виртуальных смарт-карт в Windows 8 дает компаниям возможность реализовать двухфакторную аутентификацию без затрат, связанных с традиционными смарт-картами. Для пользователя процесс входа в систему в основном такой же, как и при использовании традиционной аутентификации по паролю, но внутри он более безопасен — и пользователю не нужно беспокоиться о том, чтобы не отставать от физической карты.