Как обойти блокировку обновлений Windows на процессорах Kaby Lake и Ryzen

Что произошло
Microsoft перестала поставлять обновления для Windows 7 и Windows 8.1 на машинах с процессорами Intel Kaby Lake и AMD Ryzen. Компания объясняет решение бизнес-аргументами, а не техническим принуждением к переходу на Windows 10. Для многих пользователей это создало проблему: они не получают критические обновления и хотели бы сохранить старую ОС.
Как работает проверка совместимости
Внутри Windows Update есть библиотека wuaueng.dll. В ней обнаружены функции, которые проверяют аппаратную совместимость — в сообществе описаны как IsDeviceServiceable(void) и IsCPUSupported(void). Эти функции выполняют аппаратную проверку и блокируют установку пакетов обновлений на «несовместимых» процессорах.
Определение: IsDeviceServiceable(void) — функция в wuaueng.dll, отвечающая за проверку устройства на поддерживаемость обновлений.
Важно: изменения в системных DLL меняют поведение обновлений и могут конфликтовать с проверками целостности или будущими патчами Microsoft.
Два основных способа обойти проверку (описанные на GitHub)
- Изменить значение DWORD в файле wuaueng.dll
- Патч: заменить значение dword_600002EE948 (смещение файла 0x26C948 для версии Windows 7 x64) с 0x01 на 0x00. Это заставляет IsDeviceServiceable(void) пропустить тело и сразу вернуть «поддерживается». Это предпочтительный метод автора патча для конкретной версии.
- Нейтрализовать инструкции в IsDeviceServiceable(void) и использовать реестр
- Патч: заменить отдельные инструкции (NOP) в теле IsDeviceServiceable(void). После этого можно включать использование скрытого параметра реестра ForceUnsupportedCPU типа REG_DWORD по пути:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\Test\Scan- Создайте ключ, установите ForceUnsupportedCPU = 0x00000001, чтобы принудительно разрешить «неподдерживаемые» CPU, и верните 0x00000000, чтобы отменить. Потребуется перезагрузка или перезапуск службы wuauserv. Поведение не документировано и может быть удалено в будущих обновлениях.
В репозитории разработчика «zeffy» на GitHub доступны патчи и подробные инструкции для конкретной сборки Windows 7 x64.
Пошаговая методология применения патча (мини-методология)
- Резервная копия: создать полный образ системы или как минимум резервную копию C:\Windows\System32\wuaueng.dll и реестра.
- Скопировать wuaueng.dll в безопасную папку (работать с копией, а не с работающей DLL).
- Применить один из патчей из доверенного источника (переключение DWORD или NOP-замены).
- Заменить оригинальную DLL (требуется загрузка с внешнего носителя или загрузочная среда) или использовать инструменты для замены при загрузке в безопасном режиме.
- Если используется реестр — создать ключ и установить ForceUnsupportedCPU.
- Перезагрузить компьютер или перезапустить службу Windows Update (wuauserv).
- Проверить установку обновлений и откатить изменения при ошибках.
Команды и примеры (фрагменты)
- Пример создания реестрового ключа через командную строку с правами администратора:
reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\Test\Scan" /v ForceUnsupportedCPU /t REG_DWORD /d 1 /f- Перезапуск службы Windows Update:
net stop wuauserv
net start wuauservКогда это не сработает и контрпримеры
- Версии DLL и смещения отличаются: описанные смещения и байт-патчи относятся к конкретной версии Windows 7 x64. На других обновлениях/сборках смещения изменятся, и патч не сработает.
- SFC, Windows Resource Protection или цифровая подпись могут восстанавливать оригинальную DLL, откатывая патч.
- Будущие обновления Microsoft могут изменить логику проверки или полностью убрать обходные пути.
- Антивирус/защитные механизмы могут пометить модифицированную DLL как вредоносную.
Альтернативные подходы
- Обновиться на поддерживаемую ОС (Windows 10 или новее). Это официально поддерживаемый путь.
- Заменить аппаратную платформу (модель CPU/материнской платы) на поддерживаемую, если критично требуются обновления.
- Централизованное управление обновлениями (WSUS или SCCM) — иногда может обойти поведение клиента, но гарантии нет.
- Использовать изолированное окружение: оставить старую ОС в офлайн/изолированном режиме и использовать новую систему для сетевых задач.
Проверка и критерии приёмки
Критерии приёмки патча:
- Система успешно запускается без ошибок загрузки после замены DLL.
- После перезагрузки Windows Update предлагает и загружает ранее заблокированные обновления.
- SFC не восстанавливает оригинальную DLL автоматически (или процесс восстановления известен и контролируется).
- Нет срабатываний защитного ПО, блокирующих работу обновлений.
Тестовые сценарии:
- До патча: зафиксировать версию wuaueng.dll и результат проверки обновлений.
- После патча: попытаться получить обновления, проверить логи Windows Update (%windir%\WindowsUpdate.log или журнал событий).
- Откат: вернуть исходный файл и убедиться, что поведение вернулось к исходному.
Чеклист для ролей
Конечный пользователь:
- Сделать резервную копию личных данных.
- Понять риски и готовность откатить изменения.
Системный администратор:
- Тестировать патч на образце виртуальной машины с такой же сборкой ОС.
- Оценить влияния на обновления и централизованные системы.
- Документировать шаги отката.
Разработчик/инженер по безопасности:
- Проверить изменения на целостность и на наличие побочных эффектов.
- Оценить сигнализацию IDS/AV на изменённую DLL.
Риски и меры снижения
Риски:
- Повреждение системы из-за неправильно заменённой DLL.
- Конфликт с защитой целостности Windows и антивирусом.
- Утрата гарантии/поддержки от производителя ПО.
Меры снижения:
- Тестировать в изолированном окружении (виртуальная машина).
- Всегда иметь образ системы для быстрого отката.
- Использовать проверенные исходники патча и читать обсуждения в репозитории.
Факто-бокс
- Зона воздействия: Windows 7 x64 и Windows 8.1 на платформах Kaby Lake и Ryzen.
- Основная библиотека: wuaueng.dll (Windows Update client).
- Два метода: изменение DWORD в конкретном смещении или NOP-инструкции + реестр.
- Статус: временное решение — Microsoft вероятно закроет обходы в будущих обновлениях.
Юридические и безопасность заметки
- Изменение системных библиотек может нарушать лицензионные условия и повлиять на гарантийные обязательства. Проверьте корпоративные политики перед применением.
- Никогда не выполняйте непроверенные бинарные патчи без их верификации.
Короткие выводы
- Появились рабочие обходы аппаратной проверки обновлений для Kaby Lake и Ryzen на старых Windows.
- Решения требуют технических навыков, резервного копирования и понимания рисков.
- Рекомендуемый путь — миграция на поддерживаемую ОС; патчи остаются временным и потенциально опасным обходом.
Часто задаваемые вопросы
Это легально и безопасно?
Изменение системных файлов обычно не нарушает уголовное законодательство, но может нарушить лицензионные соглашения и корпоративные политики. Безопасность зависит от источника патча и аккуратности выполнения резервного копирования.
Где брать патчи?
Исходная публикация и патчи обсуждаются в репозитории разработчика «zeffy» на GitHub. Используйте только проверенные репозитории и читайте обсуждения сообщества.
Что делать, если после патча система нестабильна?
Верните оригинальный wuaueng.dll из резервной копии или образа, затем выполните откат реестра и перезагрузку. Если нет резервной копии, используйте установочный носитель Windows для восстановления.
СВЯЗАННЫЕ СТАТЬИ:
- Новый ноутбук Razer Blade 14 получил Kaby Lake и 16 ГБ оперативной памяти
- Microsoft теперь блокирует обновления для Windows 7 и 8.1 на системах с Ryzen и Kaby Lake
- Intel планирует заменить Kaby Lake на архитектуру Coffee Lake в этом году
Похожие материалы
Несколько аккаунтов Skype: Multi Skype Launcher
Журнал для работы: повысить продуктивность
Персональные звуки уведомлений на Android
Скачивание шоу Hulu для офлайн‑просмотра
Microsoft Start: персонализированная новостная лента