Идентификатор безопасности
В контексте Microsoft Windows NT линейки операционных систем идентификатор безопасности ( SID ) — это уникальный неизменяемый идентификатор пользователя, группы пользователей или другого участника безопасности . Субъект безопасности имеет один пожизненный SID (в данном домене), и все свойства субъекта, включая его имя, связаны с этим SID. Такая конструкция позволяет переименовывать принципала (например, с «Джейн Смит» на «Джейн Джонс»), не затрагивая атрибуты безопасности объектов, ссылающихся на принципала.
Обзор
[ редактировать ]Windows предоставляет или запрещает доступ и привилегии к ресурсам на основе списков управления доступом (ACL), которые используют SID для уникальной идентификации пользователей и их членства в группах. Когда пользователь входит в систему, маркер доступа создается , который содержит идентификаторы SID пользователя и группы, а также уровень привилегий пользователя. Когда пользователь запрашивает доступ к ресурсу, токен доступа проверяется на соответствие ACL, чтобы разрешить или запретить определенное действие над конкретным объектом.
SID полезны для устранения неполадок, связанных с аудитом безопасности, Windows Server и миграцией доменов.
Формат SID можно проиллюстрировать на следующем примере: «S-1-5-21-3623811015-3361044348-30300820-1013»:
С | 1 | 5 | 21-3623811015-3361044348-30300820 | 1013 |
---|---|---|---|---|
Строка представляет собой SID. | Уровень редакции (версия спецификации SID). | Значение авторитета идентификатора. | Значение субавторитета. В данном случае это домен (21) с уникальным 96-битным идентификатором. Для кодирования значений длиной более 32 бит может быть более одного субцентра, как в этом примере. | ( Относительный идентификатор RID). Любая группа или пользователь, не созданные по умолчанию, будут иметь относительный идентификатор 1000 или выше. |
Значения авторитета идентификатора
[ редактировать ]Значение авторитета идентификатора
[ редактировать ]Известные значения авторитета идентификатора: [1] [2]
Определение SID возможности:
- Если пользователь находит SID в данных реестра, то это SID возможности. По замыслу оно не преобразуется в понятное имя.
- Если пользователь не находит SID в данных реестра, это не известный SID возможности. Его по-прежнему можно устранить как обычный неразрешенный SID. Существует небольшая вероятность того, что SID может быть SID сторонней возможности, и в этом случае он не будет преобразован в понятное имя.
Согласно поддержке Microsoft: [7] Важно ! НЕ УДАЛЯЙТЕ возможности SIDS ни из реестра, ни из разрешений файловой системы. Удаление SID возможности из разрешений файловой системы или реестра может привести к неправильной работе функции или приложения. После удаления SID возможности вы не сможете использовать пользовательский интерфейс, чтобы добавить его обратно.
S-1-5 Значения суборганов [6] [9] [10]
[ редактировать ]Десятичный | Имя | Отображаемое имя | Впервые представлен | Ссылки | Примечания |
---|---|---|---|---|---|
18 | ЛокальнаяСистема | ЛокальнаяСистема | НТ 3.х | Пример: S-1-5-18 — это известный идентификатор LocalSystem. | |
19 | ЛокалСервис | Местная служба | S-1-5-19 — это известный SID для LocalService. | ||
20 | Сетевойсервис | Сетевая служба | S-1-5-20 — это известный SID для NetworkService. | ||
21 | Домен | ||||
32 | Пользователи | Windows 7 | Пример: S-1-5-32-568 — это идентификатор группы для IIS_IUSRS. | ||
64 | Аутентификация | 10 – НТЛМ
14 - Канал S 21 - Дайджест | |||
80 | НТ Сервис | НТ СЕРВИС\ | Windows Виста | Может быть «Служба виртуальной учетной записи NT», например, для установок SQL Server.
S-1-5-80-0 соответствует «NT SERVICE\ALL SERVICES». | |
82 | Пул приложений IIS | AppPoolIdentity\ | Windows 7 | ||
83 | Виртуальные машины | ВИРТУАЛЬНАЯ МАШИНА NT\ | Windows 7 | «NT Virtual Machine\{guid}», где {guid} — это GUID виртуальной машины Hyper-V.
S-1-5-83-0 — это идентификатор группы «NT VIRTUAL MACHINE\Virtual Machines». | |
88 | НТ НФС | ??? | Windows 2003 | SID владельца для UID <uid>: S-1-5-88-1-<uid>
SID владельца для GUID <gid>: S-1-5-88-2-<gid> Режим файла: S-1-5-88-3-<режим> Все: S-1-5-88-4 | |
90 | Оконный менеджер | Группа диспетчера Windows (DWM) | Windows 7 | Класс оконного менеджера | |
96 | Драйвер шрифта | Windows 7 | Хост драйвера шрифта\UMFD-1 |
Виртуальные учетные записи определены для фиксированного набора имен классов, но имя учетной записи не определено. В виртуальной учетной записи доступно почти бесконечное количество учетных записей. Имена работают как «Класс учетной записи\Имя учетной записи», то есть «AppPoolIdentity\Пул приложений по умолчанию». SID основан на хэше SHA-1 имени в нижнем регистре. Каждой виртуальной учетной записи могут быть предоставлены разрешения отдельно, поскольку каждая из них соответствует отдельному SID. Это предотвращает проблему «разрешений перекрестного доступа», когда каждая служба назначается одному и тому же классу NT AUTHORITY (например, «NT AUTHORITY\Network Service»).
Идентификаторы безопасности машины
[ редактировать ]SID компьютера (S-1-5-21) хранится в кусте реестра SECURITY расположенном по адресу SECURITY\SAM\Domains\Account . Этот ключ имеет два значения F и V. , Значение V — это двоичное значение, в которое в конце данных (последние 96 бит) встроен SID компьютера. [11] (Некоторые источники утверждают, что вместо этого он хранится в кусте SAM.) Резервная копия находится по адресу SECURITY\Policy\PolAcDmS\@ .
NewSID гарантирует, что этот SID имеет стандартный формат NT 4.0 (3 32-битных субавторитета, которым предшествуют три 32-битных поля полномочий). Затем NewSID генерирует новый случайный SID для компьютера. Генерация NewSID требует больших усилий для создания действительно случайного 96-битного значения, которое заменяет 96-битные значения трех субавторитетов, составляющих SID компьютера.
— Новый файл чтения SID
Формат субавторитета SID компьютера также используется для SID домена. В этом случае машина считается собственным локальным доменом.
Декодирование SID машины
[ редактировать ]SID компьютера хранится в реестре в виде необработанных байтов. Чтобы преобразовать его в более распространенную числовую форму, его интерпретируют как три 32-битных целых числа с прямым порядком байтов , преобразуют их в десятичные и добавляют между ними дефисы.
Пример | 2E,43,AC,40,C0,85,38,5D,07,E5,3B,2B |
---|---|
1) Разделите байты на 3 секции: | 2E,43,AC,40 - C0,85,38,5D - 07,E5,3B,2B |
2) Обратный порядок байтов в каждом разделе: | 40,AC,43,2E - 5D,38,85,C0 - 2B,3B,E5,07 |
3) Преобразуйте каждую секцию в десятичную: | 1085031214 - 1563985344 - 725345543 |
4) Добавьте префикс SID машины: | S-1-5-21-1085031214-1563985344-725345543 |
Другое использование
[ редактировать ]SID компьютера также используется некоторыми программами бесплатной пробной версии, такими как Start8 , для идентификации компьютера, чтобы он не мог перезапустить пробную версию. [ нужна ссылка ]
Идентификаторы безопасности служб
[ редактировать ]Идентификаторы безопасности служб — это функция изоляции служб , функция безопасности, представленная в Windows Vista и Windows Server 2008 . [12] Любая служба со свойством типа «неограниченный» SID будет иметь SID, специфичный для службы, добавленный к маркеру доступа процесса узла службы. Целью идентификаторов SID службы является предоставление возможности управления разрешениями для одной службы без необходимости создания учетных записей служб, что является административными накладными расходами.
SID каждого сервиса — это локальный SID на уровне компьютера, созданный на основе имени сервиса по следующей формуле:
S-1-5-80-{SHA-1(service name in upper case encoded as UTF-16)}
The sc.exe
Команда может использоваться для генерации произвольного SID службы:
Служба также может называться NT SERVICE\<имя_службы> (например, «NT SERVICE\dnscache»).
Дублированные SID
[ редактировать ]Тон или стиль этой статьи могут не отражать энциклопедический тон , используемый в Википедии . ( Апрель 2009 г. ) |
В рабочей группе компьютеров под управлением Windows NT/2K/XP пользователь может получить неожиданный доступ к общим файлам или файлам, хранящимся на съемном носителе. Этого можно предотвратить, установив списки управления доступом к уязвимому файлу, чтобы действующие разрешения определялись идентификатором SID пользователя. Если этот пользовательский SID дублируется на другом компьютере, пользователь второго компьютера, имеющий тот же SID, может иметь доступ к файлам, которые защищен пользователем первого компьютера. Это часто может произойти, когда SID машины дублируются клоном диска, что характерно для пиратских копий. Идентификаторы SID пользователя создаются на основе SID компьютера и последовательного относительного идентификатора.
Когда компьютеры объединены в домен (например, Active Directory или домен NT), каждому компьютеру предоставляется уникальный SID домена, который пересчитывается каждый раз, когда компьютер входит в домен. Этот SID аналогичен SID компьютера. В результате обычно не возникает серьезных проблем с дублированием SID, если компьютеры являются членами домена, особенно если не используются локальные учетные записи пользователей. Если используются локальные учетные записи пользователей, существует потенциальная проблема безопасности, аналогичная описанной выше, но проблема ограничивается файлами и ресурсами, защищаемыми локальными пользователями, а не пользователями домена.
Дублированные идентификаторы SID обычно не являются проблемой для систем Microsoft Windows, хотя другие программы, обнаруживающие SID, могут иметь проблемы с безопасностью.
Раньше Microsoft предоставляла утилиту NewSID Марка Руссиновича как часть Sysinternals для изменения SID компьютера. [13] Он был удален и удален из загрузки 2 ноября 2009 года. Руссинович объясняет, что ни он, ни команда безопасности Windows не могли придумать ситуацию, в которой дублирующиеся SID могли бы вообще вызвать какие-либо проблемы, поскольку машинные SID никогда не несут ответственности за ограничение любого доступа к сети. . [14]
В настоящее время единственным поддерживаемым механизмом дублирования дисков для операционных систем Windows является использование SysPrep , который генерирует новые идентификаторы SID.
См. также
[ редактировать ]- Контроль доступа
- Матрица контроля доступа
- Дискреционный контроль доступа (DAC)
- Глобальный уникальный идентификатор (GUID)
- Обязательный контроль доступа (MAC)
- Ролевой контроль доступа (RBAC)
- Безопасность на основе возможностей
- Операции после клонирования
Ссылки
[ редактировать ]- ^ «Общеизвестные идентификаторы безопасности в операционных системах Windows» . support.microsoft.com . Проверено 12 декабря 2019 г.
- ^ openspecs-офис. «[MS-DTYP]: общеизвестные структуры SID» . docs.microsoft.com . Проверено 3 сентября 2020 г.
- ^ См. раздел «Пользовательские принципы» на https://msdn.microsoft.com/en-us/library/aa480244.aspx.
- ^ «Веб-журнал Ларри Остермана» .
- ^ «Пример влияния учетных записей Microsoft на API-интерфейсы Windows в Windows 8/8.1 — блог группы поддержки Windows SDK» . blogs.msdn.microsoft.com .
- ^ Jump up to: а б «Идентификаторы безопасности» . support.microsoft.com . 28 августа 2021 г. Проверено 02 сентября 2020 г.
- ^ Jump up to: а б «Некоторые идентификаторы SID не преобразуются в понятные имена» . support.microsoft.com . 24 сентября 2021 г. Проверено 02 сентября 2020 г.
- ^ фамилияхолиу. «Константы SID возможностей (Winnt.h) — приложения Win32» . docs.microsoft.com . Проверено 02 сентября 2020 г.
- ^ «Учетные записи повсюду: часть 1, Виртуальные учетные записи» . 1Е . 24.11.2017 . Проверено 02 сентября 2020 г.
- ^ «Идентификаторы безопасности IIS AppPool» . зима . 2020-09-02.
- ^ «Утилита MS TechNet NewSID — как она работает» . База знаний . Майкрософт . 1 ноября 2006 года . Проверено 5 августа 2008 г.
- ^ «Функция изоляции служб Windows» . Статья . Windows ИТ-специалист. 6 июня 2012 года . Проверено 7 декабря 2012 г.
- ^ «НовыйSID v4.10» . Системные внутренние компоненты Windows . Майкрософт. 01.11.2006.
- ^ Руссинович, Марк (3 ноября 2009 г.). «Миф о дублировании SID машины» . Блоги TechNet . Майкрософт.
Внешние ссылки
[ редактировать ]- Официальный
- ObjectSID и Active Directory
- Microsoft TechNet: Server 2003: Технический справочник по идентификаторам безопасности
- MSKB154599: Как связать имя пользователя с идентификатором безопасности
- MSKB243330: общеизвестные идентификаторы безопасности в операционных системах Windows.
- Инструменты поддержки для Windows Server 2003 и Windows XP
- Идентификаторы безопасности - Документация по безопасности Windows
- Другой