Перестали применяться некоторые групповые политики (GPO) на клиентских машинах. Ошибка доступа к групповым политикам (GPO) Inaccessible. Обновление безопасности групповых политик из MS16-072.
После установки системы Windows 7 Professional (х64) на одну из пользовательских машин, появились проблемы с применением групповых политик, на данной машине. В роли домен контроллера выступает Windows Server 2008 R2, ошибок в его работе не наблюдается, да и все остальные пользователи сети, не испытывают подобных затруднений с применением групповых политик.
При тестировании результатов применения групповых политик на проблемной машине, видно что часть групповых политик применяется, а часть нет. Групповые политики которые не применяются помечены как Inaccessible (Недоступные).
В ходе поиска причины по которой, групповые политики были недоступными, выяснилось что проблема не в пользователе (т.к. если пользователь авторизовался на другой машине, то все предназначенные ему групповые политики успешно применялись), не в домен контроллере (т.к. никаких ошибок в его работе не было выявлено), а проблема именно в самой системе пользовательской машине.
Групповые политики которые не применялись на проблемной машине и имели статус Inaccessible (Недоступные), имеют права доступа только из определенных групп.
А групповые политики которые успешно были применены на проблемной машине, имели права доступа для всех пользователей прошедших проверку.
Как выяснилось в итоге, корнем всех этих бед, стало выпущенное в рамках бюллетеня MS16-072 от 14 июня 2016 года, обновление безопасности для групповых политик, KB для различных ОС: KB3159398, KB3163017, KB3163018, KB3163016. Данное обновление призвано закрыть уязвимости в безопасности применения групповых политик.
[stextbox id=’info’]Обновление для системы безопасности из бюллетеня MS16-072, устраняет уязвимость в Microsoft Windows, с помощью которой злоумышленник может совершить атаку Man in the Middle (MiTM) с целью подмены трафика, проходящего между контроллером домена и целевой машиной. Целью такой атаки может быть получение прав локального администратора, на целевой машине.[/stextbox]
Таким образом если удалить из групповой политики, права доступа для группы Прошедшие проверку (Authenticated Users), то на машине с установленным обновлением из бюллетеня MS16-072, мы заблокируем доступ к групповой политики.
Решить данную проблему можно несколькими способами:
- На машине, удалить установленное обновление из бюллетеня MS16-072.
- Для всех групповых политик, у которых используется фильтрация безопасности по пользовательским группам, делегировать группу Компьютеры домена (Domain Computers) с правами Read.
Удалять установленные обновления на клиентских машинах, не целесообразно. Поэтому действенным решением данной проблемы, является метод добавления в групповые политики с фильтрацией безопасности по пользовательским группам, группу Компьютеры домена (Domain Computers) с правами чтения. Таким образом, у компьютеров домена появится право на чтение этой политики.
Посмотреть в каких групповых политиках отсутствует группа доступа Прошедшие проверку (Authenticated Users), можно выполнив команду в Powershell:
Get-GPO -All | ForEach-Object {if (-Not (Get-GPPermissions -Guid $_.Id -TargetType Group -TargetName 'Authenticated Users')) {$_.DisplayName}}
Чтобы автоматически добавить во все групповые политики группу доступа Компьютеры домена (Domain Computers) с правами на чтение, можно выполнив скрипт в PowerShell:
# Импортируем модуль групповой политики Import-Module -Name GroupPolicy # $ErrorActionPreference = "SilentlyContinue" # Получаем данные по всем имеющимся групповым политикам $GPOList = Get-GPO -All # Циклом проходимся по каждой группой политике ($GPO in $GPOList){ # Если в групповой политике отсутствует группа доступа Authenticated Users if (-Not (Get-GPPermissions -Guid $GPO.Id -TargetType Group -TargetName 'Authenticated Users')) { # Добавляем в группу доступа, группу Domain Computers, с правами на чтение Get-GPO -All | Set-GPPermissions -TargetType Group -TargetName 'Domain Computers' -PermissionLevel GpoRead} }
[stextbox id=’info’]По-умолчанию в PowerShell включена максимальная политика безопасности, которая позволяет выполнять команды PowerShell в командной строке, но не позволяет в той же командной строке выполнить скрипт с командами PowerShell. Разрешить выполнение скриптов в Powershell:
powershell -Command Set-ExecutionPolicy RemoteSigned[/stextbox]
Понравилась или оказалась полезной статья, поблагодари автора
Обсуждение
Нет комментариев.