Инструменты пользователя

Инструменты сайта


software:windows:security:set_up_security_for_windows_services:set_up_security_for_windows_services

Устанавливаем разрешения для служб Windows

Изложенное далее проверялось на Windows Server 2019 для службы удаленных рабочих столов (TermService).

Что требуется: дать полные права для управления службой удаленных рабочих столов для всех пользователей (для примера).

Скачайте PsTools из пакета Sysinternals.

Используем PsService64 из состава PsTools, перейдя в консоли в папку, куда распаковали PsTools. Опрашиваем текущие права на управление службой удаленных рабочих столов:

> .\PsService64.exe security termservice
SERVICE_NAME: TermService
DISPLAY_NAME: Службы удаленных рабочих столов
      ACCOUNT: NT Authority\NetworkService
      SECURITY:
      [ALLOW] NT AUTHORITY\СИСТЕМА
              Query status
              Query Config
              Interrogate
              Enumerate Dependents
              Pause/Resume
              Start
              Stop
              User-Defined Control
              Read Permissions
      [ALLOW] BUILTIN\Administrators
              All
      [ALLOW] NT AUTHORITY\ИНТЕРАКТИВНЫЕ
              Query status
              Query Config
              Interrogate
              Enumerate Dependents
              User-Defined Control
              Read Permissions
      [ALLOW] NT AUTHORITY\СЛУЖБА
              Query status
              Query Config
              Interrogate
              Enumerate Dependents
              User-Defined Control
              Read Permissions
              

Также опрашиваю права на службу удаленных рабочих столов в специальной нотации с помощью встроенной утилиты в ОС:

sc.exe sdshow termservice
D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;IU)(A;;CCLCSWLOCRRC;;;SU)S:(AU;FA;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;WD)

Этот вывод нам потребуется в дальнейшем, чтобы назначить дополнительные права на службу. Что означают эти обозначения:

Буква ДО СКОБОК:
S: — системный список контроля доступа (SACL)
D: — дискреционный список контроля доступа (DACL)
Первая буква ПОСЛЕ скобок:
Разрешить (A) или Запретить (D).

Далее расшифровка самих прав:

CC — SERVICE_QUERY_CONFIG (query service settings)
LC — SERVICE_QUERY_STATUS (get service status)
SW — SERVICE_ENUMERATE_DEPENDENTS
LO — SERVICE_INTERROGATE
CR — SERVICE_USER_DEFINED_CONTROL
RC — READ_CONTROL
RP — SERVICE_START
WP — SERVICE_STOP
DT — SERVICE_PAUSE_CONTINUE

Далее, в конце перед закрывающей скобкой либо обозначение группы либо SID:

AU Authenticated Users
AO Account operators
RU Alias to allow previous Windows 2000
AN Anonymous logon
AU Authenticated users
BA Built-in administrators
BG Built-in guests
BO Backup operators
BU Built-in users
CA Certificate server administrators
CG Creator group
CO Creator owner
DA Domain administrators
DC Domain computers
DD Domain controllers
DG Domain guests
DU Domain users
EA Enterprise administrators
ED Enterprise domain controllers
WD Everyone
PA Group Policy administrators
IU Interactively logged-on user
LA Local administrator
LG Local guest
LS Local service account
SY Local system
NU Network logon user
NO Network configuration operators
NS Network service account
PO Printer operators
PS Personal self
PU Power users
RS RAS servers group
RD Terminal server users
RE Replicator
RC Restricted code
SA Schema administrators
SO Server operators
SU Service logon user

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

Идея состоит в том, что мы берем вывод утилиты sc.exe sdshow и туда в секцию D: но ДО секции S: добавить наши искомые права, вот так:

> sc sdset termservice "D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;IU)(A;;CCLCSWLOCRRC;;;SU)(A;;CCLCSWRPWPDTLOCRRC;;;WD)S:(AU;FA;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;WD)"

Далее опрашиваем еще раз службу чтобы проверить, что наши добавленные права возымели силу:

.\PsService64.exe security termservice
....			
      [ALLOW] Все
              Query status
              Query Config
              Interrogate
              Enumerate Dependents
              Pause/Resume
              Start
              Stop
              User-Defined Control
              Read Permissions
/var/www/wiki.itcall.ru/data/pages/software/windows/security/set_up_security_for_windows_services/set_up_security_for_windows_services.txt · Последнее изменение: d.m.Y H:i — dbehterev