Data/Locales/checks/ru/ADPasswordPolicyChecks.json
|
{ "_family": "ADPasswordPolicyChecks.json", "ADPWD-001": { "name": { "value": "Стандартная политика паролей домена", "status": "machine-draft" }, "description": { "value": "Политика Default Domain Policy определяет базовые параметры паролей и блокировки для всех пользователей домена. Эта политика должна применять надёжные требования к паролям, так как она распространяется на каждую учётную запись, не охваченную более конкретной детальной политикой паролей", "status": "machine-draft" }, "recommendedValue": { "value": "Минимальная длина 14 символов, включена сложность, максимальный возраст 365 дней, минимальный возраст 1 день, история 24 пароля", "status": "machine-draft" }, "remediationSteps": { "value": "Проверьте Default Domain Policy с помощью Get-ADDefaultDomainPasswordPolicy. Настройте через Group Policy Management: Default Domain Policy > Computer Configuration > Policies > Windows Settings > Security Settings > Account Policies > Password Policy. Задайте значения в соответствии с требованиями безопасности организации", "status": "machine-draft" } }, "ADPWD-002": { "name": { "value": "Перечисление детальных политик паролей", "status": "machine-draft" }, "description": { "value": "Детальные политики паролей (FGPP) позволяют задавать разные требования к паролям для разных групп пользователей. Все FGPP должны быть задокументированы для понимания полной картины политики паролей и обеспечения того, что ни одна группа не охвачена политиками слабее задуманных", "status": "machine-draft" }, "recommendedValue": { "value": "Все FGPP задокументированы с их приоритетом, целевыми группами и параметрами политики. Как минимум строгая FGPP для привилегированных учётных записей и стандартная FGPP для обычных пользователей", "status": "machine-draft" }, "remediationSteps": { "value": "Перечислите все FGPP с помощью Get-ADFineGrainedPasswordPolicy -Filter *. Задокументируйте значение приоритета, целевые группы и параметры каждой политики. Убедитесь, что привилегированные учётные записи охвачены более строгой политикой, чем стандартные пользователи. Создайте FGPP, если существует только Default Domain Policy", "status": "machine-draft" } }, "ADPWD-003": { "name": { "value": "Анализ применения FGPP", "status": "machine-draft" }, "description": { "value": "Детальные политики паролей должны применяться к корректным группам, чтобы быть эффективными. Неправильно настроенное применение FGPP может оставить ценные учётные записи под более слабыми политиками или создать пробелы в политике, где никакая FGPP не применяется, и вместо неё используется Default Domain Policy", "status": "machine-draft" }, "recommendedValue": { "value": "Все привилегированные учётные записи охвачены строгой FGPP. Нет пробелов в политике, где ценные учётные записи откатываются к более слабой стандартной политике", "status": "machine-draft" }, "remediationSteps": { "value": "Для каждой FGPP проверьте атрибут msDS-PSOAppliesTo, чтобы увидеть целевые группы. Сопоставьте с членством в привилегированных группах для проверки охвата. Используйте Get-ADUserResultantPasswordPolicy для конкретных учётных записей, чтобы определить действующую политику. Устраните любые пробелы в применении FGPP", "status": "machine-draft" } }, "ADPWD-004": { "name": { "value": "Минимальная длина пароля", "status": "machine-draft" }, "description": { "value": "Пароли короче 14 символов уязвимы к автономному взлому перебором на современном оборудовании GPU. NIST SP 800-63B рекомендует поддерживать пароли длиной до 64 символов и задавать минимум, балансирующий безопасность и удобство использования. Для сред AD 14 символов являются минимальной рекомендуемой базой", "status": "machine-draft" }, "recommendedValue": { "value": "Минимум 14 символов для стандартных пользователей, 25 символов для привилегированных учётных записей", "status": "machine-draft" }, "remediationSteps": { "value": "Настройте минимальную длину пароля в Default Domain Policy или подходящей FGPP: Computer Configuration > Policies > Windows Settings > Security Settings > Account Policies > Password Policy > Minimum password length = 14. Создайте более строгую FGPP для привилегированных учётных записей, требующую 25 и более символов", "status": "machine-draft" } }, "ADPWD-005": { "name": { "value": "Требование сложности пароля", "status": "machine-draft" }, "description": { "value": "Сложность пароля в Windows требует как минимум три из четырёх категорий символов (прописные, строчные, цифры, специальные символы) и того, чтобы пароль не содержал имени учётной записи пользователя. Хотя NIST больше не предписывает сложность, её отключение в AD без компенсирующих мер контроля (таких как списки запрещённых слов) значительно ослабляет пароли", "status": "machine-draft" }, "recommendedValue": { "value": "Сложность включена. В идеале дополнена Azure AD Password Protection или пользовательскими списками запрещённых слов для защиты от распространённых шаблонов", "status": "machine-draft" }, "remediationSteps": { "value": "Убедитесь, что сложность включена в Default Domain Policy: Computer Configuration > Policies > Windows Settings > Security Settings > Account Policies > Password Policy > 'Password must meet complexity requirements' = Enabled. Рассмотрите развёртывание Azure AD Password Protection для дополнительного запрета паролей", "status": "machine-draft" } }, "ADPWD-006": { "name": { "value": "Политика блокировки учётных записей", "status": "machine-draft" }, "description": { "value": "Политики блокировки учётных записей защищают от онлайн-перебора и атак распыления паролей, блокируя учётные записи после порога неудачных попыток. Без блокировки злоумышленники могут выполнять неограниченное число попыток подбора пароля к любой учётной записи. Однако чрезмерно агрессивная блокировка создаёт риск отказа в обслуживании", "status": "machine-draft" }, "recommendedValue": { "value": "Порог блокировки учётной записи: 5-10 попыток. Продолжительность блокировки: 15-30 минут. Сброс счётчика через: 15-30 минут", "status": "machine-draft" }, "remediationSteps": { "value": "Настройте блокировку учётной записи в Default Domain Policy: Computer Configuration > Policies > Windows Settings > Security Settings > Account Policies > Account Lockout Policy. Задайте порог 5-10 попыток, продолжительность 15-30 минут и окно наблюдения 15-30 минут. Отслеживайте события блокировки, которые могут указывать на атаки", "status": "machine-draft" } }, "ADPWD-007": { "name": { "value": "Применение истории паролей", "status": "machine-draft" }, "description": { "value": "История паролей не даёт пользователям циклически использовать одни и те же пароли. Без достаточной глубины истории пользователи могут чередовать небольшой набор паролей, сводя на нет пользу от требований ротации паролей", "status": "machine-draft" }, "recommendedValue": { "value": "История паролей запоминает не менее 24 предыдущих паролей", "status": "machine-draft" }, "remediationSteps": { "value": "Настройте в Default Domain Policy: Computer Configuration > Policies > Windows Settings > Security Settings > Account Policies > Password Policy > 'Enforce password history' = 24 запомненных пароля. Также убедитесь, что 'Minimum password age' задан не менее 1 дня, чтобы предотвратить быстрое прохождение истории циклом", "status": "machine-draft" } }, "ADPWD-008": { "name": { "value": "Максимальный возраст пароля", "status": "machine-draft" }, "description": { "value": "Максимальный возраст пароля принудительно вызывает периодическую ротацию паролей. Хотя NIST SP 800-63B рекомендует отказаться от обязательных периодических смен, если не подозревается компрометация, многие фреймворки соответствия по-прежнему их требуют. Политика должна балансировать требования соответствия с удобством использования, избегая чрезмерно коротких периодов ротации, ведущих к слабым паролям", "status": "machine-draft" }, "recommendedValue": { "value": "Максимальный возраст пароля от 90 до 365 дней в зависимости от требований соответствия. Для привилегированных учётных записей максимум 60 дней", "status": "machine-draft" }, "remediationSteps": { "value": "Настройте в Default Domain Policy: Computer Configuration > Policies > Windows Settings > Security Settings > Account Policies > Password Policy > 'Maximum password age' = 365 дней (или согласно требованию соответствия). Внедрите более строгую FGPP для привилегированных учётных записей с максимумом 60 дней", "status": "machine-draft" } }, "ADPWD-009": { "name": { "value": "Пользователи с бессрочным паролем", "status": "machine-draft" }, "description": { "value": "Учётные записи с флагом 'Password Never Expires' обходят политику максимального возраста пароля. Хотя это может быть приемлемо для управляемых учётных записей служб (gMSA обрабатывают ротацию автоматически), пользовательские учётные записи с этим флагом бесконечно сохраняют скомпрометированные пароли", "status": "machine-draft" }, "recommendedValue": { "value": "Нет пользовательских учётных записей с бессрочным паролем. Только групповые управляемые учётные записи служб могут иметь исключения из-за автоматической ротации", "status": "machine-draft" }, "remediationSteps": { "value": "Выявите учётные записи с помощью Get-ADUser -Filter {PasswordNeverExpires -eq $true -and Enabled -eq $true} -Properties PasswordNeverExpires. Проверьте каждую учётную запись на бизнес-обоснование. Снимите флаг с пользовательских учётных записей и по возможности переведите учётные записи служб на gMSA. Задокументируйте любые одобренные исключения с компенсирующими мерами контроля", "status": "machine-draft" } }, "ADPWD-010": { "name": { "value": "Пользователи с пустыми паролями", "status": "machine-draft" }, "description": { "value": "Учётные записи с флагом PASSWD_NOTREQD могут иметь пустые пароли, полностью обходя все политики паролей. Этот флаг иногда устанавливается непреднамеренно во время сценариев создания учётных записей. К любой учётной записи с пустым паролем может получить доступ каждый, кто знает имя пользователя", "status": "machine-draft" }, "recommendedValue": { "value": "Нет включённых учётных записей с пустыми паролями или флагом PASSWD_NOTREQD", "status": "machine-draft" }, "remediationSteps": { "value": "Выявите учётные записи с помощью Get-ADUser -Filter {PasswordNotRequired -eq $true -and Enabled -eq $true}. Немедленно снимите флаг PASSWD_NOTREQD и задайте надёжный пароль на всех выявленных учётных записях. Проверьте сценарии и процессы создания учётных записей, чтобы предотвратить установку этого флага в будущем", "status": "machine-draft" } }, "ADPWD-011": { "name": { "value": "Дублирующиеся хеши паролей", "status": "machine-draft" }, "description": { "value": "Несколько учётных записей с одинаковым хешем пароля указывают на повторное использование паролей, часто используемые пароли или учётные записи с паролями по умолчанию. Повторное использование паролей усиливает последствия компрометации любых отдельных учётных данных, позволяя горизонтальное перемещение по множеству учётных записей", "status": "machine-draft" }, "recommendedValue": { "value": "Нет кластеров учётных записей с идентичными хешами паролей. Каждая учётная запись должна иметь уникальный пароль", "status": "machine-draft" }, "remediationSteps": { "value": "Извлеките и сравните хеши NT с помощью инструментов с поддержкой DCSync (DSInternals) с соответствующей авторизацией. Выявите кластеры учётных записей с общими хешами. Принудительно смените пароли на всех учётных записях в дублирующихся кластерах. Внедрите фильтры паролей для предотвращения распространённых паролей и рассмотрите развёртывание Azure AD Password Protection", "status": "machine-draft" } }, "ADPWD-012": { "name": { "value": "Пароли в базе HaveIBeenPwned", "status": "machine-draft" }, "description": { "value": "Пароли, которые появляются в известных базах утечек, активно используются в атаках подстановки учётных данных. Сравнение хешей паролей AD с базой HaveIBeenPwned выявляет учётные записи, использующие скомпрометированные пароли, которые вероятно станут целью", "status": "machine-draft" }, "recommendedValue": { "value": "Нет активных учётных записей, использующих пароли, найденные в базе HaveIBeenPwned", "status": "machine-draft" }, "remediationSteps": { "value": "Сравните хеши NT с базой паролей HaveIBeenPwned (загружаемый список хешей) с помощью инструментов, таких как DSInternals Test-PasswordQuality. Принудительно смените пароли на всех учётных записях с совпадающими хешами. Разверните Azure AD Password Protection или пользовательские фильтры паролей для блокировки известных скомпрометированных паролей в дальнейшем", "status": "machine-draft" } }, "ADPWD-013": { "name": { "value": "Проверка пароля по пользовательскому словарю", "status": "machine-draft" }, "description": { "value": "Пароли на основе специфичных для организации терминов (название компании, названия продуктов, времена года, названия местоположений) распространены и легко угадываются целевыми злоумышленниками. Проверки по пользовательскому словарю выявляют пароли, которые удовлетворяют требованиям сложности, но по-прежнему предсказуемы", "status": "machine-draft" }, "recommendedValue": { "value": "Нет учётных записей, использующих пароли, содержащие специфичные для организации термины, распространённые шаблоны (время года плюс год) или последовательности клавиш", "status": "machine-draft" }, "remediationSteps": { "value": "Составьте пользовательский словарь, включающий названия компаний, названия продуктов, названия местоположений, времена года и распространённые шаблоны. Проверьте хеши паролей по этому словарю с помощью DSInternals или подобных инструментов. Принудительно смените пароли на совпадающих учётных записях. Разверните пользовательские фильтры паролей или пользовательский список запрещённых паролей Azure AD Password Protection", "status": "machine-draft" } }, "ADPWD-014": { "name": { "value": "Пароли по умолчанию и распространённые пароли", "status": "machine-draft" }, "description": { "value": "Учётные записи, использующие пароли по умолчанию, распространённые или тривиально угадываемые пароли (такие как Password1, Welcome1 или имя учётной записи), являются первыми целями в атаках распыления паролей. Эти пароли включены в каждый словарь злоумышленника и часто проверяются первыми", "status": "machine-draft" }, "recommendedValue": { "value": "Нет учётных записей, использующих пароли из списков 1000 самых распространённых паролей или совпадающих с шаблонами паролей по умолчанию", "status": "machine-draft" }, "remediationSteps": { "value": "Проверьте хеши паролей по спискам распространённых паролей (таким как SecLists) с помощью DSInternals Test-PasswordQuality. Немедленно смените пароли на всех учётных записях с распространёнными паролями. Внедрите Azure AD Password Protection, который включает глобальный список запрещённых паролей, обновляемый Microsoft", "status": "machine-draft" } }, "ADPWD-015": { "name": { "value": "Распределение возраста последней установки пароля", "status": "machine-draft" }, "description": { "value": "Анализ распределения возраста паролей по всем учётным записям показывает эффективность применения политики и выявляет учётные записи с чрезвычайно старыми паролями. Учётные записи с паролями, неизменными годами, могли быть пропущены при изменениях политики или иметь установленный флаг бессрочного пароля", "status": "machine-draft" }, "recommendedValue": { "value": "Нет включённых пользовательских учётных записей с паролями старше политики максимального возраста пароля. Распределение должно показывать регулярные шаблоны ротации", "status": "machine-draft" }, "remediationSteps": { "value": "Сформируйте отчёт о распределении возраста паролей с помощью Get-ADUser -Filter {Enabled -eq $true} -Properties PasswordLastSet | Group-Object {(New-TimeSpan $_.PasswordLastSet (Get-Date)).Days -replace '\\d$','0'}. Расследуйте учётные записи с паролями старше допустимого политикой. Принудительно смените пароли там, где нужно, и проверьте флаги бессрочного пароля", "status": "machine-draft" } }, "ADPWD-016": { "name": { "value": "Состояние развёртывания LAPS", "status": "machine-draft" }, "description": { "value": "Local Administrator Password Solution (LAPS) обеспечивает уникальные, случайно генерируемые пароли локального администратора для каждого компьютера, надёжно хранимые в AD. Без LAPS пароли локального администратора обычно идентичны на всех машинах, что позволяет тривиальное горизонтальное перемещение после перехвата одного хеша", "status": "machine-draft" }, "recommendedValue": { "value": "LAPS развёрнут на 100% присоединённых к домену компьютеров Windows. Нет компьютеров с отсутствующими или истёкшими паролями LAPS", "status": "machine-draft" }, "remediationSteps": { "value": "Разверните клиент LAPS (CSE) на всех присоединённых к домену компьютерах через GPO, SCCM или Intune. Настройте параметры GPO LAPS для сложности пароля, длины (не менее 20 символов) и возраста (30 дней). Проверьте развёртывание, проверив атрибут ms-Mcs-AdmPwd или msLAPS-Password на объектах компьютеров. Расследуйте любые компьютеры без паролей LAPS", "status": "machine-draft" } }, "ADPWD-017": { "name": { "value": "Истечение срока пароля LAPS", "status": "machine-draft" }, "description": { "value": "Пароли LAPS следует регулярно менять, чтобы ограничить окно раскрытия, если пароль локального администратора скомпрометирован. Истёкшие или устаревшие пароли LAPS указывают на то, что клиент LAPS работает некорректно на этих машинах", "status": "machine-draft" }, "recommendedValue": { "value": "Истечение срока пароля LAPS задано в 30 дней. Нет компьютеров с истёкшими паролями LAPS", "status": "machine-draft" }, "remediationSteps": { "value": "Проверьте даты истечения срока паролей LAPS на объектах компьютеров с помощью Get-ADComputer -Filter * -Properties ms-Mcs-AdmPwdExpirationTime. Выявите компьютеры с истёкшими паролями и исследуйте работу LAPS CSE на этих машинах. Настройте GPO, чтобы задать возраст пароля не более 30 дней", "status": "machine-draft" } }, "ADPWD-018": { "name": { "value": "Windows LAPS в сравнении с устаревшим LAPS", "status": "machine-draft" }, "description": { "value": "Windows LAPS (встроенный в Windows Server 2019 и новее и Windows 10/11 с обновлением от апреля 2023 года) обеспечивает улучшения по сравнению с устаревшим LAPS, включая шифрование пароля, историю паролей и управление паролем DSRM. Организациям следует перейти с устаревшего LAPS на Windows LAPS для расширенных функций безопасности", "status": "machine-draft" }, "recommendedValue": { "value": "Windows LAPS развёрнут с включённым шифрованием пароля. Миграция с устаревшего LAPS завершена", "status": "machine-draft" }, "remediationSteps": { "value": "Определите, какая версия LAPS развёрнута, проверив атрибут msLAPS-Password (Windows LAPS) или ms-Mcs-AdmPwd (устаревший LAPS). Спланируйте миграцию на Windows LAPS. Обновите схему AD для атрибутов Windows LAPS. Разверните параметры GPO Windows LAPS с включённым шифрованием. Выведите из эксплуатации компоненты устаревшего LAPS после миграции", "status": "machine-draft" } }, "ADPWD-019": { "name": { "value": "Azure AD Password Protection", "status": "machine-draft" }, "description": { "value": "Azure AD Password Protection распространяет запрет паролей на локальный AD путём развёртывания компонентов прокси и агента DC. Он блокирует пароли, совпадающие с глобальным запрещённым списком, курируемым Microsoft, и необязательным пользовательским запрещённым списком, не давая пользователям выбирать заведомо слабые пароли", "status": "machine-draft" }, "recommendedValue": { "value": "Azure AD Password Protection развёрнут в принудительном режиме с настроенным пользовательским списком запрещённых паролей", "status": "machine-draft" }, "remediationSteps": { "value": "Разверните службу прокси Azure AD Password Protection и агент DC на всех контроллерах домена. Настройте пользовательский список запрещённых паролей в Azure AD, включая специфичные для организации термины. Задайте режим Enforced (не Audit). Отслеживайте отклонения смены паролей через журналы событий и отчёты Azure AD", "status": "machine-draft" } }, "ADPWD-020": { "name": { "value": "Ключи восстановления BitLocker в AD", "status": "machine-draft" }, "description": { "value": "Ключи восстановления BitLocker, хранимые в Active Directory, следует инвентаризировать, чтобы убедиться, что шифрование дисков развёрнуто корректно и ключи восстановления доступны. Наличие ключей восстановления также указывает, на каких машинах включён BitLocker, обеспечивая видимость охвата шифрованием", "status": "machine-draft" }, "recommendedValue": { "value": "Ключи восстановления BitLocker присутствуют в AD для всех рабочих станций и ноутбуков. Доступ к ключам восстановления ограничен уполномоченными администраторами", "status": "machine-draft" }, "remediationSteps": { "value": "Запросите в AD объекты информации восстановления BitLocker с помощью Get-ADObject -Filter {objectClass -eq 'msFVE-RecoveryInformation'} -SearchBase 'DC=domain,DC=com'. Сопоставьте с инвентаризацией компьютеров для выявления машин без BitLocker. Проверьте ACL на объектах ключей восстановления, чтобы гарантировать, что их могут читать только уполномоченные администраторы", "status": "machine-draft" } }, "ADPWD-021": { "name": { "value": "Порог блокировки учётной записи", "status": "machine-draft" }, "description": { "value": "Порог блокировки учётной записи определяет число неудачных попыток входа перед блокировкой учётной записи. Слишком высокий порог (или ноль, означающий отсутствие блокировки) допускает обширное распыление паролей, а слишком низкий порог позволяет лёгкий отказ в обслуживании", "status": "machine-draft" }, "recommendedValue": { "value": "Порог блокировки от 5 до 10 неудачных попыток", "status": "machine-draft" }, "remediationSteps": { "value": "Настройте в Default Domain Policy: Computer Configuration > Policies > Windows Settings > Security Settings > Account Policies > Account Lockout Policy > 'Account lockout threshold' = 5-10 попыток. Значение 0 полностью отключает блокировку, и его следует избегать. Балансируйте между безопасностью и удобством использования в зависимости от потребностей организации", "status": "machine-draft" } }, "ADPWD-022": { "name": { "value": "Окно наблюдения блокировки", "status": "machine-draft" }, "description": { "value": "Окно наблюдения блокировки определяет период времени, в течение которого неудачные попытки входа засчитываются в порог блокировки. Если окно наблюдения слишком короткое, злоумышленники могут распределять попытки распыления паролей во времени, чтобы избежать срабатывания блокировки", "status": "machine-draft" }, "recommendedValue": { "value": "Окно наблюдения 15-30 минут, равное или превышающее продолжительность блокировки", "status": "machine-draft" }, "remediationSteps": { "value": "Настройте в Default Domain Policy: Computer Configuration > Policies > Windows Settings > Security Settings > Account Policies > Account Lockout Policy > 'Reset account lockout counter after' = 15-30 минут. Убедитесь, что это значение равно или больше продолжительности блокировки, чтобы злоумышленники не могли переждать счётчик между попытками распыления", "status": "machine-draft" } } } |