Все способы:
- Вариант 1: «Службы»
- Вариант 2: «Командная строка»
- Вариант 3: «Редактор реестра»
- Список служб, которые можно отключить
- Вопросы и ответы: 1
Вариант 1: «Службы»
В операционной системе Windows 10 есть отдельное меню с перечнем всех доступных служб, в нем также присутствуют инструменты для их настройки. Далее будет рассказано, как перейти туда и какие функции доступны пользователю:
- Откройте утилиту «Службы», например через «Диспетчер задач». Для этого сначала вызовите его комбинацией клавиш Ctrl + Shift + Esc, а затем проследуйте на вкладку «Службы» и в нижней части окна кликните по пункту «Открыть службы».
Читайте также: Как открыть «Службы» в Windows 10
- В отобразившемся на экране списке служб найдите ту, которую необходимо настроить, и откройте ее «Свойства». Для этого дважды кликните по названию или нажмите правой кнопкой мыши и выберите пункт «Свойства».
- На вкладке «Общие» находятся основные настройки. Здесь вы можете выбрать тип запуска. Делается это в одноименном выпадающем списке. Всего представлено четыре режима:
- «Автоматически» — служба будет запускаться автоматически, в зависимости от настроек операционной системы.
- «Автоматически (отложенный запуск)» — то же самое, что и «Автоматически», только включение будет происходить не сразу после запуска Windows 10.
- «Вручную» — при запуске компьютера будут применяться последняя выставленная конфигурация. Если служба была отключена, то она не будет запущена автоматически.
- «Отключена» — сразу после включения компьютера служба будет отключена, пока вы ее не запустите самостоятельно.
- Здесь же вы можете изменить состояние службы: запустить ее, отключить, приостановить или продолжить выполнение. Для этого следует воспользоваться соответствующими кнопками в нижней части окна.
- На вкладке «Вход в систему» осуществляется настройка прав доступа. При установленном переключателе в положение «С системной учетной записью» авторизация будет происходить с правами администратора, соответственно, служба сможет взаимодействовать со всеми системными компонентами. Отдельно вы можете дать разрешение на внесение изменений в конфигурацию рабочего стола.
Установив переключатель в положение «С учетной записью», вам потребуется дополнительно указать название профиля и его пароль. Впоследствии служба сможет взаимодействовать только с указанным пользователем.
- На вкладке «Восстановление» расположены настройки поведения системы при сбоях в работе выбранной службы. Отдельно задаются параметры для первого сбоя, второго и последующих. Выполняется это посредством выпадающего списка. На выбор есть четыре варианта поведения:
- «Не выполнять никаких действий» — при сбое никаких действий не будет предпринято, выполнение службы остановится.
- «Перезапуск службы» — будет совершена автоматическая перезагрузка.
- «Запуск программы» — выполнится инициализация указанной пользователем программы. Этот вариант требует дополнительной настройки, о чем будет рассказано чуть позже.
- «Перезагрузка компьютера» — компьютер автоматически перезапустится. Предварительно на экране появится соответствующее уведомление, чтобы пользователь смог успеть сохранить важные данные.
- Чуть ниже можно задать интервал сброса счетчика сбоев. По умолчанию это будет происходить ежедневно, но при необходимости измените показатель. Также есть возможность установить задержку перезапуска некорректно работающей службы. По умолчанию это происходит через одну минуту.
- Если при помощи одного из выпадающих списков вы выбрали значение «Запуск программы», тогда в этом меню активируется блок «Выполнение программы». В нем вы можете выбрать непосредственно само приложение, которое будет запускаться при сбое. Сделать это можно путем указания пути к его исполняемому файлу или через диалоговое окно файлового менеджера, вызываемого посредством кнопки «Обзор». При необходимости задайте дополнительные параметры запуска программы в поле «Параметры командной строки». Если в приложение нужно передать количество возникших ошибок, тогда установите отметку напротив опции «Дописать в командную строку счетчик ошибок (/fail=%1%)».
- На вкладке «Зависимости» нет никаких параметров для изменения, здесь только перечисляются другие службы, обеспечивающие корректную работу текущей.
- После того как настройка будет завершена, не забудьте нажать по кнопкам «Применить» и «ОК», чтобы все внесенные изменения сохранились.
Вариант 2: «Командная строка»
При необходимости выполнить настройку служб можно через «Командную строку». Соответственно, все действия будут производиться посредством ввода специальных команд. Но сначала откройте консоль — делать это рекомендуется от имени администратора, чтобы получить полный доступ ко всем функциям. На нашем сайте в отдельной статье подробно описывается этот процесс.
Подробнее: Как открыть «Командную строку» от имени администратора в Windows 10
После того как черное окно консоли появится на экране компьютера, переходите к настройке:
- Сначала выведите список всех служб, работающих в операционной системе. Для этого введите приведенную ниже строку и нажмите Enter.
sc query
В итоге вы увидите название служб. Здесь вам необходимо запомнить значение напротив строки «Имя_службы». Для поиска нужной обращайте внимание на строку «Выводимое_имя» — именно оно отображается в стандартной утилите «Службы».
- Найдя службу, параметры которой необходимо изменить, рекомендуется предварительно просмотреть ее текущие конфигурационные данные. Делается это посредством представленной ниже команды:
sc qc <имя_службы>
После этого на экран выведется развернутая информация о службе. Полезные поля здесь следующие: «Тип_запуска», «Имя_двоичного_файла» и «Зависимости». Изменить же посредством команд вы сможете только тип запуска.
- Когда информация о службе была получена, можно переходить непосредственно к изменению ее работы. Всего доступны три операции: остановка, запуск и удаление. Для их инициализации воспользуйтесь следующими командами:
sc stop <имя_службы>
(остановка)
sc start <имя_службы>
(запуск)
sc delete <имя_службы>
(удаление)При успешном выполнении команды вы увидите соответствующее сообщение в окне «Командной строки».
- Также через консоль можно изменить тип запуска службы. Делается это посредством специальной команды со следующим синтаксисом:
sc config <имя_службы> start= <тип_запуска>
Всего есть три режима работы:
auto
— автоматически,demand
— вручную,disabled
— отключена. После ввода команды на экран выведется отчет с результатом операции.Важно! После параметра
start=
обязательно должен стоять пробел, в противном случае появится ошибка. - При необходимости вызовите справку касательно команды
sc
. Делается это посредством представленной ниже строки. В справке можно посмотреть дополнительные параметры для управления службами.sc ?
Примечание! Если имя службы состоит из двух и более слов, его необходимо взять в одинарные (‘) или двойные («) прямые кавычки. Пример:
sc delete "Events Utility"
.
Вариант 3: «Редактор реестра»
При желании внести изменения в параметры служб в Windows 10 можно путем редактирования соответствующих ключей системного реестра. Но этот способ позволяет только изменить тип запуска — отключить работу службы таким образом не получится. Для выполнения поставленной задачи потребуется сделать следующее:
- Откройте окно утилиты «Выполнить» с помощью комбинации клавиш Win + R, а затем введите приведенную ниже команду и нажмите по кнопке «ОК».
regedit
- В появившемся окне «Редактора реестра» проследуйте по указанному ниже пути, чтобы попасть в директорию с перечнем всех установленных служб в операционной системе.
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\
Для мгновенного перехода в целевую директорию вставьте указанный путь в адресную строку, которая расположена в верхней части интерфейса, и нажмите Enter.
- Находясь в папке «Services», раскройте список подкатегорий, кликнув по стрелочке, находящейся слева от названия. Далее найдите папку с именем службы, которую необходимо изменить, и выберите ее, щелкнув кнопкой мыши.
- В списке содержащихся в директории файлов найдите «Start» и откройте его «Свойства». Сделать это можно либо двойным кликом по названию, либо через контекстное меню. Во втором случае нажмите по файлу правой кнопкой мыши и из появившегося списка опций выберите пункт «Изменить».
- В открывшемся окне введите в поле «Значение» число от 2 до 4. В зависимости от вставленной цифры будет задан определенный режим запуска:
- 1 — автоматически (отложенный запуск);
- 2 — автоматически;
- 3 — вручную;
- 4 — отключена.
Укажите желаемое значение и кликните по кнопке «ОК», чтобы сохранить внесенные изменения. После этого окно «Редактора реестра» можно закрыть.
Примечание! Как можно заметить, настройка служб через «Редактор реестра» не предоставляет множества функций. Но преимуществом такого способа является возможность принудительного изменения типа запуска, даже если это не получается сделать через утилиту «Службы» или «Командную строку».
Список служб, которые можно отключить
Многие пользователи под настройкой служб в Windows 10 подразумевают их отключение для повышения производительности компьютера. В таком случае следует знать, без каких именно компонентов операционная система продолжит свою нормальную работу. Поэтому мы предоставляем такой список:
- «Факс». Если к компьютеру не подключен факс, то ее следует отключить, чтобы она не потребляла ресурсы системы.
- «Рабочие папки». Если вы не подключены к корпоративной сети, отключите ее.
- «Служба шифрования дисков BitLocker». Если вы не собираетесь шифровать информацию на диске, тогда ее можно деактивировать.
- «Служба поддержки Bluetooth». Отключайте только в том случае, если у вашего устройства нет модуля Bluetooth.
- «Dmwappushservice». Эту службу рекомендуется отключить для сохранения конфиденциальности, так как она отслеживает ваше местоположение.
- «Служба географического положения». Этот компонент аналогичен предыдущему, поэтому его тоже можно деактивировать.
- «Служба наблюдения за датчиками». Следит не только за датчиками, но и может менять яркость монитора в зависимости от освещения в комнате (при наличии соответствующего датчика на компьютере). Доступна для свободного отключения.
- «Superfetch». Рекомендуется отключить пользователям, у которых в компьютере установлен твердотельный накопитель (SSD).
- «Диспетчер печати». Если вы не пользуетесь принтером, отключите этот компонент.
- «Биометрическая служба Windows». Если к компьютеру не подключен сканер отпечатка пальца, эта служба будет только потреблять ресурсы системы.
- «Удаленный реестр». Эта служба позволяет редактировать системный реестр удаленно с другого компьютера. Если эта возможность вам не потребуется, отключите ее.
- «Брандмауэр». Не нужна, если у вас установлен сторонний антивирус с брандмауэром в комплекте (большинство современных антивирусов как раз обеспечивает комплексную защиту).
- «Machine Debug Manager». Отключайте только если не занимаетесь программированием на своем устройстве.
- «Windows Search». Обеспечивает работу поисковой системы в Windows 10. Если эта функция вам не нужна, тогда отключите ее.
- «Сервер». Требуется для настройки сетевых папок и принтеров. Если ваш компьютер не включен в локальную сеть, тогда отключите.
- «Служба записи компакт-дисков». Будет полезной только в том случае, если у вас есть дисковод и вы им пользуетесь.
- «Служба загрузки изображений». Обеспечивает обработку изображений с подключенного к компьютеру сканеру или камеры, иначе только зря потребляет ресурсы операционной системы.
- «Сетевая служба Xbox Live». Нужна для обеспечения доступа к сервисам Xbox Live. Если ими вы не пользуетесь, тогда отключите этот компонент.
- «Служба лицензий клиента». Необходима для правильной работы магазина Windows 10. Отключайте, если не пользуетесь им.
- «Служба маршрутизатора SMS Microsoft Windows». Этот компонент можно отключить, так как он считается устаревшим и не применяется большинством пользователей.
- «Регистрация ошибок». Обеспечивает отправку отчетов об ошибках на серверы Microsoft. Для пользователя она бесполезна.
- «Центр обновления Windows». Часто при автоматической работе этой службы наблюдаются притормаживания и высокая нагрузка на центральный процессор. Тем, кому ее работа доставляет неудобства, можно ее отключить, но периодически вручную обновлять операционную систему. Всем остальным юзерам лучше оставить ее включенной.
- «NVIDIA Stereoscopic 3D Driver Service». Нужна только в той ситуации, если у вас есть 3D-монитор.
- «NVIDIA Streamer Service». Если вы не играете в компьютерные игры со стримингом изображения, тогда эта служба не нужна.
- «NVIDIA Streamer Network Service». Тоже будет полезна только стримерам. Если вы таковым не являетесь, тогда отключите.
Важно! Все перечисленные службы могут быть отключены без риска возникновения критических ошибок в работе операционной системы.
Наша группа в TelegramПолезные советы и помощь
Многие статьи, касающиеся решения тех или иных проблем в Windows 11/10 или других версиях ОС, среди прочих шагов могут предлагать попробовать изменить тип запуска служб. Однако не все пользователи знают, как именно это сделать.
В этой инструкции для начинающих подробно о способах изменить тип запуска службы в Windows актуальных версий, а также о том, что делать, если выбор типа запуска не активен.
Оснастка «Службы»
Базовый способ изменения типа запуска службы — использовать соответствующий инструмент их настройки, предусмотренный в Windows. Шаги будут следующими:
- Нажмите клавиши Win+R на клавиатуре, либо нажмите правой кнопкой мыши по кнопке «Пуск» и выберите пункт «Выполнить». Введите services.msc и нажмите Enter.
- Откроется список служб Windows. Найдите ту из них, тип запуска которой нужно изменить и дважды кликните по ней мышью, либо, если вы используете клавиатуру — Enter.
- Откроются свойства выбранной службы. Достаточно изменить значение в поле «Тип запуска» на нужный вам и применить настройки.
Тип запуска будет использован при следующей перезагрузке компьютера. Однако, в этом же окне после изменения типа запуска вы можете вручную запустить или остановить службу, в зависимости от того, требуется ли её работа.
При изменении типа запуска этим способом вы можете обнаружить, что для некоторых служб изменение типа запуска недоступно: обычно это происходит для важных системных служб Windows 11/10, отключение которых может привести к проблемам с работой операционной системы.
Основная рекомендация в этом случае — не трогать такую службу, а добиться желаемого результата иными методами. Однако, если отключение необходимо, вы можете использовать приведённый далее способ изменения типа запуска в редакторе реестра.
Редактор реестра
Параметры служб, включая тип запуска, хранятся в реестре Windows, соответственно для его изменения можно использовать редактор реестра (рекомендую предварительно создать точку восстановления системы):
- Нажмите клавиши Win+R на клавиатуре, введите regedit и нажмите Enter
- Перейдите к разделу реестра
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\
- Найдите подраздел, соответствующий имени нужной службы (имена служб можно посмотреть в их свойствах в services.msc на вкладке «Общие») и перейдите к нему.
- Дважды нажмите по параметру с именем Start в правой панели редактора реестра и установите для него нужное значение: 2 — Автоматически, 3 — Вручную, 4 — Отключена. Есть ещё два значения: 0 (загрузка) и 1 (система), они не должны использоваться для обычных служб, только для служб драйверов. Также вы можете создать параметр DWORD с именем DelayedAutostart со значением 1, если хотите использовать тип запуска службы «Автоматически» с отложенным запуском.
- Примените настройки и перезагрузите компьютер.
При изменении параметра Start для некоторых служб вы можете получить сообщение об ошибке «Не удается изменить Start. Ошибка при записи нового значения параметра». Это говорит о том, что изменение для этой службы защищено системой (иногда — антивирусом, в том числе Microsoft Defender с включенной функцией «Защита от подделки»).
Возможные действия (при условии, что вы уверены, что хотите продолжить и понимаете риски) описаны в инструкции Как стать владельцем раздела реестра в Windows, также можно попробовать использовать редакторы «удаленного» реестра с LiveCD.
Командная строка
И ещё один метод: изменение типа запуска с помощью командной строки. Достаточно запустить командную строку от имени администратора (именно командную строку, не PowerShell), после чего использовать команды (первая из них останавливает службу, если она запущена):
sc stop "имя_службы" sc config "имя_службы" start=ТИП_ЗАПУСКА
при этом доступны следующие варианты типа запуска:
- BOOT — Загрузка
- SYSTEM — Система
- AUTO — Автоматически
- DEMAND — Вручную
- DISABLED — Отключена
- DELAYED-AUTO — Автоматически (отложенный запуск)
Ещё один вариант команды:
wmic service where name='имя_службы' call ChangeStartmode Тип_запуска
Существуют и дополнительные возможности изменения типа запуска служб и их отключения:
- Если требуется отключить все сторонние службы, можно использовать окно конфигурации компьютера msconfig, подробнее: Чистая загрузка Windows
- Удобно отключить ненужные или включить нужные службы можно в программе Autoruns, доступной в Sysinternals Suite или отдельно.
- Можно использовать (но я бы не стал прямо рекомендовать) сторонние программы «оптимизации» служб, такие как Easy Service Optimizer
I apologize for my presumption, but thought it was a cool title 😉
Some days ago, I was reflecting on the SeRestorePrivilege and wondering if a user with this privilege could alter a Service Access, for example: grant to everyone the right to stop/start the service, during a “restore” task. (don’t expect some cool bypass or exploit here)
As you probably know, each object in Windows has DACL’s & SACL’s which can be configured. The most “intuitive” are obviously files and folder permissions but there are a plenty of other securable objects (https://docs.microsoft.com/en-us/windows/desktop/secauthz/securable-objects)
Given that our goal is Service permissions, first we will try to understand how they work and how we can manipulate them.
Service security can be split into 2 parts:
- Access Rights for the Service Control Manager
- Access Rights for a Service
We will focus on Access Rights for the service, which means who can start/stop/pause service and so on. For detailed explanation take a look at this article from Microsoft: https://docs.microsoft.com/it-it/windows/desktop/Services/service-security-and-access-rights
How can we change the service security settings?
Configuring Service Security and Access Rights is not so an immediate task like, for example, changing DACL’s of file or folder objects. Keep also in mind that it is limited only to privileged users like Administrators and SYSTEM account.
There are some built-in and third party tools which permits changing the DACL’s of a service, for example:
Windows “sc.exe”. This program has a lot of options and with “sdset” it is possible to modifiy the security setting of a service, but you have to specify it in the cryptic SDDL (Security Description Definition Language). The opposite command “sdshow” will list the SDDL:
Note that interactive user (IU) cannot start or stop the BITS service because the necessary rights (RP,WP) are missing. I’m not going to explain in deep this stuff, if interested look here: https://support.microsoft.com/en-us/help/914392/best-practices-and-guidance-for-writers-of-service-discretionary-acces
subinacl.exe from Windows Resource Kit. This one is much more easier to use. In this example we will grant to everyone the right to start the BITS (Backgound intelligent transfer service)
Service Security Editor , a free GUI Utility to set permissions for any Windows Service:
And of course, via Group Policy, powershell, etc..
All these tools and utilities relies on this Windows API call, accessible only to high privileged users:
BOOL SetServiceObjectSecurity(
SC_HANDLE hService,
SECURITY_INFORMATION dwSecurityInformation,
PSECURITY_DESCRIPTOR lpSecurityDescriptor
);
Where are the service security settings stored?
Good question! First of all, we have to keep in mind that services have a “default” configuration: Administrators have full control, standard users can only interrogate the service, etc.. Services with non default configuration have their settings stored in the registry under this subkey:
HKLM\System\CurrentControlSet\Services\<servicename>\security
This subkey hosts a REG_BINARY key which is the binary value of the security settings:
These “non default” registry settings are read when the Service Control Manager starts (upon boot) and stored in memory. If we change the service security settings with one of the tools we mentioned before, changes are immediately applied and stored in memory. During the shutdown process, the new registry values are written.
And the Restore Privilege?
You got it! With the SeRestorePrivilege, even if we cannot use the SetServiceObjectSecurity API call, we can restore registry keys, including the security subkey…
Let’s make an example: we want to grant to everyone full control over BITS service
On our Windows test machine, we just modify the settings with one of the tools:
After that, we restart our box and copy the new binary value of the security key:
Now that we have the right values, we just need to “restore” the security key with these. For this purpose we are going to use a small “C” program, here the relevant part:
byte data[] = { 0x01, 0x00, 0x14, 0x80, 0xa4, 0x00, 0x00, 0x00, 0xb4, 0x00, 0x00, 0x00, 0x14, 0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x00, 0x02, 0x00, 0x20, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02, 0xc0, 0x18, 0x00, 0x00, 0x00, 0x0c, 0x00, 0x01, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x20, 0x00, 0x00, 0x00, 0x20, 0x02, 0x00, 0x00, 0x02, 0x00, 0x70, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x02, 0x14, 0x00, 0xff, 0x01, 0x0f, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x12, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0xff, 0x01, 0x0f, 0x00, 0x01, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x20, 0x00, 0x00, 0x00, 0x20, 0x02, 0x00, 0x00, 0x00, 0x00, 0x14, 0x00, 0xff, 0x01, 0x0f, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x14, 0x00, 0x8d, 0x01, 0x02, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x14, 0x00, 0x8d, 0x01, 0x02, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x06, 0x00, 0x00, 0x00, 0x01, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x20, 0x00, 0x00, 0x00, 0x20, 0x02, 0x00, 0x00, 0x01, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x20, 0x00, 0x00, 0x00, 0x20, 0x02, 0x00, 0x00 }; LSTATUS stat = RegCreateKeyExA(HKEY_LOCAL_MACHINE, "SYSTEM\\CurrentControlSet\\Services\\BITS\\Security", 0, NULL, REG_OPTION_BACKUP_RESTORE, KEY_SET_VALUE, NULL, &hk, NULL); stat = RegSetValueExA(hk, "security", 0, REG_BINARY, (const BYTE*)data,sizeof(data)); if (stat != ERROR_SUCCESS) { printf("[-] Failed writing!", stat); exit(EXIT_FAILURE); } printf("Setting registry OK\n");
We need of course to enable the SE_RESTORE_NAME privilege before in our process token.
In an elevated shell, we execute the binary on the victim machine:
and after the reboot we are able to start BITS even with a low privileged user:
And the Take Onwer Privilege?
The concept is the same, we need to take the ownership of the registry key before, grant the necessary access rights (SetNamedSecuityInfo() API calls) on the key and then do the same trick we have seen before.
But wait, one moment! What if we take the onwersip of the service?
dwRes = SetNamedSecurityInfoW( L"BITS", SE_SERVICE, OWNER_SECURITY_INFORMATION, takeownerboss_sid, NULL, NULL, NULL);
Yes, this works, but when we set the permissions on the object (again with SetNamedSecurityInfo) we get an error. If we do this with admin rights, it works…
Probably the function will call the underlying SetServiceObjectSecurity which modifies the permissions of the service stored “in memory” and this is precluded to non admins.
Final thoughts
So we were able to change the Service Access Rights with our “restoreboss” user. Nothing really useful i think, but sometimes it’s just fun to try to understand some parts of the Windows internal mechanism, do you agree?
Understanding Windows Update Registry Settings
This article aims to help readers better understand where devices are pulling their Windows updates from based on the Windows Update registry settings on the local device. We will cover some of the various states the policy can be in, including Windows Server Update Services (WSUS), Microsoft Configuration Manager (ConfigMgr), Intune, and Co-managed devices.
- Windows Update Registry Settings are stored in the HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate registry key
- In all scenarios, we need to cover the four different topics:
- How the registry keys are controlled
- Where the device get its Updates from
- What Updates are applied
- When these Updates apply
Reviewing the registry values will allow you to quickly identify the client’s state and take appropriate troubleshooting or remediation actions.
With all of the registry settings in this article, it’s important to understand where the policy is controlled. It’s better to modify the policy controlling the registry keys instead of directly modifying the keys. Modifying the registry keys with a policy applied will likely revert back once the policy refreshes again.
This article will not cover Delivery Optimization. We will primarily focus on these updates as they are downloaded from WSUS, ConfigMgr, or Intune.
Windows Server Update Services registry settings:
When utilizing a WSUS Server, Group Policy typically handles WSUS registry settings.
You can control most aspects of how the Windows Update registry settings are set up here.
-
The Windows Update registry keys can be configured by policy here: Group Policy Management Editor > Computer Configuration > Policies > Administrative Templates > Windows Components > Windows Update.
We will use the WSUS server: wsus1.corp.contoso.com
In the WindowsUpdate.log, we can see the MoUpdateOrchestrator handles the download:
- More information on how the MoUpdateOrchestrator works can be found here.
- In the WindowsUpdate.log, we can see the DownloadManager is utilizing the registry settings controlled by the policy above.
- When the system checks in with WSUS, there is a check to see where content is going to be downloaded from; in this case, we download directly from wsus1.corp.contoso.com
- To specify which products get installed through WSUS, you need to enable them in Windows Server Update Services > Options > Products and Classifications.
- The updates must also be “Approved” either by modifying your “Automatic Approvals” or manually.
- Alternatively, to save time, you can add third-party updates to WSUS from Patch My PC using the publisher.
Configuring WSUS to automatically download and install the Windows Updates can be configured by Group Policy (notice WSUS Settings is the winning GPO) as well:
- The registry settings for Automatic Updates are listed here:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU
- The current settings being utilized lined up with the Group Policy applied.
-
You can automate the updates. However, there are limitations such as maintenance windows, update rings, scheduling reboots, and targeting specific updates. You could, in theory, control most of these options, but it’s a pain to maintain.
Microsoft Configuration Manager registry settings:
Clients will receive their policy from the Client Settings in ConfigMgr when utilizing a ConfigMgr Software Update Point. The Windows Update registry keys can be configured by the policy in Configuration Manager Console > Administration > Client Settings > Software Updates.
-
In this example, we will use the Software Update Point: cm1.corp.contoso.com
-
Whether the “Install All” button is pushed or the updates are automatically downloaded and applied, the registry entries tell the client to update from your software update point.
-
Important: Group Policy Objects will override Client Settings and can cause issues with Software Updates. It’s recommended to disable any GPO modifying the Windows Update policies on the client and allow the Client Settings to take effect. Notice here the Winning GPO is Local Group Policy (ie, the settings are coming from ConfigMgr):
-
In the WindowsUpdate.log, we can see the download is handled by CcmExec:
-
To specify what products get installed through ConfigMgr, you need to deploy the Software Updates either manually or through an Automatic Deployment Rule (ADR). We have an excellent video on how to set these up: How to Deploy Software Updates Using Microsoft SCCM (ADRs, Update Groups, and More)
-
In the lab, these are the options that were selected:
The updates and deployments run through various states depending on the deployment settings (forgive my lack of Visio skills). It will look something like this:
-
Important: A maintenance window check is applied when installing updates; if a maintenance window is not open, the computer will wait for its opening before installing the updates.
-
All of this is handled in ConfigMgr and not shown within the HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU key.
Intune registry settings:
-
When utilizing Intune, Windows Updates are controlled through Devices > Windows Updates:
-
For Intune Only devices, the registry keys are somewhere completely different. HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PolicyManager\current\device\Update
- Unless a Group Policy or an old ConfigMgr policy is applied for Intune devices, HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate is completely blank and doesn’t exist.
-
All of these registry keys can be modified, however: when the Intune Management Extension checks in again the settings will be reverted. Modifying the settings from the Intune console is always recommended instead of manually changing them.
-
Reference this Microsoft Article on how to Troubleshoot Update Rings
In the WindowsUpdate.log, we can see the download is handled by the MoUpdateOrchestrator (same as WSUS):
-
However, this time, the update is being downloaded directly from Microsoft
When it comes to what Updates are going to apply, this depends on the Microsoft Subscription. Update rings, feature updates, quality updates, and driver updates are all applied to different tabs. Prerequisites for Autopatch, including licensing, can be found here.
It looks something like this:
In Intune, you can schedule a delay for these updates, and the reg keys at HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PolicyManager\current\device\Update will reflect any policy changes made. However, there are no maintenance windows available. The IME agent checks in once a day and will automatically download and install the updates as needed based on policy.
Understanding PolicyState for Update Policies
Another critical registry key to examine during troubleshooting is:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsUpdate\UpdatePolicy\PolicyState.
This key provides essential details about the active Windows Update policies on the device, including:
-
PolicySource: Identifies whether the policy is managed by MDM, Group Policy, or another source.
-
PolicyApplication: Confirms whether the policy has been successfully applied.
-
Policy Settings and Values: Displays the active policies, their configurations, and potential conflicts.
This is particularly useful for diagnosing devices impacted by updates such as KB4023057, which can reset MDM-managed devices to display as “Managed by Group Policy.” For example, if the device unexpectedly falls under Group Policy control, the PolicySource value will confirm the origin of the applied policies.
Administrators can use this key to quickly identify conflicts or mismatches in update management, making it an essential part of any troubleshooting process
Co-managed registry settings Part 1:
Co-Managment is where things start to get a bit strange. Let’s unpack it. This is where my current workload settings are for my test device.
It’s important to note that the registry changes will take effect on the device once the Windows Update policies are directed to Intune for that specific device. The registry keys remain the same whether the device is part of the Pilot Intune collection or if the slider is set fully to Intune for Windows Update Policies. Using the Pilot Intune setting is ideal for testing, as it only applies to the devices included in the collection under the “Staging” tab.
We have an excellent blog on Dual Scan. The purpose of this blog is to help users quickly identify where updates are coming from just by looking at the registry. However, the SCCM client will leave registry entries behind.
The first thing that usually catches my eye are these options here in HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate
If the following keys are set to zero, the device pulls these from Windows Update (Intune). According to Microsoft, “If no policies are configured: All of your updates will come from Windows Update.”
Again, going into the registry editor and editing the keys is not recommended. You can do it, but more often than not, the policy controlling these settings will just revert the settings that were manually changed. With the settings above, ConfigMgr is controlling these keys but the gpresult will show “Local Group Policy” as the winning policy.
But on this same device, we can review the HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PolicyManager\current\device\Update location and see all of the Intune registry keys.
Looking at the WindowsUpdate.log, we can see the MoUpdateOrchestrator is taking over again.
Co-managed registry settings Part 2
To save myself from confusion later, the Client Policy was changed to Not Allow ConfigMgr to run Software Updates on Clients. After doing so, HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate was completely removed.
When Configuring Co-Management, you lose the ability to run third-party updates (unless you utilize dual scan). First-party (Microsoft) updates will work because they are downloaded directly from Microsoft. If you want third-party updates and plan on migrating workloads to Intune, enable the ClientApps workload for the same collection as your Windows Update policies. This way, if Patch My PC is building your updates in Intune, no loss of third-party patching will occur.
Summary
As you attempt to identify where the updates are coming from, run a group policy to see how these registry values are being controlled.
- HKEY_LOCAL_MACHINESOFTWAREPoliciesMicrosoftWindowsWindowsUpdate
This location is primarily used for WSUS or ConfigMgr
- HKEY_LOCAL_MACHINESOFTWAREMicrosoftPolicyManagercurrentdeviceUpdate
This location is primarily used for Intune
Check the Windows Update Log (WindowsUpdate.log)
We’ve explored how Windows Update policies are managed across WSUS, ConfigMgr, Intune, and co-managed devices by understanding the role of registry keys. We’ve seen how to identify where updates are coming from, when they’re applied, and how they’re controlled, all while emphasizing the importance of letting policies govern these settings to avoid conflicts. By focusing on the registry paths, logs, and policy structures, we can effectively troubleshoot and manage updates without introducing unnecessary complications. This knowledge empowers us to maintain a smooth update process tailored to any organization’s needs.
If you’re looking for a faster, hassle-free way to manage application updates, Patch My PC can help. Our affordable solution simplifies app deployment, ensuring your environment stays secure and up to date with minimal effort. Book a demo today to see it in action!