👥 Как запретить пароли из словаря в Azure AD? |
👥 Как запретить пароли из словаря в Azure AD?

Мы уже писали как запретить пароли из словаря с помощью сторонних средств в статье Читать.

Теперь же рассмотрим, что предлагет вендор для защиты паролей в Active Directory

Требования к парольной политики являются одним из основополагающих элементов информационной безопасности. Зачастую парольная политики согласно рекомендациям Microsoft должна включать в себя 3 и 4 категорий символов:

  • Буквы в верхнем регистре для европейских языков (от A до Z с диакритическими знаками, греческими и кириллическими знаками)
  • Буквы в нижнем регистре европейских языков (от a до z, с диакритическими знаками, греческими и кириллическими знаками)
  • 10 базовых цифр (от 0 до 9)
  • Специальные символы: (~!@#$%^&*-+=’|\() {} []:;”‘ <>,.? /) 

Однако зачастую пользователи соблюдая требования указывают слабые для атак по словарю пароли, например p@ssw0rd и т.д.

Технология Azure AD Password Protection позволяет исключить возможности использования “простых”/предсказуемых слов в пароле. Прежде всего это защита от класса атак Password Spay . Данный тип атак является аналогией Brute Force, однако пароли не пароли подбираются под пользователя, а один пароль подбирается под множество пользователей. В ходе атаки по собранному пулу ID пользователей Azure AD прогоняется 1 пароль, например пресловутый p@ssw0rd . Преимуществом перед атаками типа Brute force у данного метода является отсутвие блокировок учетных записей при, например 5 неверных попыток входа, что в свою очередь приведет к обращению пользователя или оповещения в SIEM системе.

Для защиты от Password Spay применяется технология Azure AD Password Protection. Преимуществом данного истуремента заключается в том, что она работает и для On Prem DC и для облачных учетных записей. Если локальная служба каталогов Active Directory синхронизируется с облачной, то с ее помощью мы можем защитить и локальные учетные записи.

Давайте расмотрим архитектуру:

 

 

 

Прежде всего важно понимать на DC домена не нужно открывать доступ в интернет, не требуется расширять схему, нет требований к изменению режима леса. Сервис Azure AD Password Protection на доменный ПК в сети ставить Azure AD Password Protection Proxy Service (сервер. который имеет доступ к интернету, например расположенный в DMZ) , его задача перенапровлят политку паролей с Azure AD и направлять на каждый контроллер домена , а на самих контроллерах домена (DC) устанавливается  агент – AD Agent Service. Агент скачивает и проверяет политику, и при смене пароля пользователем или администратором проверяет паролей на соответсвие требования политикию. Каждый контроллер домена кэширует политику, заданную в Azure.  В случае несоответсвия требованиям политики, пароль сменить не удастся даже администратору. Azure AD Password Protection Proxy создает в AD специальный Service Conection Point, через этот объект любой контроллер домена может найти Azure AD Password Protection Proxy в сети. DC Agent Service качает политику через Proxy себе в Sysvol и всегда пытается обновить ее при запуске сервиса, а также 1 раз в час по умолчанию.

Прежде всего для конфигурации указанного инструмента необходима настройка на стороне Azure, а затем установить агента внутри сети на DC. Заходим в Azure в Authentication methods  и далее в раздел Password procetion

 

 

 

В поле Custom smart lockout по умолчанию количество попыток ввода пароля задано на 10 раз, и 60 секунд на блокировку учетной записи. Стоит отметить тот факт, что при вводе одинакового пароля несколько раз учетная запись не блокируется, так как сервис записывает хэн вводимых данных при входе в облаке или синхронизации с облаком. Также техногогия будет учитывать подключении из незнакомого места. Далее видим список слов, которые можно указать в пароле. Его можно сформировать из популярных словарей, а также включить указание наименования компании, его продуктов, сервисов и т.д. в соответсвии с рекомендациями NIST. Ниже видим кнопку включения политики для нашей локальной AD. Работать он может в двух режимах, как мы видим, это Audit и Enforced.  При выборе режима Audit, пользовател сможет менять пароль против полтики, однако соответсвующая запись будет отражена в логах. При режиме Enforced пользователю не удастся сменить пароль, если он будет содержать слово из списка и выдавать ошибку.

Особенность работы Azure AD Password Protection заключается в том, что задаваемому паролю для прохождения требований надо набрать определенное количество баллов. Происходит нормализация символов о в 0, s в $ , a в @  и тд. Т.е. если мы даже заменим специальными символами буквы в пароле, алгоритм преобразует их в буквы и будет искать на соответсвие в списке заданных к запрету использования слов.

Azure AD Password Protection Proxy Service и Agent  скачивает с сайта Microsoft.

 

 

Устанавливаем Azure AD Password Protection Proxy Service на сервере с доступом интернет и проверяем запуск службы

 

 

 

Теперь необходимо зарегистрировать установленный Proxy с Azure AD. Интеграция происходит с помощью скрипта Poweshell

 

$env:PSModulePath

Import-Module AzureADPasswordProtection

$Azurecred = Get-Credential 

Register-AzureADPasswordProtectionProxy -AzureCredential $Azurecred

Register-AzureADPasswordProtectionForest -AzureCredential $Azurecred

 

После запуска скрипта возможна ошибка выполенения командлета Get-Credential если включена мультифакторная аутентификация, ее на время установки можно отключить.

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

 

 

 

 

Из минусов стоит отметить ограничение в количестве слов из словаря, на момент написания статья оно составляло 1000 слов. Однако за счет нормализации большинство используемых слов закрыть все-таки можно

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *