Проблема одинаковых (дубликатов) SID компьютеров в Windows

Осенью 2025 года Microsoft усилила требования к уникальности SID в Windows 11 25H2, 24H2 и Windows Server 2025, выпустив обновления безопасности, которые требует обязательной уникальности идентификаторов безопасности компьютеров (SID) в сети и блокируют возможность сетевой аутентификации (и соответственно сетевого доступа) между компьютерами с одинаковыми SID. Проблема проявляется при попытке выполнить аутентификацию через NTLM/Kerberos с компьютером SID, которого совпадает с локальным SID машины.

После этих изменений, администраторы, которые развертывали операционные системы на устройствах пользователей и виртуальных машинах простым клонированием (без смены SID через sysprep), столкнулись с невозможностью доступа по сети между компьютерами с одинаковыми SID.

Как проявляется проблема:

Если пользователь попытается удаленно подключиться к компьютеру, SID которого совпадает с локальным SID его машины, появится ошибка “ Неверное имя пользователя или пароль ”, несмотря на то что введены корректные данные.

Неверное имя пользователя или пароль при доступе к сетевой папке между компьютерами с одинаковыми SID

В результате пользователь не сможет:

  • Открыть сетевую (SMB) папку или подключить общий сетевой принтер с удаленного компьютера
  • Подключиться к такому компьютеру по RDP
  • Подключиться через WinRM (PSRemoting)

При этом в журнале System консоли Event Viewer удаленного компьютера будет фиксироваться ошибка с Event ID 6167:

Источник: LSA (LsaSrv)

There is a partial mismatch in the machine ID. This indicates that the ticket issued by user WINITPRO\kbuldogov has either been manipulated or it belongs to a different boot session. Failing authentication.
NOTE:
This can also happen if the machine was cloned without using sysprep. More information can be found at https://go.microsoft.com/fwlink/?linkid=2349106
Обнаружено частичное несоответствие идентификатора машины. Это указывает на то, что билет был изменен или принадлежит другой сессии загрузки системы.

Событие Event ID 6167 от LsaSrv Обнаружено частичное несоответствие идентификатора машины. Это указывает на то, что билет был изменен или принадлежит другой сессии загрузки системы - такое случае если машина была клонирована без использования sysprep
Таким образом, пропадает возможность удаленного подключения и доступа к ресурсам на компьютерах, которые были клонированы или развернуты из одного образа (без использования sysprep) и имеют одинаковый SID.

Известная статья Марка Русcиновича от 2009 года The Machine SID Duplication Myth (and Why Sysprep Matters) , создала другой устойчивый миф, что одинаковые локальные Machine SID на нескольких компьютерах в сети не являются проблемой. Хотя при реальной эксплуатации многие администраторы сталкивались с разными глюками и странностями, когда разные машины имели одинаковый локальный SID. Кроме того, использование одинаковых SID на компьютерах в сети несет риски безопасности, в первую очередь несанкционированного повышения привилегий при сетевом доступе между такими машинами.

Соответственно, Microsoft решила коренным образом закрыть такую проблему, выпустив обновления, которые блокируют возможность удаленного доступа между компьютерами, если на них обнаруживаются дублирующие SID (блокируется Kerberos и NTLM аутентификация).

Для решения проблемы наличия в сети компьютеров с одинаковыми SID нужно:

  • При развертывании подготовленного образа Windows с предустановленными софтом и настройками, или при клонировании машин (будь то физические и виртуальные машины Windows), нужно обязательно использовать встроенную утилиту sysprep с параметром /generalize перед созданием или клонированием образа Windows. Это позволяет полностью сбросить Machine SID, и при первом включении ОС из образа на каждом компьютере будет сгенерирован новый уникальный идентификатор. Но, такой метод не подходит для уже установленных систем (об этом ниже).
  • На уже развернутых компьютерах, которые были развёрнуты из одного образа, нужно изменить SID машины (официально не поддерживается, но есть сторонние утилиты для перегенерации SID).
  • Временное решение: можно временно отключить действие новых требований к уникальности SID

Как узнать локальный SID Windows машины?

Нужно отличать локальный SID (Machine SID) компьютера от доменного SID (Domain SID). Доменный SID генерируется при добавлении Windows компьютера в домен Active Directory и является уникальным (уникальность обеспечивается тем, что генерируется и выдается доменом). Локальный SID генерируется при установке Windows или после запуска утилиты Sysprep с параметром generalize. Если вы развернули несколько машин путем клонирования из одного образа, локальный SID на них будет одинаковым.

Для получения SID локального компьютера (Machine SID) можно использовать утилиту PsGetsid от Microsoft. Ее можно скачать на компьютер или запустить напрямую с сервера Live Sysinternals:

& \\live.sysinternals.com\tools\psgetsid64.exe

psgetsid64 - узнать SID компьютера

Еще проще, вы можете получить локальный SID компьютера, получив значение свойства AccountDomainSid из любого локального пользователя:

(Get-LocalUser |Select-Object -First 1 -ExpandProperty SID).AccountDomainSid.Value

Получить локальный SID компьютера с помощью PowerShell: AccountDomainSid

Находим компьютеры с одинаковыми SID в домене Active Directory

Для поиска компьютеров с одинаковыми SID в домене Active Directory можно использовать подход со стартап скриптом PowerShell. Идея в том, что каждый компьютер при загрузке записывает свой локальный SID в один из атрибутов своей учетной записи. Мы рассматривали этот подход в статье Автоматическое добавление полезной информации в описание компьютеров в Active Directory.

Следующий PowerShell скрипт добавляет SID в поле Description компьютера в AD (если этот атрибут у вас не используется для других целей). Назначьте этот скрипт на OU с компьютерами в качестве стартап скрипта или запустите через задание планировщика в GPO:

$computer = $env:COMPUTERNAME
$DNSDOMAIN= (Get-WmiObject -Namespace root\cimv2 -Class Win32_ComputerSystem).Domain
$ComputerSearcher = New-Object DirectoryServices.DirectorySearcher
$ComputerSearcher.SearchRoot = "LDAP://$("DC=$(($DNSDOMAIN).Replace(".",",DC="))")"
$ComputerSearcher.Filter = "(&(objectCategory=Computer)(CN=$Computer))"
$computerObj = [ADSI]$ComputerSearcher.FindOne().Path
$computerObj.Put( "Description", "$SID" )
$computerObj.SetInfo()

В результате в свойствах учетных записей компьютеров в AD будет отображаться локальные SID машин.

Поиск компьютеров в домене с одинаковыми SID

Теперь с помощью PowerShell командлета Get-ADComputer вы можете найти и вывести все компьютеры с одинаковыми SID:

# Получаем все компьютеры с заполненным Description, кроме пустых
$computers = Get-ADComputer -Filter 'Description -like "*"' -Properties Description
# Группируем компьютеры с одинаковыми SID и выводим дубликаты
$computers | Group-Object Description | Where-Object { $_.Count -gt 1 } | Select-Object Name, Count, Group|fl

PowerShell - найти в домене компьютеры с дублирующимися SID

Как в Windows изменить (сбросить) SID компьютера?

Единственное официальное средство для сброса и перегенерации SID на компьютерах, поддерживаемое и рекомендуемое Microsoft — запуск утилиты Sysprep с опцией /generalize:

cd C:\Windows\System32\Sysprep

sysprep.exe /generalize /oobe /shutdown

Однако для уже развернутых компьютеров такой способ перегенерации SID не подойдет, т.к., по сути, он равносилен переустановке операционной системы. Помимо удаления старого SID при использовании опции generalize удаляются сторонние драйвера (можно обойти с помощью параметра PersistAllDeviceInstalls ), сбрасываются пользовательские профили и все их настройки, ассоциации файлов, лицензии некоторых программ, которые привязанны к SID или аппаратному HWID.

Таким образом, sysprep с опцией generalize подойдет только для пересборки существующих образов, которые вы устанавливаете на рабочие станции пользователей. В остальных случая потребуется переустановка Windows.

Есть другой неофициальный способ смены SID уже работающей системы на лету без переустановки или сброса Windows – воспользоваться сторонней утилитой SIDCHG ( SID changer utility ).

SIDCHG это сторонняя утилита, официально не поддерживаемая Microsoft. Работоспособность утилиты не гарантирована, поэтому нужно иметь в виду, что на некоторых конфигурациях она может повлечь критические проблемы с Windows вплоть до полной потери данных.

Скачать утилиту SIDCHG можно здесь https://www.stratesave.com/html/sidchg.html Для использования утилиты ее нужно либо приобрести, либо скопировать триальный ключ со страницы загрузки продукта (меняется каждый месяц).

SIDCHG получить триальный ключ

Перед ее использованием нужно учесть несколько моментов, на которые может повлиять смена SID машины и которые могут не работать после замены SID на новый (подробнее об этих и других рисках читайте на официальной странице утилиты):

Итак, переходим в каталог с утилитой и запускаем команду:

.\sidchg64-3.0n.exe /R

Введите триальный ключ:

sidchg64-3.0n - сброс SID компьютера

Как вы видите, утилита обнаружила что включено real-time защита встроенного антивируса Windows и просит либо приостановить ее, либо добавит свой процесс в исключения.

Отключить защиту в реальном времени антвируса

После отключение защиты в реальном времени еще раз запустите команду. Через некоторое время ваш сеанс будет завершен, и вы будете отправлены на страницу входа в Windows. Там появится предупреждение, что на компьютере выполняется смена SID, нужно дождаться ее окончания и перезагрузки. Пока ждете, нельзя входить в свой профиль или перезагружать компьютер.

Предупреждение о смене SID компьютера

После перезагрузки проверьте, что SID машины изменился.

Проверьт что SID был изменен.

Смена SID может вызвать проблемы с работой некоторых Microsoft Store (UWP) приложений (в том числе к неполадкам с поиском в панели задач и стартовом меню). Для сброса настроек некоторых Microsoft Store приложений у утилиты SIDCHG есть опция RESETAPPS=App1_*;App2_* , либо для сброса настроек всех приложений /RESETALLAPPS.

Обходное решение: отключить проверку на дубли SID при сетевом доступе

Microsoft оставила небольшую лазейку, которая позволяет временно отключить новое поведение Windows, блокирующее сетевой доступ и аутентификацию между компьютерами с одинаковыми SID.

Данное решение является временным, будет действовать до конца 2027 года и будет отключено Microsoft в одном из следующих обновлениях безопасности. Это лишь средство временно отложить проблему, если вы не успеваете быстро причесать большой парк компьютеров и сделать на них уникальными SID.

Чтобы временно отключить проверку уникальности SID, скачайте и установите MSI обновление Windows 11 24H2, Windows 11 25H2 and Windows Server 2025 KB5065426 250923_06201 Known Issue Rollback.msi

отключить проверку уникальности SID - обновление Windows 11 24H2, Windows 11 25H2 and Windows Server 2025 KB5065426 250923_06201 Known Issue Rollback.msi

Данное обновление добавляет новый ADMX шаблон групповых политик KB5065426_250923_0620_1_KnownIssueRollback.admx в папке C:\Windows\policydefinitions .

ADMX шаблон KB5065426_250923_0620_1_KnownIssueRollback.admx

В доменной среде можно скопировать этот ADMX шаблон в центральное хранилище GPO (Central Store), если вы хотите применить его к множеству компьютерам.

Чтобы включить этот параметр на отдельном компьютере, откройте консоль редактора локальной групповой политики ( gpedit.msc ) и перейдите в раздел Computer Configuration -> Administrative Templates -> Windows 11 24H2, Windows 11 25H2 and Windows Server 2025 KB5065426 250923_06201 Known Issue Rollback. Откройте настройки параметра KB5065426_20250923_06201 Known Issue Rollback и отключите его (чтобы отключить проверку уникальности SID при доступе к удаленным компьютерам).

KB5065426_20250923_06201 Known Issue Rollback

Фактически данная опция GPO создает в реестре один параметр, которую можно включить вручную без установки ADMX шаблона:

reg add "HKLM\SYSTEM\CurrentControlSet\Policies\Microsoft\FeatureManagement\Overrides" /v 1517186191 /t REG_DWORD /d 0 /f

Отключить проверку уникальности SID через реестр

Перезагрузите компьютер, чтобы применить изменения. После перезагрузки, вы сможете удаленно подключиться к удаленному компьютеру (открыть папку, подключить сетевой диск или принтер) несмотря на одинаковые локальные SID. Но опять же, это временное решение, которое по словам Microsoft будет работать только до конца 2027 года и вам все равно рано или поздно придется менять SID.


Предыдущая статья Следующая статья


Комментариев: 0 Оставить комментарий

Оставить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Я не робот( Обязательно отметьте)