Двухфакторная аутентификация в Службе Каталога Active Directory Domain Services. [1]

Безопасность сети – ключевая проблема, стоящая перед ИТ службами. Решение формируется из комплекса элементов, один из них — безопасная аутентификация — рассматривается в этой статье.

Введение. Знакомство с терминологией.

Когда идет речь о защите информации, одним из важнейших аспектов является защита от несанкционированного доступа к ресурсам нашей сети. Разумеется, крайне важным вопросом является обеспечение процедуры безопасной аутентификации. Совершенно очевидно, что любое разграничение полномочий, настройка прав доступа на ресурсы системы имеет смысл только в том случае, если мы уверены в том, что тот, кто пытается получить доступ к нашим ресурсам, является легальным пользователем. В своей статье я хочу рассмотреть некоторые аспекты обеспечения безопасности, а именно внедрение двухфакторной аутентификации в Службе Каталога Active Directory Domain Services. Вопросы безопасной аутентификации являются весьма актуальными при попытке обеспечения безопасности организации в целом.

Прежде всего, целесообразно разобраться с терминологией. Иногда даже сотрудники IT отделов путают термины «идентификация», «аутентификация» и «авторизация». В чем тут разница? Процесс регистрации пользователя в системе состоит из трёх взаимосвязанных, последовательно выполняемых процедур: идентификации, аутентификации и авторизации.

Идентификация — это процедура распознавания субъекта по его идентификатору. В процессе регистрации выполняется предъявление идентификатора системе, и она проверяет его наличие в своей базе данных. Только субъекты с известными системе идентификаторами считаются легальными.

Аутентификация — процедура проверки подлинности, позволяющая достоверно убедиться в том, что, предъявивший свой идентификатор, на самом деле является именно тем, за кого он себя выдает. Для этого он должен подтвердить факт обладания некоторой информацией, которая может быть доступна только ему одному (пароль, ключ и т.п.).

Авторизация — процедура предоставления определенных прав доступа к ресурсам системы после прохождения им процедуры аутентификации. Для каждого субъекта в системе определяется набор прав, которые он может использовать при обращении к её ресурсам. 
В данном случае под субъектом подразумевается любой участник безопасности, например, учетная запись пользователя, созданная в Службе Каталога Active Directory Domain Services. 
Для того, чтобы обеспечить управление и контроль над данными процедурами, дополнительно используются процессы администрирования и аудита.

Администрирование — процесс управления доступом к ресурсам системы. Этот процесс включает в себя:

•    создание идентификатора (создание учётной записи пользователя) в системе, 
•    управление данными пользователя, применяемыми для его аутентификации (смена пароля, издание сертификата и т. п.), 
•    управление правами доступа к ресурсам системы.

Аудит — процесс контроля доступа к ресурсам системы, включающий протоколирование действий при доступе к ресурсам системы для обеспечения возможности обнаружения попыток несанкционированных действий. 
Для подтверждения своей подлинности необходимо предоставить некоторую секретную информацию. Существуют различные виды такой информации, которые можно обозначить одним термином «фактор аутентификации».

Фактор аутентификации — определенный вид информации, предоставляемый субъектом системе при его аутентификации. Данная процедура может быть реализована с использованием одного или нескольких аутентификационных факторов. Например, у пользователя может быть запрошен пароль, либо потребуется представить отпечаток пальца.
Аутентификация, в процессе которой используется только один тип аутентификационных факторов, называется однофакторной.

Многофакторная аутентификация — процесс, в котором используется несколько факторов. Например, при регистрации пользователь должен использовать смарт-карту и пароль. 
Наиболее распространено использование сочетания двух типов аутентификационных факторов. Характерным примером является работа с банкоматом. Нам требуется одновременно использовать карту с магнитной полосой и PIN код.

Виды факторов аутентификации. Классификация типов факторов аутентификации согласно NCSC-TG-017.

Какие же существуют факторы аутентификации?

На основе знания чего-либо (Authentication by Knowledge) 
     — Пароль или парольная фраза 
     — PIN

На основе обладания чем-либо (Authentication by Ownership) 
     — Физический ключ 
     — Карта с магнитной полосой 
     — OTP-токен, генерирующий одноразовый пароль

На основе биометрии (Authentication by Characteristic) 
     — Отпечаток пальца 
     — Рисунок сетчатки глаза 
     — Голос

В некоторых компаниях организуется строгий контроль доступа в помещение, т.е. в определенные помещения доступ предоставляется только ограниченному числу лиц. Например, в серверную комнату может войти только администратор. Если при этом установить для всех компьютеров, находящихся в этих помещениях, строго определенные IP-адреса, то появляется возможность усиления безопасности при доступе сотрудников к ресурсам компьютерной сети. Им предоставляется доступ к определенным действиям или данным только в том случае, если они это делают только в строго определенном помещении и, соответственно, с определенных компьютеров, имеющих определенные IP-адреса.

В этом случае иногда говорят об использовании четвертого типа фактора аутентификации — на основе места проведения процедуры, однако  это не считается дополнительным типом факторов аутентификации, так как он не может использоваться отдельно от других. Поскольку порой весьма затруднительно обеспечить эффективную работу определенного сотрудника на строго определенном рабочем месте (компьютере), данный «фактор» нельзя выделять как дополнительный тип фактора аутентификации.

В последнее время наметились тенденции интеграции логических средств аутентификации и средств контроля и управления доступом (СКУД). Смарт-карты, используемые для аутентификации пользователя при попытке доступа к ресурсам компьютерной системы, интегрируются с RFID (радио-частотной идентификацией). В этом случае появляется возможность дополнительно использовать их для аутентификации человека при его доступе в различные помещения. По-прежнему в этом случае речь будет идти об использовании аутентификации «на основе обладания чем-либо». Это расширяет возможности использования смарт-карты, позволяя пользователю работать только с одним идентифицирующим предметом как для входа в систему, так и для доступа в помещения компании. Особенности аутентификации по паролю. Риски парольной аутентификации и методы борьбы с ними.

Ну что же мы разобрались с основной терминологией и теперь поговорим о практике применения 
Какой вид аутентификации используется чаще всего? Для пользователей наиболее широко используется аутентификация по секретной информации, которая неизвестна непосвящённым людям. При «некомпьютерном» использовании это может быть произносимая голосом фраза или запоминаемая комбинация для замка. В случае вычислительных систем это может быть вводимый с помощью клавиатуры набор символов.

Чем длиннее пароль или идентификационная фраза, тем он более устойчив к взлому (сложнее поддается подбору, перебору или другим типам атак). Хорошим вариантом считается идентификационная фраза длиной от 25 до 100 символов.

К сожалению, длинные пароли обладают другими недостатками:

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

Типовые атаки на пароль

Давайте рассмотрим некоторые типовые виды взлома пароля, с которые используются чаще всего:

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

Социотехника, угадывание, подглядывание. 
Злоумышленник представляется администратором и вынуждает пользователя или открыть свой пароль, или сменить его на указанный взломщиком. Я думаю, многие из вас получали такие письма по электронной почте. 
Здесь метод борьбы также понятен, пользователи должны быть проинформированы о недопущении разглашения своих учетных данных кому бы то ни было. В организации должны быть разработаны административные процедуры, запрещающие разглашение паролей другим лицам при любых обстоятельствах. Следует также извещать пользователей о том, что администратор никогда не обратится к ним с таким требованием. 
Более изощренный вариант такой атаки нацелен не на пользователей, а на администраторов. Злоумышленник представляется законным пользователем и просит администратора заменить пароль. Также он может представиться одним руководителей и попросить заменить пароль, расширить полномочия, и т. п. 
Решение этой проблемы тоже лежит в организационной плоскости. Должна действовать корпоративная политика, согласно которой, администратор меняет пароль пользователя только при условии, что он может установить его личность и передать новый вариант пользователю безопасным способом. Средства самостоятельного управления паролями могут удовлетворять обоим критериям.

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

Этот способ атаки, как не удивительно, часто оказывается эффективным и против административных учетных записей. Пароли P@ssw0rd, QWERTY123, и. т. п. по-прежнему еще можно встретить у пользователей, чьей задачей как раз и является недопущение подобного в информационных системах. 
Для защиты от такой атаки следует использовать идентификационные фразы, не содержащие очевидных ассоциаций, например RQ12#lm25, гораздо лучше, чем Margo200576. Ну и опять нам на помощь приходит блокировка учетной записи при неоднократном неверном вводе пароля.

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

"Троянский конь" 
Злоумышленник скрытно устанавливает программное обеспечение, имитирующее обычную регистрационную программу, и собирающее имена пользователей и пароли при попытках пользователей войти в систему. Впрочем, такое программное обеспечение может быть установлено не только злоумышленником. 
На компьютере подобные программы могут появиться и в результате заражения вирусами, или могут быть установлены самим пользователем, когда он пытается использовать какой-либо продукт нелегально, скачивая генератор серийных номеров, и т. п., что в своем коде может содержать нежелательную функциональность. 
Для защиты от этого вида атак следует использовать антивирусное программное обеспечение, программное обеспечение по оценке целостности файлов, ограничение на запуск несанкционированных приложений.

Принуждение 
В этом случае, для того чтобы заставить пользователя открыть свой пароль, злоумышленник использует угрозы или физическое воздействие. В некоторых системах предусматривается возможность для пользователя подать сигнал о том, что вход осуществляется под принуждением. Обычно это реализуется посредством использования специального пароля при входе в систему – пароль «вход под принуждением». 
Итак, мы рассмотрели основные виды уязвимостей парольной аутентификации, и теперь посмотрим некоторые средства защиты, которые доступны посредством политик.

Продолжение следует…

Список литературы. 
[1] http://www.rfc-archive.org/getrfc.php?rfc=4556 
[2] http://www.rfc-archive.org/getrfc.php?rfc=4120 
[3] http://www.aladdin.ru/catalog/etoken_products/logon 
[4] NCSC-TG-017 — "A Guide to Understanding Identification and Authentication in Trusted Systems," опубликованный U.S. National Computer Security Center. 
[5] RFC4120 — The Kerberos Network Authentication Service (V5) 
[6] RFC4556 — Public Key Cryptography for Initial Authentication in Kerberos (PKINIT) 
[7] Brian Komar Windows Server 2008 PKI and Certificate Security

Автор статьи: Леонид ШапироMCT, MCSE:S, MCSE:M, MCITP EA, TMS Certified Trainer.

Автор выражает искреннюю признательность Директору по Продуктам компании Aladdin Антону Крячкову за советы и консультации.

Статья была опубликована в журнале «Системный Администратор» 7/8