Время на прочтение10 мин
Количество просмотров85K
Кто-то из вас наверняка слышал про инцидент , который был обнародован совсем недавно. Американский производитель полупроводников Allegro MicroSystem LLC подал в суд на своего бывшего IT-специалиста за саботаж. Нимеш Пател, проработавший в компании 14 лет, уничтожил важные финансовые данные в первую неделю нового фискального года.
Как это произошло?
Через две недели после своего увольнения Пател зашел на территорию штаб-квартиры компании в Вустере (штат Массачусетс, США) с целью поймать корпоративную сеть Wi-Fi. Используя учетные данные бывшего коллеги и рабочий ноутбук, Пател авторизовался в корпоративной сети. Затем он внедрил в модуль Oracle код и запрограммировал его выполнение на 1 апреля 2016 года — первую неделю нового финансового года. Код предназначался для копирования определенных заголовков или указателей в отдельную таблицу базы данных и следующего удаления их из модуля. Ровно 1 апреля данные были удалены из системы. И поскольку злоумышленник авторизовался в сети Allegro легально, его действия были замечены не сразу.
Подробности широкая общественность не знает, но скорее всего инцидент стал возможен во многом благодаря тому, что в компании для доступа в сеть использовалась парольная аутентификация. Наверняка там были и другие проблемы с безопасностью, но именно пароль можно похитить незаметно для пользователя и факт кражи пароля не будет обнаружен, в лучшем случае вплоть до момента использования похищенных учетных данных.
Применение строгой двухфакторной аутентификации и запрет на использование паролей в сочетании с грамотной политикой безопасности могли бы помочь, если не избежать описанного развития событий, то сильно затруднить реализацию такого плана.
Мы расскажем о том, как можно значительно повысить уровень безопасности вашей компании и защитить себя от подобных инцидентов. Вы узнаете, как настроить аутентификацию и подпись важных данных, используя токены и криптографию (как иностранную, так и отечественную).
В первой статье мы объясним как настроить строгую двухфакторную аутентификацию с использованием PKI при входе в доменную учетную запись в Windows.
В следующих статьях мы расскажем вам, как настроить Bitlocker, защитить электронную почту и простейший документооборот. Также мы вместе с вами настроим безопасный доступ к корпоративным ресурсам и безопасный удаленный доступ по VPN.
Двухфакторная аутентификация
Опытным системным администраторам и службам безопасности хорошо известно, что пользователи крайне не сознательны в вопросе соблюдения политик безопасности, они могут записать свои учетные данные на стикере и приклеить его рядом с компьютером, передать пароли своим коллегам и тому подобное. Особенно часто это происходит, когда пароль сложный (содержащий более 6 знаков и состоящий из букв разного регистра, цифр и специальных символов) и его трудно запомнить. А ведь такие политики администраторами задаются не просто так. Это необходимо для защиты учетной записи пользователя от простого перебора паролей по словарю. Также администраторы рекомендуют менять пароли хотя бы раз в 6 месяцев, просто из того соображения, что за это время теоретически можно отбрутфорсить даже сложный пароль.
Давайте вспомним, что такое аутентификация. В нашем случае это процесс подтверждения подлинности субъекта или объекта. Аутентификация пользователя — это процесс подтверждения подлинности пользователя.
А двухфакторная аутентификация — это такая аутентификация, в которой необходимо использовать не менее двух различных способов для подтверждения своей личности.
Простейшим примером двухфакторной аутентификации в реальной жизни является сейф с замком и кодовой комбинацией. Чтобы открыть такой сейф необходимо знать код и владеть ключом.
Токен и смарт-карта
Наверно, самым надежным и простым в реализации способом двухфакторной аутентификации является использование криптографического токена или смарт-карты. Токен — это USB-устройство, которое является и считывателем, и смарт-картой одновременно. Первым фактором в таком случае является факт владения устройством, а вторым — знание его PIN-кода.
Использовать токен или смарт-карту, тут кому, что удобнее. Но исторически так сложилось, что в России больше привыкли использовать токены, так как они не требуют использования встроенных или внешних считывателей смарт-карт. У токенов есть и свои минусы. Например, на нем не напечатаешь фотографию.
На фотографии изображена типичная смарт-карта и считыватель.
Однако вернемся к корпоративной безопасности.
А начнем мы с домена Windows, ведь в большинстве компаний в России корпоративная сеть построена именно вокруг него.
Как известно, политики Windows-домена, настройки пользователей, настройки групп в Active Directory предоставляют и разграничивают доступ к огромному количеству приложений и сетевых сервисов.
Защитив учетную запись в домене, мы можем защитить большинство, а в некоторых случаях и вообще все внутренние информационные ресурсы.
Почему двухфакторная аутентификация в домене по токену с PIN-кодом безопаснее обычной парольной схемы?
PIN-код привязан к определенному устройству, в нашем случае к токену. Знание PIN-кода само по себе ничего не дает.
Например, PIN-код от токена можно диктовать по телефону другим лицам и это ничего не даст злоумышленнику, если вы достаточно бережно относитесь к токену и не оставляете его без присмотра.
С паролем же ситуация совершенно иная, если злоумышленник подобрал, угадал, подсмотрел или еще каким-то образом завладел паролем от учетной записи в домене, то он сможет беспрепятственно зайти, как в сам домен, так и в другие сервисы компании, в которых используется эта же учетная запись.
Токен является уникальным некопируемым физическим объектом. Им обладает легитимный пользователь. Двухфакторную аутентификацию по токену можно обойти только тогда, когда администратор намеренно или по недосмотру оставил для этого «лазейки» в системе.
Преимущества входа в домен по токену
PIN-код от токена проще запомнить, так как он может быть намного проще пароля. Каждый наверняка хоть раз в жизни видел, как «опытный» пользователь мучительно не может с нескольких попыток аутентифицироваться в системе, вспоминая и вводя свой «безопасный» пароль.
PIN-код не обязательно постоянно менять, так как токены более устойчивы к перебору PIN-кодов. После некоторого числа неудачных попыток ввода, токен блокируется.
При использовании токена для пользователя вход в систему выглядит следующим образом: после загрузки компьютера, он просто подключает токен к USB-порту компьютера, вводит 4-6 цифр и нажимает кнопку Enter. Скорость ввода цифр у обычных людей выше, чем скорость ввода букв. Поэтому PIN-код вводится быстрее.
Токены позволяют решить проблему «брошенного рабочего места» — когда пользователь уходит со своего рабочего места и забывает выйти из своей учетной записи.
Политика домена может быть настроена таким образом, чтобы компьютер автоматически блокировался при извлечении токена. Также токен может быть оснащен RFID-меткой для прохода между помещениями компании, поэтому не забрав токен со своего рабочего места, сотрудник просто не сможет перемещаться по территории.
Недостатки, куда же без них
Токены или смарт-карты не бесплатные (решается бюджетом).
Их нужно учитывать, администрировать и обслуживать (решается системами управления токенами и смарт-картами).
Некоторые информационные системы могут «из коробки» не поддерживать аутентификацию по токенам (решается системами типа Single Sign-On — предназначенными для организации возможности использования единой учетной записи для доступа к любым ресурсам области).
Настройка двухфакторной аутентификации в домене Windows
Теоретическая часть:
Служба каталога Active Directory поддерживает возможность аутентификации с помощью смарт-карты и токена, начиная с Windows 2000. Она заложена в расширении PKINIT (public key initialization — инициализация открытого ключа) для протокола Kerberos RFC 4556 .
Протокол Kerberos был специально разработан для того, чтобы обеспечить надежную аутентификацию пользователей. Он может использовать централизованное хранение аутентификационных данных и является основой для построения механизмов Single Sing-On. Протокол основан на ключевой сущности Ticket (билет).
Ticket (билет) является зашифрованным пакетом данных, который выдается доверенным центром аутентификации, в терминах протокола Kerberos — Key Distribution Center (KDC, центр распределения ключей).
Когда пользователь выполняет первичную аутентификацию после успешного подтверждения его подлинности, KDC выдает первичное удостоверение пользователя для доступа к сетевым ресурсам — Ticket Granting Ticket (TGT).
В дальнейшем при обращении к отдельным ресурсам сети, пользователь, предъявляет TGT, получает от KDC удостоверение для доступа к конкретному сетевому ресурсу — Ticket Granting Service (TGS).
Одним из преимуществ протокола Kerberos, обеспечивающим высокий уровень безопасности, является то, что при любых взаимодействиях не передаются ни пароли, ни значения хеша паролей в открытом виде.
Расширение PKINIT позволяет использовать двухфакторную аутентификацию по токенам или смарт-картам на этапе предаутентификации Kerberos.
Вход в систему может быть обеспечен, как при использовании службы каталога домена, так и локальной службы каталога. TGT создается на основе электронной подписи, которая вычисляется на смарт-карте или токене.
Все контроллеры доменов должны иметь установленный сертификат Domain Controller Authentication, или Kerberos Authentication, т. к. реализуется процесс взаимной аутентификации клиента и сервера.
Практика:
Приступим к настройке.
Сделаем так, чтобы в домен под вашей учетной записью можно было зайти только по предъявлению токена и зная PIN-код.
Для демонстрации мы будем использовать Рутокен ЭЦП PKI производства компании «Актив».
1 Этап — Настройка домена Первым делом установим службы сертификации.
Дисклеймер.
Эта статья не является туториалом по внедрению корпоративного PKI. Вопросы проектирования, разворачивания и грамотного применения PKI тут не рассматриваются ввиду необъятности этой темы.
Все контроллеры доменов и все клиентские компьютеры в рамках леса, где осуществляется внедрение такого решения, обязательно должны доверять корневому Удостоверяющему Центру (Центру Сертификации).
Задача центра сертификации — подтверждать подлинность ключей шифрования с помощью сертификатов электронной подписи.
Технически центр сертификации реализован как компонент глобальной службы каталогов, отвечающий за управление криптографическими ключами пользователей. Открытые ключи и другая информация о пользователях хранится удостоверяющими центрами в виде цифровых сертификатов.
Удостоверяющий центр, выдающий сертификаты для использования смарт-карт или токенов, должен быть помещен в хранилище NT Authority.
Зайдите в Диспетчер сервера и выберите «Добавить роли и компоненты».
При добавлении ролей сервера выберите «Службы сертификации Active Directory» (Microsoft категорически рекомендует не делать это на контроллере домена, дабы не огрести проблем с производительностью). В открывшемся окне выберите «Добавить компоненты» и выберите пункт «Центр сертификации».
На странице для подтверждения установки компонентов нажмите «Установить».
2 Этап — Настройка входа в домен с помощью токена
Для входа в систему нам понадобится сертификат, который содержит идентификаторы Smart Card Logon и Client Authentication.
Сертификат для смарт-карт или токенов также должен содержать UPN пользователя (суффикс имени участника-пользователя). По умолчанию суффиксом имени участника-пользователя для учетной записи является DNS-имя домена, которое содержит учетную запись пользователя.
Сертификат и закрытый ключ должны быть помещены в соответствующие разделы смарт-карты или токена, при этом закрытый ключ должен находиться в защищенной области памяти устройства.
В сертификате должен быть указан путь к точке распространения списка отзыва сертификатов (CRL distribution point). Такой файл содержит список сертификатов с указанием серийного номера сертификата, даты отзыва и причины отзыва. Он используется для передачи сведений об отозванных сертификатах пользователям, компьютерам и приложениям, пытающимся проверить подлинность сертификата.
Настроим установленные службы сертификации. В правом верхнем углу нажмите на желтый треугольник с восклицательным знаком и щелкните «Настроить службы сертификации…».
В окне «Учетные данные» выберите необходимые учетные данные пользователя для настройки роли. Выберите «Центр сертификации».
Выберите «ЦС предприятия».
ЦС предприятия интегрированы с AD. Они публикуют сертификаты и списки отзыва сертификатов в AD.
Укажите тип «Корневой ЦС».
На следующем этапе выберите «Создать новый закрытый ключ».
Выберите период действия сертификата.
3 этап — Добавление шаблонов сертификатов
Для добавления шаблонов сертификатов откройте Панель управления, выберите пункт «Администрирование» и откройте Центр сертификации.
Щелкните по названию папки «Шаблоны сертификатов», выберите пункт «Управление».
Щелкните по названию шаблона «Пользователь со смарт-картой» и выберите пункт «Скопировать шаблон». На следующих скриншотах показано, какие параметры в окне «Свойства нового шаблона» необходимо изменить.
Если в списке поставщиков нет «Aktiv ruToken CSP v1.0», то необходимо установить комплект «Драйверы Рутокен для Windows».
Начиная с Windows Server 2008 R2 вместо специального провайдера от производителя можно использовать «Microsoft Base Smart Card Crypto Provider».
Для устройств Рутокен библиотека «минидрайвера», поддерживающая «Microsoft Base Smart Card Crypto Provider», распространяется через Windows Update.
Проверить установился ли «минидрайвер» на вашем сервере можно подключив Рутокен к нему и посмотрев в диспетчер устройств.
Если «минидрайвера» по каким-то причинам нет, его можно установить принудительно, инсталлировав комплект «Драйверы Рутокен для Windows», а после этого воспользоваться «Microsoft Base Smart Card Crypto Provider».
Комплект «Драйверы Рутокен для Windows» распространяется бесплатно с сайта Рутокен .
Добавьте два новых шаблона «Агент сертификации» и «Пользователь с Рутокен».
Для этого выйдите из окна «Управления шаблонами». Нажмите правой кнопкой мыши на «Шаблоны сертификатов» и выберите пункт меню «Создать» и подпункт «Выдаваемый шаблон сертификата».
Далее выберите «Агент регистрации» и «Пользователь с Rutoken» и нажмите «ОК».
В результате названия этих шаблонов отобразятся в центре сертификации.
Далее нам необходимо выписать сертификат администратору домена. Откройте службу «Выполнить» и укажите команду mmc. Добавьте оснастку «Сертификаты».
В окне «Оснастки диспетчера сертификатов» выберите «моей учетной записи пользователя». В окне «Добавление и удаление оснастки» подтвердите добавление сертификатов.
Выберите папку «Сертификаты».
Запросите новый сертификат. Откроется страница для регистрации сертификата. На этапе запроса сертификата выберите политику регистрации «Администратор» и нажмите «Заявка».
Таким же образом запросите сертификат для Агента регистрации.
Чтобы запросить сертификат для определенного пользователя щелкните «Сертификаты», выберите пункт «Зарегистрироваться от имени…».
В окне для запроса сертификата установите флажок «Пользователь с Рутокен».
Теперь необходимо выбрать пользователя.
В поле «Введите имена выбранных объектов» укажите имя пользователя в домене и нажмите «Проверить имя».
В окне для выбора пользователя нажмите «Заявка».
В раскрывающемся списке выберите имя токена и укажите PIN-код.
Таким же образом выберите сертификаты для других пользователей в домене.
4 этап — Настройка учетных записей пользователей
Для настройки учетных записей откройте список пользователей и компьютеров AD.
Выберите папку Users и пункт «Свойства».
Перейдите на вкладку «Учетные записи», установите флажок «Для интерактивного входа в сеть нужна смарт-карта».
Настройте политики безопасности. Для этого откройте Панель управления и выберите пункт «Администрирование». Откройте меню для управления групповой политикой.
В левой части окна «Управление групповой политикой» щелкните «Default Domain Policy» и выберите пункт «Изменить».
В левой части окна «Редактор управления групповыми политиками» выберите пункт «Параметры безопасности».
Откройте политику «Интерактивный вход в систему: требовать смарт-карту».
На вкладке «Параметры политики безопасности» установите флажки «Определить следующий параметр политики» и «Включен».
Откройте политику «Интерактивный вход в систему: поведение при извлечении смарт-карты».
На вкладке «Параметры политики безопасности» установите флажок «Определить следующий параметр политики», из раскрывающегося списка выберите «Блокировка рабочей станции».
Перезагрузите компьютер. И при следующей попытке аутентификации в домене уже можно будет использовать токен и его PIN-код.
BINGO!
Двухфакторная аутентификация для входа в домен настроена, а значит существенно повышен уровень безопасность для входа в Windows домен без траты безумной суммы на дополнительные средства защиты. Теперь без токена вход в систему невозможен, а пользователи могут вздохнуть спокойно и не мучиться со сложными паролями.
Следующий шаг — безопасная почта, об этом и о настройке безопасной аутентификации в других системах читайте в наших следующих статьях.
Общая информация
Настоящая инструкция описывает настройку входа в домен по предъявлении токена в операционных системах Windows Server 2022 Rus и Windows Server 2025 Rus.
Все описанные далее действия производятся с правами администратора системы. В качестве примера используется учетная запись Admin.
Программные требования
- ОС Windows Server 2022 Rus или Windows Server 2025 Rus;
- учетная запись с правами администратора системы;
- установленные драйверы Рутокен;
- дистрибутив ОС.
Предварительная настройка
Перед тем, как приступать к работе, убедитесь, что:
- операционная система настроена как Контроллер домена;
- установлены Службы сертификации;
- пользователям выданы сертификаты типа Пользователь со смарт-картой или Вход со смарт-картой.
Если все условия выполнены, можно переходить к настройке входа в домен.
Настройка учетной записи
В первую очередь необходимо настроить учетные записи пользователей.
В этом примере будет настроена учетная запись User — пользователь домена, который только в группу Пользователи домена.
Для настройки учетной записи пользователя:
- Откройте меню Пуск.
- В поисковой строке введите «пользователи и компьютеры» и откройте найденную оснастку Пользователи и компьютеры Active Directory.
- В левой части окна оснастки выберите Users.
- Нажмите правой кнопкой мыши на имя пользователя, которому будет разрешено входить в домен только при наличии устройства Рутокен, и выберите пункт Свойства.
- В окне свойств пользователя перейдите на вкладку Учетная запись.
- В секции Параметры учетной записи установите флажок Для интерактивного входа в сеть нужна смарт-карта. Нажмите ОК.
Настройка политик безопасности домена
Шаги 4-5 процедуры необходимо выполнять только в том случае, если всем пользователям будет запрещен вход в домен без устройства Рутокен с необходимым сертификатом.
Для настройки политик безопасности:
- Откройте меню Пуск.
- В поисковой строке введите «управление групповой политикой» и откройте найденную оснастку
- В окне Управление групповой политикой нажмите на категорию Объекты групповой политики
-
Нажмите правой кнопкой мыши на объект Default Domain Policy и выберите пункт Изменить…
- В левой части окна Редактор управления групповыми политиками раскройте
- В правой части окна нажмите дважды левой кнопкой мыши Интерактивный вход в систему: требовать Windows Hello для бизнеса или смарт- карту.
- и установите переключатель в положении Включен.
- Нажмите ОК, чтобы сохранить настройку и закрыть окно свойств.
- В правой части окна нажмите правой кнопкой мыши на политику Интерактивный вход в систему: поведение при извлечении смарт-карты и выберите пункт Свойства.
- Установите флажок Определить следующий параметр политики.
- Из раскрывающегося списка выберите поведение клиентской ОС при отсоединении устройства Рутокен в процессе открытого пользовательского сеанса. В данном примере выбрано поведение ОС — Блокировка рабочей станции.
- Нажмите ОК, чтобы сохранить настройку и закрыть окно свойств.
- Закройте окно Редактор управления групповыми политиками.
- Перезагрузите компьютер.
Настройка клиентской операционной системы
Компьютеры с установленными клиентскими операционными системами Windows 11/10/8.1/8/7/Vista/XP/2000 необходимо ввести в домен и установить на них драйверы Рутокен. Редакции ОС должны включать возможность присоединения к домену.
Если клиентские компьютеры были загружены во время настройки сервера, то необходимо их перезагрузить. После этого пользователи, которым выдан сертификат типа Пользователь со смарт-картой или Вход со смарт-картой, смогут входить в домен только при подключении к компьютеру устройства Рутокен с этим сертификатом.
При извлечении устройства Рутокен в процессе открытого пользовательского сеанса клиентская ОС будет автоматически заблокирована (в ОС Windows 11/10/8.1/8/7/Vista для блокировки рабочего стола при отключении устройства Рутокен необходимо установить автоматический запуск службы Политика удаления смарт-карт/Smart Card Removal Policy).
Гораздо более сильным, чем пара логин/ пароль, способом регистрации сотрудника в информационной системе
фирмы являются электронные ключи-токены. Токен есть принципиально невзламываемый чип, который содержит подписанный
сертификат пользователя.
Домен Windows Server 2008/ 2003 поддерживает авторизацию по электронным ключам (при помощи
встроенного сервера сертификатов), причем для усиления безопасности такой способ авторизации может быть объявлен единственно
возможным – с запретом входа в систему по традиционной паре логин/ пароль. При этом вход по токену осуществляется как при
логине на персональный компьютер или терминал — участник домена Windows Server, так и при попытке авторизации на сервере в режиме терминального доступа.
При извлечении карты доступ к компьютеру или серверу немедленно блокируется, для повторного входа нужно набрать уникальный
пин-код. Сервер сертификатов, встроенный в любую версию MS Windows Server Standard и выше, осуществляет централизованное
управление выдачей цифровых сертификатов стандарта X.509 и их привязку к пользователям домена, позволяет устанавливать
сроки действия сертификатов, отзывать их и выпускать новые.
Ключи-токены выпускаются либо в виде USB-брелка, либо в виде смарт-карты, в последнем случае в компьютере или терминале
должен быть установлен специальный считыватель смарт-карт. Преимущество смарт-карты состоит в том, что в нее может быть
встроена RFID-метка, и карта становится универсальным средством доступа как в помещения фирмы,
так и в компьютерную сеть.
Некоторые модели ключей eToken поддерживают российиские алгоритмы шифрования и сертифицированы ФСБ России
WIT Company оказывает услуги по введению системы доступа к информационным ресурсам предприятия с помощью е-токенов и смарт карт фирмы Аладдин Р.Д.
Сервер сертификатов MS Windows Server 2008 — запрос сертификата:
Кроме программно-аппаратных средств защиты для бесперебойной работы сетевого оборудования применяются также термошкафы. Оборудование, размещенное в нем, защищено физически от вредных воздействий окружающей среды: жары, мороза, пыли, влаги. Купить термошкаф можно в этом разделе.
В подборках нововведений версии 20H1 можно было услышать примерно такую песню:
Теперь проще выполнить беспарольный вход в систему при помощи идентификации лица, отпечатка пальца или PIN-кода. Просто разрешите в настройках идентификацию при помощи Windows Hello.
Вряд ли автор понимает, о чем он пишет. Поэтому вполне объяснима реакция участника чата инсайдеров на такую формулировку.
Между тем, я недавно рассказывал в блоге про эту фичу, но фокусировался на решении проблемы с исчезновением настройки автоматического входа. Сегодня я продолжу тему и постараюсь расставить точки над i.
Как обычно, термины учетная запись Microsoft, аккаунт Microsoft и MSA обозначают одно и то же.
[+] Сегодня в программе
История вопроса
Беспарольный вход впервые появился в декабре 2018 года в сборке 18305, когда реализовали возможность добавлять в систему имеющуюся учетную запись Microsoft без пароля.
В Параметрах упоминание о беспарольном входе появилось в июле 2019 года в сборке 18936.
В октябрьской сборке 18995 сделали еще один шаг – вход с ПИН-кодом в безопасный режим. Так убрали последнее препятствие к полностью беспарольной аутентификации в ОС Windows.
В финальной версии 20H1 название фичи в параметрах изменилось. Беспарольный вход исчез из заголовка, уступив место Windows Hello.
Читатели со стажем помнят Microsoft Passport, систему аутентификации Microsoft. В начале пути Windows 10 она входила в состав системы. Позже компания объединила технологию с Windows Hello.
Windows Hello
Это современная система аутентификации Microsoft, которая привязана к устройству, построена на двухфакторной или двухэтапной аутентификации и заменяет пароли. С помощью Hello можно входить в:
- аккаунты Active Directory и Azure Active Directory (Windows Hello for Business)
- учетную запись Microsoft
- сервисы, поддерживающие FIDO2
Контекст этой статьи – домашняя среда, поэтому дальше речь пойдет про последние два пункта.
Регистрация аккаунта Microsoft на устройстве и вход в систему
Вход в учетную запись Microsoft с Windows Hello на устройстве с Windows 10 осуществляется только с помощью ПИН-кода и биометрии.
Пароль в сферу Hello не входит.
При регистрации аккаунта Microsoft на устройстве ПИН-код, идентификатор лица и отпечаток пальца защищаются парой криптографических ключей, которые генерируются аппаратно при наличии TPM 2.0 или программно.
Для регистрации MSA на устройстве требуется двухэтапная аутентификация, в т.ч. возможна беспарольная. Сервер Microsoft получает публичный ключ и ассоциирует его с аккаунтом пользователя, таким образом устанавливаются доверительные отношения.
Когда вы смотрите в камеру или проводите пальцем по сканеру отпечатков, полученные данные сверяются с ключами Hello. При успехе вы получаете токен аутентификации на вход в систему и доступ к сервисам с аккаунта компании на этом устройстве.
Назначение аппаратного ключа
С помощью аппаратного ключа FIDO2 можно входить без ввода пароля с зарегистрированной на устройстве учетной записью Microsoft на сайты и в приложения. Это финализировали в версии 1809, и в анонсе есть хорошее описание принципа аутентификации с ключом.
В Windows 10 аппаратный ключ можно задействовать при регистрации аккаунта Microsoft на устройстве, после чего входить в MSA с помощью Hello, т.е. ПИН-кода или биометрии.
Однако нельзя просто воткнуть флэшку и войти в учетную запись Microsoft на устройстве с Windows 10. Это работает только с аккаунтами Azure Active Directory, в т.ч. для Hybrid Azure AD.
В параметрах есть ссылка на KB4468253, где в частности говорится: аппаратный ключ используется в дополнение к ПИН-коду или биометрии, поэтому владеющий только ключом человек не сможет выполнить вход в аккаунт. Подтекст такой, что сначала надо выполнить вход в систему с Windows Hello, т.е. аутентификация двухфакторная.
Вы знаете ПИН-код или обладаете биологической особенностью (лицо, отпечаток пальца) и владеете ключом.
Конечно, если вы вошли в систему с Hello и оставили ПК без присмотра, злоумышленник может вставить ключ и авторизоваться с вашей MSA на сайте.
Как создать учетную запись Microsoft без пароля
Беспарольный аккаунт Microsoft создается с номером телефона, нежели с заданным вами адресом электронной почты. В интернетах мне попадались инструкции о том, как это сделать в Windows 10, но их авторы явно не пробовали пройти процесс
Создать учетную запись Microsoft без пароля можно только в сторонних мобильных ОС 🙈
В Android и iOS в приложениях Microsoft Office (Word, Excel, Office и т.д.) вы можете создать MSA, указывая номер телефона. Если при попытке входа система определяет, что такого аккаунта нет, она предлагает создать новый. Пароль не требуется, а создание учетной записи подтверждается кодом в SMS.
Затем вы можете (и я рекомендую) использовать вместо SMS беспарольную 2FA в приложении Microsoft Authenticator.
Если же создавать MSA на сайте Microsoft https://signup.live.com/ или в параметрах Windows 10, указывая номер телефона, система требует задать пароль.
Причину эксклюзивности мобильных ОС объяснил мне в Твиттере глава подразделения Microsoft Identity.
Most laptops/PCs can’t receive an SMS code. So we see a lot of drop off in user success when a phone is required to complete a flow from a PC.
— Alex Simons (@Alex_A_Simons) August 11, 2020
Видимо, значительный процент людей пытается вводить несуществующие номера телефонов или домашние номера, куда SMS не проходит ¯\_(ツ)_/¯
Однако если учетная запись Microsoft без пароля уже создана, начиная с версии 1903, вы можете добавить ее на устройство уже во время установки Windows. После установки это можно сделать в Параметры – Учетные записи в разделах:
- Ваши данные — при переключении с локального аккаунта на свою MSA
- Семья и другие пользователи – при создании аккаунта для другого человека или отдельного профиля для своей MSA
Как я объяснил выше, учетная запись Microsoft регистрируется на устройстве при первой успешной аутентификации, а дальше вы входите в систему с Hello.
При желании вы можете задать пароль в настройках безопасности аккаунта. Адрес электронной почты добавляется там же в настройках профиля, но об этом Windows 10 вам будет напоминать сама.
Ключевая особенность беспарольного входа в версии 20H1+
Сводка изменений в двух версиях Windows 10 такова:
- 1903 — можно использовать на устройстве с Windows 10 аккаунт [Microsoft], требующий аутентификации, но не имеющий пароля в принципе
- 20H1 — можно отключить вход с паролем в учетную запись Microsoft, а также входить с ПИН-кодом в безопасный режим
Теперь можно вернуться к началу статьи и недоуменной реакции на нововведения у людей, которые в ноутбуках входили в аккаунт с помощью биометрии еще лет дцать назад, благодаря ПО и драйверам вендоров.
Ранее биометрический вход существовал наряду с парольным, даже если сам пароль был пустой. Равно как в такой аккаунт всегда можно было войти с паролем. Теперь, создав MSA без пароля или включив беспарольный вход, вы входите только с ПИН-кодом и биометрией.
В этом и заключается отличие от предыдущих версий Windows 10, более старых ОС Windows и решений вендоров.
Преимущества беспарольного входа и MSA без пароля
Я недавно проводил опрос и выяснил, что MSA в Windows 10 используют меньше половины людей даже в самой прогрессивной группе моей аудитории. Поэтому большинству читателей до беспарольных аспектов еще далеко. Впрочем, они и не сулят потребителям манны небесной.
- Требование Windows Hello. Поскольку Hello привязано к устройству, пароль не передается по сети. Такой подход укрепляет безопасность, но здесь основные бенефициары – организации, а домашним пользователям это ничего не дает.
- Учетная запись Microsoft без пароля. Если у вас нет пароля, вы его не забудете, равно как не сольете случайно посторонним лицам, например, попав под фишинговую атаку. Тут кроме пользы нет вреда, но нельзя терять контроль над номером телефона.
Подводные камни беспарольного входа
Есть несколько аспектов, которые вам надо учитывать, форсируя вход с Windows Hello и/или используя аккаунт Microsoft без пароля.
Невозможен автоматический вход в систему
Применимо к: требование входа с Hello / беспарольная MSA
Это я разбирал в прошлой статье в контексте форсирования входа с Hello. Если оно выключено, у беспарольной MSA ожидаемо есть возможность настройки автоматического входа. Но там надо задавать пароль, в т.ч. пустой, которого у аккаунта нет в принципе.
Недоступен вход с графическим паролем
Применимо к: требование входа с Hellо / беспарольная MSA
Первое логично следует из отключения парольного входа, а у второго нет никаких паролей в вариантах входа вне зависимости от того, требуется Hello для входа или нет.
Невозможно удаление ПИН-кода
Применимо к: требование входа с Hello / беспарольная MSA
На форум пришел человек, у которого была неактивна кнопка удаления. Нестыковка коллекционная, конечно, хотя вполне объяснимая.
Логика такова: если ломается сканер отпечатков и/или камера, ПИН-код – единственный способ входа без пароля.
Невозможен вход в локальную среду восстановления
Применимо к: беспарольная MSA
В отличие от безопасного режима, в среду восстановления с ПИН-кодом не войти. Для доступа к опциям восстановления (удаление исправлений) и диагностическим инструментам Windows RE (командная строка) требуется пароль администратора. Поэтому войти в беспарольную учетную запись Microsoft не получится, даже если вы переключились на нее с локального аккаунта, у которого пароль был установлен.
На картинке видно, что изначально использовался локальный аккаунт Admin, который я переключил на беспарольную MSA. Пароль от Admin ожидаемо не подходит.
В качестве обходного пути можно загрузиться в RE с установочной флэшки – в этом случае пароль администратора не запрашивается.
Еще одна неочевидная альтернатива – шифрование диска BitLocker, в том числе автоматическое. При входе в локальную RE требуется ввести 48-значный пароль восстановления, после чего экран с выбором администратора и вводом пароля уже не появляется.
Невозможно подключение по RDP или вход в сетевую папку
Применимо к: беспарольная MSA / MSA с паролем при беспарольной регистрации
У этих граблей два варианта.
Беспарольная MSA
Подключение по RDP и вход в сетевую папку подразумевают парольную аутентификацию, а для беспарольной MSA просто нечего указывать в качестве пароля. Однако по RDP можно подключиться к имеющей пароль MSA, даже если требование Hello включено, т.е. локальный вход с паролем невозможен.
MSA с паролем при беспарольной регистрации на устройстве
Проблема возникает, если добавление MSA на устройство проводится без ввода пароля, т.е. аутентификация выполняется по уведомлению в приложении Microsoft Authenticator. В этом случае Windows не с чем сравнить пароль, который вы вводите при подключении по RDP или входе в сетевую папку. Решение я опубликовал в своем канале Telegram.
Примечание. При использовании MSA с паролем вы можете столкнуться с проблемой подключения к ВМ на Hyper-V в режиме расширенного сеанса.
Литература (EN)
- Windows Hello for Business
- Why a PIN is better than a password
- Building a world without passwords
- Advancing Windows 10 as a passwordless platform
- Secure password-less sign-in for your Microsoft account using a security key or Windows Hello
Заключение
Несколько лет назад Microsoft взяла курс на беспарольную аутентификацию и с тех пор следует ему. Windows Hello отлично сочетается с облачными сервисами компании (Azure AD) и даже укрепляет безопасность традиционной инфраструктуры.
Домашним пользователям перепадает с корпоративного стола, но для них беспарольная технология еще не обрела законченный вид. С другой стороны, большинство людей до сих пор использует пароли Qwert321 для всех аккаунтов, сторонится MSA, двухфакторной аутентификации и прочих решений, защищающих учетные записи и личные данные.
Наверное, со временем беспарольные аккаунты станут мейнстримом, но для этого также понадобятся усилия Apple, Google и множества других компаний.
Конкретных дискуссионных тем я сегодня не предлагаю. Статья разъясняет технические нюансы, не играя на эмоциях, а MSA мы обсуждали в прошлый раз. Однако ваши вопросы и мысли по теме я всегда рад видеть в комментариях!
Содержание
- Защита компьютера и данных с помощью ruToken
- Авторизация на Удаленный Рабочий Стол с помощью электронных ключей
- Как использовать одновременно электронный ключ и USB drive для доступа в Windows Remote Desktop
- Использование электронного ключа для доступа на Windows Remote Desktop
- Использование USB drive для доступа на Windows Remote Desktop
- Настройка USB ключей для доступа
- Windows Tokens
- Настройка тестового стенда
- Token
- Настройка учетных записей пользователей
- Настройка политик безопасности домена
- Настройка клиентской операционной системы
- Как при помощи токена сделать Windows домен безопаснее? Часть 1
- Двухфакторная аутентификация
- Токен и смарт-карта
- Почему двухфакторная аутентификация в домене по токену с PIN-кодом безопаснее обычной парольной схемы?
- Преимущества входа в домен по токену
- Недостатки, куда же без них
- Настройка двухфакторной аутентификации в домене Windows
Защита компьютера и данных с помощью ruToken
Аутентификация в Windows и доступ к секретному диску с помощью брелка ruToken..
Кратко: Теперь популярный идентификатор ruToken можно использовать в программах Rohos Logon Key и Rohos Disk как единый ключ для входа в Windows и защиты данных. Программа Rohos Logon Key полноценно работает в Windows Vista/7, а также поддерживает авторизацию на удаленный рабочий стол с помощью ruToken. Аутентификация и идентификация пользователя в Windows с помощью USB ключей.
Устройство ruToken разработано Российской компанией «Актив», которая производит семейство идентификаторов для осуществления аппаратной авторизации пользователей при доступе к информационным ресурсам и защиты электронной переписки.
Вход в Windows с помощью ruToken.
Программа Rohos Logon Key устанавливает надежную двухфакторную аутентификацию, когда доступ в Windows можно получить, только обладая USB токеном, и зная некоторый пароль (PIN-код). Все что должен сделать пользователь – подключить ruToken к USB-порту и набрать PIN-код. Rohos Logon Key – единственная программа, которая полноценно работает в Windows Vista/7, а также поддерживает авторизацию на удаленный рабочий стол с помощью ruToken.
Преимущества использования ruToken в Rohos Logon:
Узнать подробнее:Rohos Credential Provider.
Rohos Logon Key занимает 4кб на rutoken и совместим с другими программами, использующими ruToken.
Использование ruToken и Rohos Logon Key в сети
Rohos Logon Key поддерживает работу в рамках сети Windows Active Directory. Пакет Rohos Management tools позволяет легко настраивать программу и USB ключ eToken на множестве компьютерах удаленно.
Rohos Managment toolsверсия включает в себя две утилиты:
Настройка ruToken в Rohos Logon Key:
Для начала необходимо cкачать и установить драйвер ruToken с сайта фирмы-производителя. Перезагрузите компьютер, чтобы новые драйверы заработали. Запустите панель управления ruToken. Установите новый Pin-код на брелок. В дальнейшем этот пин-код будет запрашиваться каждый раз при обращении к токену.
В главном окне программы Rohos Logon Key открыть окно Опции.
В этом окне как тип устройства, которое будет использовано как ключ для входа, следует выбрать ruToken (эта опция может быть установлена по умолчанию в параметрах MSI пакета ) В этом окне можно установить различные опции для USB ключа. Подробности можно узнать в справке. Настраивать eToken для входа в систему необходимо в окне Настроить ключ
Настраивать ruToken модно непосредственно на компьютере, к которому будет осуществляться локальный или удаленный доступ, а также через Remote desktop connection, с предоставлением удаленному компьютеру доступа к портам локального.
Rohos Disk – защита данных с помощью USB ключа ruToken:
USB токен ruToken также может быть использован как Ключ для доступа с секретному диску в программе Rohos Disk. Программа Rohos Disk предоставляет удобное решение для защиты данных: Секретный диск работает автономно : при входе в систему с помощью USB ключа ruToken становиться доступным. При отключении USB ключа – диск отключается. Встроенный файл шредер помогает перемещать файлы и папки на Rohos Диск и затирать оригиналы. Ярлыки документов на рабочем столе автоматически скрываются на Rohos диск в конце работы. Иконка диска доступна в MS Office и других приложениях для быстрого доступа. Rohos Disk может быть портативно установлен на USB flash накопитель для мобильной работы с секретным диском прямо с USB flash drive.
Настройка eToken для доступа к секретному диску
Внимание: Чтобы использовать eToken в программе Rohos Disk, необходимо установить Rohos Logon Key, так как в ней и происходит основная настройка eToken для входа в систему.
Технические характеристики
Для работы программы Rohos Logon Key с ruToken требуется:
Программа Rohos Logon Key поддерживает любой PKCS11 совместимый токен :
Источник
Авторизация на Удаленный Рабочий Стол с помощью электронных ключей
Преимущества нашей системы Rohos Logon Key в этом случае:
Как использовать одновременно электронный ключ и USB drive для доступа в Windows Remote Desktop
Установите Rohos Logon Key на Терминальный Сервер.
Теперь это будет ваш основной тип USB ключа. с помощью них можно будет входить на TS локально либо удаленно.
Использование электронного ключа для доступа на Windows Remote Desktop
Вариант 1.
Можно обойтись без установки Rohos Logon Key на компьютеры пользователей. Но тогда пользователи должны будут каждый раз вводить свой пароль а также подключать USB ключ. Без пароля либо без USB ключа доступ будет невозможен.
В программе Windows RDC (утилита подключения у Удаленному Рабочему Столу) включить перенаправление Smart-Cards.
Настройку USB ключа для себя может выполнить сам пользователь на своем рабочем столе (на Терминальном Сервере) запустив “Rohos Logon Key (user)” либо Администратором на своем ПК с помощью Rohos USB Key manager.
Для Выполнения доступа с компьютера клиента:
— необходимо запустить утилиту RDCи подключить USB ключ (токен)
— ввести пароль пользователя
— на удаленом рабочем столе произойдет проверка USB ключа и выполниться вход. Если вход выполняется автоматически без наличия USB ключа
Вариант 2.
Необходимо установить компактный вариант Rohos Logon Key на компьютеры клиенты (скачать). Электронный USB ключ должен быть предварительно настроен Администратором.
Для Выполнения доступа с компьютера клиента:
— необходимо запустить утилиту RDC и подключить USB ключ (токен)
— выбрать имя пользователя и нажать OK
Использование USB drive для доступа на Windows Remote Desktop
В этом случае необходимо устанавливать Rohos Logon Key на компьютеры пользователей.
Настройку USB flash drive в качестве Ключа может выполнить сам пользователь на TS запустив Rohos Logon Key (user) либо Администратором на своем ПК с помощью Rohos USB Kee manager.
Вы можете начать использовать USB drive в качестве ключа если вы хотите перейти на 2-ух факторную авторизацию в вашей компании. Это позволить за небольшие деньги начать процесс перехода и далее дорабатывать вашу инфраструктуру по новым требованиям.
Настройка USB ключей для доступа
Настройка может выполнятся Администратором сети либо самим пользователем через Удаленный Рабочий стол.
Администратор сети может использовать USB Key manager ( входит в состав Rohos Logon Key server version) либо настроить USB ключ на самом Терминальном сервере через Удаленный Рабочий стол.
Источник
Windows Tokens
Эксперт OTUS — Александр Колесников поделился с нами полезной статьёй, которую написал специально для студентов курса «Пентест. Практика тестирования на проникновение».
Предыдущая статья рассказывала о том, как эксплойты используют технику копирования токена для повышения привилегий. В этой статье мы попытаемся рассмотреть еще одну технику модификации токенов, а также постараемся узнать, как задаются привилегии, которые помещаются в Primary Token.
Все примеры в статье имеют ознакомительный характер, и если вы захотите повторить эксперименты, то используйте виртуальную машину, так как некоторые из действий могут вывести вашу рабочую машину из строя. Все эксперименты выполняются только для исследовательских задач.
Настройка тестового стенда
Для экспериментов подойдет пара виртуальных машин, которые работают по NAT сети. Две потому что нет другого способа проводить ядерную отладку операционной системы. А NAT сеть, чтобы были отладочные символы, с ними проще и быстрее искать данные без исходного кода. Настройка отладчика есть на просторах сети, но все же ниже будет пару строк как это делается для операционной системы Windows 10 1909.
1. Устанавливаем отладчик. Для операционной системы Windows есть только Windbg Preview, установим его:
2. Переводим целевую операционную систему в отладочный режим:
Перезагружаем систему. И открываем вторую машину, которая будет содержать отладчик:
После перезагрузки системы:
Так как это Windbg Preview все настройки по загрузке и хранению отладочных символов, были выполнены автоматически. Нам остается только дождаться когда они будут полностью загружены. После этого начинаем наше исследование.
Token
Официальная документация гласит, что основные данные, которые существуют в операционной системе касательно привилегий пользователя хранятся в специальной структуре, которая называется Primary Token. В прошлой статье мы не останавливались подробно на части, которая описывается Se* привилегиями. Наиболее интересные привилегии, которые могут быть использованы для эскалации привилегий, вывода из строя ОС:
Каждая строка это константа, которая определяет, какие привилегии существуют в токене. В операционной системе данный из токена включены в специальную структуру, которая называется “Security Descriptor”:
В качестве подопытного процесса возьмём процесс System. Для получения адреса токена можно ввести следующую команду — dx @$cursession.Processes[4].KernelObject.Token
Токен хранится с использованием EXFAST_REF это означает, что нужно занулить последний байт, чтобы вычислить адрес токена:
Посмотрим полный список групп и привилегий у пользователя System:
Стоит обратить внимание на тот факт, что найти “Security Descriptor” можно за несколько шагов, которые представлены выше на снимке. Полный список информации о привилегиях и группах представлен ниже:
Исследуем, что будет, если мы модифицируем ссылку на токен из отладчика:
Из-за изменения токена на нулевой, произошёл BSOD. В Windows была возможность использовать нулевой токен, но всё закончилось на Windows 10 1607. Был имплементирован механизм, который вызывает BSOD, если ссылка на токен в “Security Descriptor” модифицируется. Анализ дампа показывает, что проблема в испорченном объекте:
А можем ли мы все таки произвести модификацию без BSOD? Попробуем модифицировать так, чтобы осталась возможность работать с ОС. Для проверки попробуем создать условия, при которых токен обычного пользователя включал максимальное количество привилегий:
1.Найдем системный процесс и выясним, какие привилегии у него включены:
2.Пройдем в токен cmd.exe просмотрим текущее значение на включенные права:
3.Модифицируем права. Список прав после модификации:
Модификация прошла успешно, но все равно пользователь не может аттачиться к ряду системных приложений. Из-за того, что у пользователя еще остались ограничения из-за Integrity Levels и дополнительных битов, которые запрещают взаимодействие с процессами.
А можно ли провести выставление конкретных прав у пользователя в дескрипторе? Попробуем определить. В официальной документации указываются только строковые приставления констант, попробуем переписать токен значениями: 0x1
В итоге перебора значений были получены следующие данные о константах в токене:
Получается, что хранимые привилегии это всего лишь байт в поле из 6 байт. И все действия, которые были проведены в отладчике, могут быть выполнены через shellcode, только нужно учитывать, что в эксперименте мы просто проставляли права как существующие, но для их полноценного использования их нужно еще включить. То есть записать привилегии по адресу SEPTOKEN_PRIVILEGES и _SEPTOKENPRIVILEGES+0x8.
Проведем следующий эксперимент — отнимем привилегии у процесса System и посмотрим, сможем ли мы выполнить операции, которые требуют расширенных привилегий.
Ну и напоследок, шелкод, который можно использовать в качестве payload для эксплойтов из прошлой статьи:
Источник
Настройка учетных записей пользователей
В первую очередь необходимо настроить учетные записи пользователей. В этом примере будет настроена учетная запись User — пользователь домена, включенные только в группу Пользователи домена.
Для настройки учетной записи пользователя:
Два раза щелкните по названию Администрирование.
Настройка политик безопасности домена
Для настройки политик безопасности:
Щелкните правой кнопкой мыши по названию объекта групповой политики Default Domain Policy и выберите пункт Изменить.
Шаги 4-5 необходимо выполнять только в том случае, если всем пользователям будет запрещен вход в домен без устройства Рутокен с необходимым сертификатом.
Настройка будет доступна только после перезагрузки компьютера. Настройка серверной операционной системы после этого будет завершена.
Настройка клиентской операционной системы
Компьютеры с установленными клиентскими операционными системами Windows 10/8.1/8/7/Vista/XP/2000 необходимо ввести в домен и установить на них драйверы Рутокен.
Редакции ОС должны включать возможность присоединения к домену.
Если клиентские компьютеры были загружены во время настройки сервера, то необходимо их перезагрузить.
Теперь пользователи, которым выдан сертификат типа Пользователь со смарт-картой или Вход со смарт-картой, смогут входить в домен только при подключении к компьютеру устройства Рутокен с этим сертификатом.
При извлечении устройства Рутокен в процессе открытого пользовательского сеанса, клиентская ОС будет автоматически заблокирована (в ОС Windows 10/8.1/8/7/Vista для блокировки рабочего стола при отключении устройства Рутокен необходимо установить автоматический запуск службы Политика удаления смарт-карт/Smart Card Removal Policy).
Источник
Через две недели после своего увольнения Пател зашел на территорию штаб-квартиры компании в Вустере (штат Массачусетс, США) с целью поймать корпоративную сеть Wi-Fi. Используя учетные данные бывшего коллеги и рабочий ноутбук, Пател авторизовался в корпоративной сети. Затем он внедрил в модуль Oracle код и запрограммировал его выполнение на 1 апреля 2016 года — первую неделю нового финансового года. Код предназначался для копирования определенных заголовков или указателей в отдельную таблицу базы данных и следующего удаления их из модуля. Ровно 1 апреля данные были удалены из системы. И поскольку злоумышленник авторизовался в сети Allegro легально, его действия были замечены не сразу.
Подробности широкая общественность не знает, но скорее всего инцидент стал возможен во многом благодаря тому, что в компании для доступа в сеть использовалась парольная аутентификация. Наверняка там были и другие проблемы с безопасностью, но именно пароль можно похитить незаметно для пользователя и факт кражи пароля не будет обнаружен, в лучшем случае вплоть до момента использования похищенных учетных данных.
Применение строгой двухфакторной аутентификации и запрет на использование паролей в сочетании с грамотной политикой безопасности могли бы помочь, если не избежать описанного развития событий, то сильно затруднить реализацию такого плана.
Мы расскажем о том, как можно значительно повысить уровень безопасности вашей компании и защитить себя от подобных инцидентов. Вы узнаете, как настроить аутентификацию и подпись важных данных, используя токены и криптографию (как иностранную, так и отечественную).
В первой статье мы объясним как настроить строгую двухфакторную аутентификацию с использованием PKI при входе в доменную учетную запись в Windows.
В следующих статьях мы расскажем вам, как настроить Bitlocker, защитить электронную почту и простейший документооборот. Также мы вместе с вами настроим безопасный доступ к корпоративным ресурсам и безопасный удаленный доступ по VPN.
Двухфакторная аутентификация
Опытным системным администраторам и службам безопасности хорошо известно, что пользователи крайне не сознательны в вопросе соблюдения политик безопасности, они могут записать свои учетные данные на стикере и приклеить его рядом с компьютером, передать пароли своим коллегам и тому подобное. Особенно часто это происходит, когда пароль сложный (содержащий более 6 знаков и состоящий из букв разного регистра, цифр и специальных символов) и его трудно запомнить. А ведь такие политики администраторами задаются не просто так. Это необходимо для защиты учетной записи пользователя от простого перебора паролей по словарю. Также администраторы рекомендуют менять пароли хотя бы раз в 6 месяцев, просто из того соображения, что за это время теоретически можно отбрутфорсить даже сложный пароль.
Давайте вспомним, что такое аутентификация. В нашем случае это процесс подтверждения подлинности субъекта или объекта. Аутентификация пользователя — это процесс подтверждения подлинности пользователя.
А двухфакторная аутентификация — это такая аутентификация, в которой необходимо использовать не менее двух различных способов для подтверждения своей личности.
Простейшим примером двухфакторной аутентификации в реальной жизни является сейф с замком и кодовой комбинацией. Чтобы открыть такой сейф необходимо знать код и владеть ключом.
Токен и смарт-карта
Наверно, самым надежным и простым в реализации способом двухфакторной аутентификации является использование криптографического токена или смарт-карты. Токен — это USB-устройство, которое является и считывателем, и смарт-картой одновременно. Первым фактором в таком случае является факт владения устройством, а вторым — знание его PIN-кода.
Использовать токен или смарт-карту, тут кому, что удобнее. Но исторически так сложилось, что в России больше привыкли использовать токены, так как они не требуют использования встроенных или внешних считывателей смарт-карт. У токенов есть и свои минусы. Например, на нем не напечатаешь фотографию.
На фотографии изображена типичная смарт-карта и считыватель.
Однако вернемся к корпоративной безопасности.
А начнем мы с домена Windows, ведь в большинстве компаний в России корпоративная сеть построена именно вокруг него.
Как известно, политики Windows-домена, настройки пользователей, настройки групп в Active Directory предоставляют и разграничивают доступ к огромному количеству приложений и сетевых сервисов.
Защитив учетную запись в домене, мы можем защитить большинство, а в некоторых случаях и вообще все внутренние информационные ресурсы.
Почему двухфакторная аутентификация в домене по токену с PIN-кодом безопаснее обычной парольной схемы?
PIN-код привязан к определенному устройству, в нашем случае к токену. Знание PIN-кода само по себе ничего не дает.
Например, PIN-код от токена можно диктовать по телефону другим лицам и это ничего не даст злоумышленнику, если вы достаточно бережно относитесь к токену и не оставляете его без присмотра.
С паролем же ситуация совершенно иная, если злоумышленник подобрал, угадал, подсмотрел или еще каким-то образом завладел паролем от учетной записи в домене, то он сможет беспрепятственно зайти, как в сам домен, так и в другие сервисы компании, в которых используется эта же учетная запись.
Токен является уникальным некопируемым физическим объектом. Им обладает легитимный пользователь. Двухфакторную аутентификацию по токену можно обойти только тогда, когда администратор намеренно или по недосмотру оставил для этого «лазейки» в системе.
Преимущества входа в домен по токену
PIN-код от токена проще запомнить, так как он может быть намного проще пароля. Каждый наверняка хоть раз в жизни видел, как «опытный» пользователь мучительно не может с нескольких попыток аутентифицироваться в системе, вспоминая и вводя свой «безопасный» пароль.
PIN-код не обязательно постоянно менять, так как токены более устойчивы к перебору PIN-кодов. После некоторого числа неудачных попыток ввода, токен блокируется.
При использовании токена для пользователя вход в систему выглядит следующим образом: после загрузки компьютера, он просто подключает токен к USB-порту компьютера, вводит 4-6 цифр и нажимает кнопку Enter. Скорость ввода цифр у обычных людей выше, чем скорость ввода букв. Поэтому PIN-код вводится быстрее.
Токены позволяют решить проблему «брошенного рабочего места» — когда пользователь уходит со своего рабочего места и забывает выйти из своей учетной записи.
Политика домена может быть настроена таким образом, чтобы компьютер автоматически блокировался при извлечении токена. Также токен может быть оснащен RFID-меткой для прохода между помещениями компании, поэтому не забрав токен со своего рабочего места, сотрудник просто не сможет перемещаться по территории.
Недостатки, куда же без них
Токены или смарт-карты не бесплатные (решается бюджетом).
Их нужно учитывать, администрировать и обслуживать (решается системами управления токенами и смарт-картами).
Некоторые информационные системы могут «из коробки» не поддерживать аутентификацию по токенам (решается системами типа Single Sign-On — предназначенными для организации возможности использования единой учетной записи для доступа к любым ресурсам области).
Настройка двухфакторной аутентификации в домене Windows
Протокол Kerberos был специально разработан для того, чтобы обеспечить надежную аутентификацию пользователей. Он может использовать централизованное хранение аутентификационных данных и является основой для построения механизмов Single Sing-On. Протокол основан на ключевой сущности Ticket (билет).
Ticket (билет) является зашифрованным пакетом данных, который выдается доверенным центром аутентификации, в терминах протокола Kerberos — Key Distribution Center (KDC, центр распределения ключей).
Когда пользователь выполняет первичную аутентификацию после успешного подтверждения его подлинности, KDC выдает первичное удостоверение пользователя для доступа к сетевым ресурсам — Ticket Granting Ticket (TGT).
В дальнейшем при обращении к отдельным ресурсам сети, пользователь, предъявляет TGT, получает от KDC удостоверение для доступа к конкретному сетевому ресурсу — Ticket Granting Service (TGS).
Одним из преимуществ протокола Kerberos, обеспечивающим высокий уровень безопасности, является то, что при любых взаимодействиях не передаются ни пароли, ни значения хеша паролей в открытом виде.
Расширение PKINIT позволяет использовать двухфакторную аутентификацию по токенам или смарт-картам на этапе предаутентификации Kerberos.
Вход в систему может быть обеспечен, как при использовании службы каталога домена, так и локальной службы каталога. TGT создается на основе электронной подписи, которая вычисляется на смарт-карте или токене.
Все контроллеры доменов должны иметь установленный сертификат Domain Controller Authentication, или Kerberos Authentication, т. к. реализуется процесс взаимной аутентификации клиента и сервера.
Приступим к настройке.
Сделаем так, чтобы в домен под вашей учетной записью можно было зайти только по предъявлению токена и зная PIN-код.
Для демонстрации мы будем использовать Рутокен ЭЦП PKI производства компании «Актив».
1 Этап — Настройка домена Первым делом установим службы сертификации.
Эта статья не является туториалом по внедрению корпоративного PKI. Вопросы проектирования, разворачивания и грамотного применения PKI тут не рассматриваются ввиду необъятности этой темы.
Все контроллеры доменов и все клиентские компьютеры в рамках леса, где осуществляется внедрение такого решения, обязательно должны доверять корневому Удостоверяющему Центру (Центру Сертификации).
Задача центра сертификации — подтверждать подлинность ключей шифрования с помощью сертификатов электронной подписи.
Технически центр сертификации реализован как компонент глобальной службы каталогов, отвечающий за управление криптографическими ключами пользователей. Открытые ключи и другая информация о пользователях хранится удостоверяющими центрами в виде цифровых сертификатов.
Удостоверяющий центр, выдающий сертификаты для использования смарт-карт или токенов, должен быть помещен в хранилище NT Authority.
Зайдите в Диспетчер сервера и выберите «Добавить роли и компоненты».
При добавлении ролей сервера выберите «Службы сертификации Active Directory» (Microsoft категорически рекомендует не делать это на контроллере домена, дабы не огрести проблем с производительностью). В открывшемся окне выберите «Добавить компоненты» и выберите пункт «Центр сертификации».
На странице для подтверждения установки компонентов нажмите «Установить».
2 Этап — Настройка входа в домен с помощью токена
Для входа в систему нам понадобится сертификат, который содержит идентификаторы Smart Card Logon и Client Authentication.
Сертификат для смарт-карт или токенов также должен содержать UPN пользователя (суффикс имени участника-пользователя). По умолчанию суффиксом имени участника-пользователя для учетной записи является DNS-имя домена, которое содержит учетную запись пользователя.
Сертификат и закрытый ключ должны быть помещены в соответствующие разделы смарт-карты или токена, при этом закрытый ключ должен находиться в защищенной области памяти устройства.
В сертификате должен быть указан путь к точке распространения списка отзыва сертификатов (CRL distribution point). Такой файл содержит список сертификатов с указанием серийного номера сертификата, даты отзыва и причины отзыва. Он используется для передачи сведений об отозванных сертификатах пользователям, компьютерам и приложениям, пытающимся проверить подлинность сертификата.
Настроим установленные службы сертификации. В правом верхнем углу нажмите на желтый треугольник с восклицательным знаком и щелкните «Настроить службы сертификации…».
В окне «Учетные данные» выберите необходимые учетные данные пользователя для настройки роли. Выберите «Центр сертификации».
Выберите «ЦС предприятия».
ЦС предприятия интегрированы с AD. Они публикуют сертификаты и списки отзыва сертификатов в AD.
Укажите тип «Корневой ЦС».
На следующем этапе выберите «Создать новый закрытый ключ».
Выберите период действия сертификата.
3 этап — Добавление шаблонов сертификатов
Для добавления шаблонов сертификатов откройте Панель управления, выберите пункт «Администрирование» и откройте Центр сертификации.
Щелкните по названию папки «Шаблоны сертификатов», выберите пункт «Управление».
Щелкните по названию шаблона «Пользователь со смарт-картой» и выберите пункт «Скопировать шаблон». На следующих скриншотах показано, какие параметры в окне «Свойства нового шаблона» необходимо изменить.
Если в списке поставщиков нет «Aktiv ruToken CSP v1.0», то необходимо установить комплект «Драйверы Рутокен для Windows».
Начиная с Windows Server 2008 R2 вместо специального провайдера от производителя можно использовать «Microsoft Base Smart Card Crypto Provider».
Для устройств Рутокен библиотека «минидрайвера», поддерживающая «Microsoft Base Smart Card Crypto Provider», распространяется через Windows Update.
Проверить установился ли «минидрайвер» на вашем сервере можно подключив Рутокен к нему и посмотрев в диспетчер устройств.
Если «минидрайвера» по каким-то причинам нет, его можно установить принудительно, инсталлировав комплект «Драйверы Рутокен для Windows», а после этого воспользоваться «Microsoft Base Smart Card Crypto Provider».
Добавьте два новых шаблона «Агент сертификации» и «Пользователь с Рутокен».
Для этого выйдите из окна «Управления шаблонами». Нажмите правой кнопкой мыши на «Шаблоны сертификатов» и выберите пункт меню «Создать» и подпункт «Выдаваемый шаблон сертификата».
Далее выберите «Агент регистрации» и «Пользователь с Rutoken» и нажмите «ОК».
В результате названия этих шаблонов отобразятся в центре сертификации.
Далее нам необходимо выписать сертификат администратору домена. Откройте службу «Выполнить» и укажите команду mmc. Добавьте оснастку «Сертификаты».
В окне «Оснастки диспетчера сертификатов» выберите «моей учетной записи пользователя». В окне «Добавление и удаление оснастки» подтвердите добавление сертификатов.
Выберите папку «Сертификаты».
Запросите новый сертификат. Откроется страница для регистрации сертификата. На этапе запроса сертификата выберите политику регистрации «Администратор» и нажмите «Заявка».
Таким же образом запросите сертификат для Агента регистрации.
Чтобы запросить сертификат для определенного пользователя щелкните «Сертификаты», выберите пункт «Зарегистрироваться от имени. ».
В окне для запроса сертификата установите флажок «Пользователь с Рутокен».
Теперь необходимо выбрать пользователя.
В поле «Введите имена выбранных объектов» укажите имя пользователя в домене и нажмите «Проверить имя».
В окне для выбора пользователя нажмите «Заявка».
В раскрывающемся списке выберите имя токена и укажите PIN-код.
Таким же образом выберите сертификаты для других пользователей в домене.
4 этап — Настройка учетных записей пользователей
Для настройки учетных записей откройте список пользователей и компьютеров AD.
Выберите папку Users и пункт «Свойства».
Перейдите на вкладку «Учетные записи», установите флажок «Для интерактивного входа в сеть нужна смарт-карта».
Настройте политики безопасности. Для этого откройте Панель управления и выберите пункт «Администрирование». Откройте меню для управления групповой политикой.
В левой части окна «Управление групповой политикой» щелкните «Default Domain Policy» и выберите пункт «Изменить».
В левой части окна «Редактор управления групповыми политиками» выберите пункт «Параметры безопасности».
Откройте политику «Интерактивный вход в систему: требовать смарт-карту».
На вкладке «Параметры политики безопасности» установите флажки «Определить следующий параметр политики» и «Включен».
Откройте политику «Интерактивный вход в систему: поведение при извлечении смарт-карты».
На вкладке «Параметры политики безопасности» установите флажок «Определить следующий параметр политики», из раскрывающегося списка выберите «Блокировка рабочей станции».
Перезагрузите компьютер. И при следующей попытке аутентификации в домене уже можно будет использовать токен и его PIN-код.
Двухфакторная аутентификация для входа в домен настроена, а значит существенно повышен уровень безопасность для входа в Windows домен без траты безумной суммы на дополнительные средства защиты. Теперь без токена вход в систему невозможен, а пользователи могут вздохнуть спокойно и не мучиться со сложными паролями.
Следующий шаг — безопасная почта, об этом и о настройке безопасной аутентификации в других системах читайте в наших следующих статьях.
Источник