Двухфакторная аутентификация. Теоретические основы. Часть №2.
Внедрение двухфакторной аутентификации на основе асимметричной криптографии в AD DS
Служба каталога Active Directory поддерживает возможность аутентификации с помощью смарт карт, начиная с Windows 2000.
По сути своей, возможность аутентификации с помощью смарт карт заложена в расширении PKINIT (public key initialization — инициализация открытого ключа) для протокола Kerberos RFC 4556. См. [1]. Расширение PKINIT позволяет использовать сертификаты открытого ключа на этапе предаутентификации Kerberos.
Благодаря чему и появляется возможность использования смарт карт. Т. е. мы можем говорить о возможности двухфакторной аутентификации в системах Microsoft на основе штатных средств, начиная с ОС Windows 2000, т. к. уже реализована схема Kerberos + PKINIT.
Примечание. Предаутентификация Kerberos — процесс, обеспечивающий дополнительный уровень безопасности. Выполняется до выдачи TGT (Ticket Granting Ticket) от сервера распространения ключей (KDC). Используется в протоколе Kerberos v. 5 для противодействия оффлайн атакам на угадывание пароля. Подробнее о принципах работы протокола Kerberos можно узнать в RFC 4120. Cм [2]
Разумеется, речь идет о компьютерах в составе домена. Если же есть необходимость прибегнуть к двухфакторной аутентификации при работе в рабочей группе, или при использовании более ранних версий операционных систем, то нам придется обратиться к программному обеспечению третьих фирм.
Вход в систему может быть обеспечен, как при использовании службы каталога домена, так и локальной службы каталога. При этом пароль пользователя не набирается на клавиатуре, а передается из защищенного хранилища на смарт карте. Впрочем, следует отметить, что этот способ не лишен недостатков. Предпочтительным вариантом будет использование технологии асимметричной криптографии.
Аутентификация с помощью смарт карт реализуется посредством расширения Kerberos PKINIT, это расширение обеспечивает возможность использования асимметричных криптографических алгоритмов.
Что касается требований для внедрения использования смарт карт в связке с PKINIT, то для операционных систем Windows 2000, Windows 2003 Server, они следующие:
Все контроллеры доменов и все клиентские компьютеры в рамках леса, где осуществляется внедрение нашего решения, обязательно должны доверять корневому Удостоверяющему Центру (Центру Сертификации).
Удостоверяющий центр, выдающий сертификаты для использования смарт карт, должен быть помещен в хранилище NT Authority.
Сертификат должен содержать идентификаторы Smart Card Logon и Client Authentication
Сертификат для смарт карт должен содержать UPN пользователя.
Сертификат и частный ключ должны быть помещены в соответствующие разделы смарт карты, при этом частный ключ должен находиться в защищенной области памяти смарт карты.
В сертификате должен быть указан путь к списку отзыва сертификатов CRL distribution point.
Все контроллеры доменов должны иметь установленный сертификат Domain Controller Authentication, или Kerberos Authentication, т. к. реализуется процесс взаимной аутентификации клиента и сервера.
Целый ряд изменений в требованиях произошел в операционных системах, начиная с Windows Server 2008:
Больше не требуется CRL extension в сертификатах smart card logon.
Теперь поддерживается возможность установки взаимосвязи между учетной записью пользователя и сертификатом.
Запись сертификата возможна в любой доступный раздел смарт-карты
Расширение EKU не обязано включать Smart Card Logon OID, при этом справедливости ради надо отметить, что если планируется использовать единственный шаблон сертификата для клиентов всех операционных систем, то, разумеется, Smart Card Logon OID должен быть включен.
Выводы
Итак, мы разобрали несколько основных аспектов, касающихся теоретической части двухфакторной аутентификации в Active Directory Domain Services, и можно подвести итоги.Обеспечение безопасности процесса аутентификации в системе критически важно. Существующие на сегодняшний день виды взломов паролей формируют потребность в мультифакторной аутентификации.
Для небольшой компании можно ограничиться строгой политикой защиты учетных данных, внедрением антивирусного программного обеспечения, лишить пользователей возможности работы с внешними носителями информации блокировать запуск несанкционированного программного обеспечения, внедрить регламенты работы пользователей и. т. п.
Когда речь идет крупной компании, или о компании, в которой есть явная заинтересованность со стороны злоумышленников — этих средств недостаточно. Ошибки и инсайдинг могут свести на нет усилия по построению системы защиты. Здесь имеет смысл говорить о внедрении безопасной аутентификации.
Использование двухфакторной аутентификации – хорошее решение с точки зрения безопасности.
У нас появляется второй фактор аутентификации, помимо пин кода, пользователю надо обладать еще и смарт картой, или USB ключом.
Использование смарт карт или USB ключей дает нам возможность обеспечить двухфакторную аутентификацию.
Список литературы.
[1] www.rfc-archive.org/getrfc.php?rfc=4556[2] www.rfc-archive.org/getrfc.php?rfc=4120
[3] NCSC-TG-017 — «A Guide to Understanding Identification and Authentication in Trusted Systems,» опубликованный U.S. National Computer Security Center.
[4] RFC4120 — The Kerberos Network Authentication Service (V5)
[5] RFC4556 — Public Key Cryptography for Initial Authentication in Kerberos (PKINIT)
[6] Brian Komar Windows Server 2008 PKI and Certificate Security
Статья опубликована в журнале «Системный администратор». Приводится с сокращениями.
0 комментариев