Ошибка: Сервер возвратил ссылку (A referral was returned from the server)
Архитектура UAC и проверка цифровых подписей (Authenticode)
Ошибка «Сервер возвратил ссылку» (A referral was returned from the server / Error 0x8007203A) возникает при попытке запустить исполняемый файл (.exe, .msc) или установить программу с повышением прав (от имени Администратора). Эта проблема напрямую связана с механизмами User Account Control (UAC) и службой криптографии (Cryptographic Services). Когда политика UAC настроена на строгую проверку сертификатов (Validate Admin Signatures), система проверяет цифровую подпись (Authenticode) запускаемого файла. Если сертификат отозван (Revoked), истек, либо в системе отсутствует корневой сертификат (Root CA) издателя, служба Trust Verification отклоняет запрос на повышение прав. Бизнес-риски: администратор не может запустить системные оснастки (gpedit.msc, regedit), невозможность установки обновлений или критически важного ПО.
Анализ компонентов проверки
| Компонент / Политика | Влияние на запуск | Решение |
|---|---|---|
Политика UAC: ValidateAdminCodeSignatures | Запрещает запуск неподписанных или инвалидных файлов с правами Админа. | Отключение строгой проверки подписей в Secpol.msc. |
| Корневые сертификаты (Root CA) | ОС не доверяет издателю программы (отсутствует сертификат в хранилище). | Обновление корневых сертификатов Windows (authroot.stl). |
| Список отзыва (CRL) | Издатель скомпрометирован, сертификат отозван через CRL/OCSP. | Запуск невозможен (Требуется новая версия ПО от разработчика). |
Методы обхода ошибки проверки сертификата (UAC)
Сценарий 1: Отключение строгой проверки подписей UAC (Secpol.msc)
Самый быстрый способ вернуть контроль над системой, если вы доверяете запускаемому файлу.
- Нажмите Win + R, введите
secpol.msc(Локальная политика безопасности) и нажмите Enter. - Перейдите в раздел: Локальные политики -> Параметры безопасности (Local Policies -> Security Options).
- Найдите политику: Контроль учетных записей: повышать права для исполняемых файлов только с цифровой подписью (User Account Control: Only elevate executables that are signed and validated).
- Откройте свойства и установите значение Отключен (Disabled).
- Примените изменения (рестарт не нужен, политика UAC применяется на лету) и запустите нужный
.exeфайл.
Сценарий 2: Изменение политики через Реестр (Если secpol.msc не запускается)
Иногда ошибка «Сервер возвратил ссылку» блокирует запуск самого secpol.msc или regedit. В таком случае используем командную строку (через безопасный режим или диспетчер задач).
Откройте CMD от имени Администратора (или из среды восстановления WinRE)
reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" /v ValidateAdminCodeSignatures /t REG_DWORD /d 0 /fСценарий 3: Обновление корневых сертификатов Windows
Если сертификат разработчика валиден, но Windows его не знает, необходимо обновить хранилище Trusted Root CA.
Принудительное обновление корневых сертификатов через certutil
certutil -generateSSTFromWU roots.sst
(Внимание: эта команда генерирует файл SST. Для импорта в хранилище потребуется скрипт PowerShell:
$sst = (Get-ChildItem -Path .\roots.sst)
$sst | Import-Certificate -CertStoreLocation Cert:\LocalMachine\Root )Типовые ошибки администраторов
- Полное отключение UAC (EnableLUA=0): В попытке решить ошибку админы отключают UAC через реестр полностью. Это критически снижает безопасность ОС и ломает работу современных (UWP) приложений (например, Калькулятор, Фотографии). Меняйте только политику
ValidateAdminCodeSignatures. - Игнорирование факта компрометации: Если программа известная (например, утилита от ASUS/Gigabyte), и внезапно начала выдавать эту ошибку, не спешите отключать проверку. Возможно, вендор отозвал сертификат из-за того, что их сервера были взломаны (Supply Chain Attack).
Внедрение политик AppLocker и UAC требует тщательного профилирования. Эксперты ITSTM разработают внутренний корпоративный центр сертификации (PKI / AD CS), внедрят Code Signing (подпись кода) для ваших скриптов и обеспечат бесперебойную работу IT-инфраструктуры в рамках жестких политик ИБ.
Частые вопросы (FAQ)
Почему ошибка появляется только при запуске 'От имени Администратора'?
Обычный запуск работает в контексте ограниченного токена пользователя. Политика 'ValidateAdminCodeSignatures' проверяет сертификаты исключительно в момент генерации токена с повышенными привилегиями (Admin Token) на экране UAC.
Как посмотреть сертификат, из-за которого возникает ошибка?
Нажмите правой кнопкой мыши по проблемному .exe файлу -> Свойства -> вкладка 'Цифровые подписи' (Digital Signatures). Выберите подпись, нажмите 'Сведения', затем 'Просмотр сертификата'. Там будет указана причина (истек, отозван или цепочка доверия разорвана).
Что делать, если regedit тоже выдает 'Сервер возвратил ссылку'?
Загрузитесь в Безопасном режиме (Safe Mode) с поддержкой командной строки. В безопасном режиме политики UAC работают иначе, что позволит вам открыть regedit и изменить значение ValidateAdminCodeSignatures на 0.
Влияет ли отсутствие интернета на появление этой ошибки?
Да. Если политика требует строгой проверки (Validate), службе CryptoAPI нужно скачать актуальный список отзыва сертификатов (CRL) с серверов издателя. Если интернета нет, проверка не пройдет по таймауту, и UAC заблокирует запуск.