- Наводим порядок в Windows х86 со снятым 4 ГБ ограничением памяти после обновления KB2859537
- Установка обновления KB2859537 в Windows 7 x86
- Windows 7 с ядром ntkr128g (ReadyFor4GB)
- Windows 7 с ядром ntkrnlpх (PatchPae2)
- Установка обновления KB2859537 в Windows 8 x86
- Windows 8 с ядром ntoskrnx (PatchPae2)
- Обновление KB5001330 для Windows 10, версия 21H1, 20H2 и 2004: Новый Microsoft Edge заменил Edge Legacy
- Установка через Центр обновления Windows
- Скачать обновление
- Улучшения и исправления KB5001330 (Сборки 19043.928, 19042.928 и 19041.928)
Наводим порядок в Windows х86 со снятым 4 ГБ ограничением памяти после обновления KB2859537
Здравствуйте уважаемые читатели блога www.ithabits.ru. В прошлый раз мы разобрались с обновлением безопасности операционных систем Microsoft Windows KB2859537, после установки которого на многих компьютерах перестали запускаться некоторые программы — «Ошибка при запуске приложения (0xc0000005)».
Наиболее вероятной причиной возникших неприятностей явилось то, что KB2859537, наряду с обновлением большого количества файлов, устанавливает в систему новые ядра ОС.
Прошлая статья была в основном посвящена способу временного решения возникшей проблемы путем отмены установки приводящего к неприятностям пакета обновлений.
В силу того, что на страницах блога неоднократно описывались “исправления” ядер операционной системы Windows х86 с целью увеличения доступной физической памяти до 128 ГБ, сегодня мы разберемся с последствиями установки KB2859537 для таких систем.
Вопреки ожиданиям, установка KB2859537 в Windows x86 с ядрами со снятым 4 ГБ ограничением доступной физической памяти, модифицированными одним из описанных на страницах блога способов — ReadyFor4GB или PatchPae 2, не вызвала никаких нарушений в работе операционной системы. Все программы продолжали исправно запускаться и функционировать.
Однако, это не значит, что вмешательство не требуется. Последовательно рассмотрим возможные варианты.
Установка обновления KB2859537 в Windows 7 x86
Windows 7 с ядром ntkr128g (ReadyFor4GB)
В качестве тестового полигона используем тот же ноутбук Acer с 4 ГБ оперативной памяти и Windows 7 Professional, работа которого с модифицированным ядром, то есть, со снятым 4 ГБ ограничением доступной физической памяти, подробно описывалась в статье, посвященной вопросам использования верхнего диапазона памяти в 32-разрядных системах.
Скажу по большому секрету, что после подготовки материалов той январской статьи, вот уже восемь месяцев ноутбук так и проработал с “поправленным” ядром. Он достаточно активно эксплуатируется, но за все это время не возникло никаких неприятностей.
Непосредственно после установки обновления безопасности KB2859537 в C:\Windows\System32 присутствуют следующие PAE ядра:
ntkrnlpa Версия: 6.17601.18205 Дата: 09.07.2013
ntkr128g Версия: 6.17601.17713 Дата: 09.02.2012
В секции BCD, описывающей загрузку Windows с модифицированным ядром, после установки обновления ничего не изменилось:
Загрузка Windows
——————-
идентификатор
device partition=C:
path \Windows\system32\winload.exe
description Microsoft Windows [Version 6.1.7601] [128GB with ntkr128g.exe]
locale ru-RU
inherit
recoverysequence <4b790165-хххх-11df-98db-faхххххх1839>
recoveryenabled Yes
testsigning Yes
osdevice partition=C:
systemroot \Windows
kernel ntkr128g.exe
resumeobject <4b790163-хххх-11df-98db-faхххххх1839>
nx OptIn
pae ForceEnable
Таким образом, с одной стороны, обновление KB2859537 установилось, с другой стороны, в варианте без ограничения доступной физической памяти система продолжает работать со старым ядром, в котором присутствуют все обнаруженные уязвимости. Это совершенно не правильно.
Если ReadyFor4GB.exe не откажется работать, то исправить ситуацию достаточно просто.
Запускаем компьютер в обычном режиме, удаляем старое ядро ntkr128g.exe версии 6.17601.17713 и запускаем ReadyFor4GB.exe (Надо же, все еще работает. Возможно, что далеко не у всех. Поэтому, сначала убедитесь в работоспособности этого приложения):
Создаем новое “поправленное” ядро. Теперь набор будет выглядеть так:
ntkrnlpa Версия: 6.17601.18205 Дата: 09.07.2013
ntkr128g Версия: 6.17601.18205 Дата: 23.08.2013
Теперь все правильно. Очевидно, что в BCD ничего править не нужно.
Перезапускаем компьютер с новым ntkr128g.exe версии 6.17601.18205 и убеждаемся, что вся физическая память вновь доступна и что все программы и приложения исправно функционируют.
Windows 7 с ядром ntkrnlpх (PatchPae2)
Должен сразу сказать, что, как и в предыдущем случае, я планировал использовать для тестирования этого варианта патча ядра ноутбук Acer. Связка PatchPae2 + PatchPae2cmd отработала безукоризненно, однако компьютер с ядром, полученным таким способом, отказался загружаться категорически. В процессе загрузки запускалось средство диагностики неисправностей, работа которого ничем положительным не заканчивалась.
В конце концов я сдался и обратился к виртуальной машине Windows 7 x86 на Oracle VirtualBox.
До установки обновления KB2859537 в Windows/System32 можно найти следующие интересующие нас ядра:
ntkrnlpa Версия: 6.1.7601.17514 Дата: 21.11.2010
ntkrnlpx Версия: 6.1.7601.17514 Дата: 21.11.2010
Если установку обновления KB2859537 выполнить в сеансе с загрузкой “исправленного” ядра ntkrnlpx, то версии ядер изменятся следующим образом:
ntkrnlpa Версия: 6.1.7601.18205 Дата: 09.07.2013
ntkrnlpx Версия: 6.1.7601.17514 Дата: 21.11.2010
На первый взгляд все правильно, однако в данном случае инсталлятор KB2859537 повел себя крайне неадекватно в отношении вариантов загрузки. Если посмотреть содержимое BCD, запустив от имени администратора BCDEdit.exe без параметров, то окажется, что обе секции загрузки указывают на не обновленное ядро ntkrnlpx.
Если у вас возникла подобная ситуация, то для ее исправления придется отредактировать BCD в редакторе.
Запустим BCDEdit от имени администратора и выполним следующие команды:
Указываем путь до “родного” загрузчика:
bcdedit /set
Удаляем все дополнительные значения, необходимые для загрузки модифицированного ядра:
bcdedit /deletevalue
bcdedit /deletevalue
bcdedit /deletevalue
bcdedit /deletevalue
Находим
bcdedit /delete
exit
Перезагружаем компьютер. Убеждаемся, что все нормально запускается и работает. Теперь можно повторно создать модифицированное ядро с поддержкой до 128 ГБ физической памяти.
Перезагружаем компьютер. Смотрим получившийся набор ядер:
ntkrnlpa Версия: 6.1.7601.18205 Дата: 09.07.2013
ntkrnlpx Версия: 6.1.7601.18205 Дата: 09.07.2013
Вот теперь все в порядке. Можно наслаждаться доступностью всей установленной физической памяти компьютера с Windows 7 x86 и не иметь при этом обнаруженных в старом ядре уязвимостей.
Внимание! Не используйте патч, который называется 4GB-7600_RTM_x86. Эта программа не создает новое PAE ядро системы со снятым ограничением доступной физической памяти на основе актуального на данный момент, а просто записывает в \System32 некое очень старое “готовое” ядро. Во-первых, именно такое ядро может привести к проблемам после установки обновления безопасности KB2859537. Во-вторых, даже если Windows будет работать и программы не перестанут запускаться, то в с системе останутся обнаруженные уязвимости. Это категорически неправильно.
Установка обновления KB2859537 в Windows 8 x86
Windows 8 с ядром ntoskrnx (PatchPae2)
Первая часть тестирования была выполнена в 32-разрядной виртуальной машине Windows 8 в VirtualBox.
Исходный набор ядер такой:
ntoskrnl Версия: 6.2.9200.16604 Дата: 04.05.13
ntoskrnx Версия: 6.2.9200.16604 Дата: 04.05.13
После установки пакета обновлений KB2859537:
ntoskrnl Версия: 6.2.9200.16659 Дата: 11.07.13
ntoskrnx Версия: 6.2.9200.16604 Дата: 04.05.13
В отличие от Windows 7, после установки обновления в BCD все осталось как нужно и править ничего не пришлось.
В этом случае возможны два варианта приведения системы в соответствие желаемому:
Первый вариант. Удаляем из \System32 устаревшее ядро ntoskrnx версии 6.2.9200.16604 и создаем новое. Для этого нужно выполнить первый пункт инструкции, приведенной в этой статье, а именно, запустить в командной строке с повышенными привилегиями (Win + x), PatchPae2.exe со следующими ключами:
C:\PatchPae2.exe -type kernel -o ntoskrnx.exe ntoskrnl.exe — в данном примере PatchPae2.exe скопирована в корень диска C:\.
Второй вариант. Его целесообразно использовать если по какой-либо причине необходимо вернуть загрузку Windows в исходное состояние.
Загружаем компьютер в обычном режиме (со стандартным ядром). В командной строке с правами администратора выполняем следующие команды:
bcdedit /set
bcdedit /default
bcdedit
Находим
Для выполнения всех действий, за исключением переименования описания, можно воспользоваться оснасткой Конфигурация системы («Win + x» –> Выполнить –> msconfig –> Загрузка):
Нужно установить текущую исходную систему загружаемой по умолчанию (этот пункт можно выполнить и непосредственно при старте в окне выбора варианта загрузки).
Далее нужно перенести фокус на альтернативный вариант загрузки и удалить его:
Перезагрузите Windows и убедитесь, что все в порядке.
Далее можно повторить PathPae2cmd в результате чего будет создан новый набор ядер ОС с соответствующими вариантами загрузки:
ntoskrnl Версия: 6.2.9200.16659 Дата: 11.07.13
ntoskrnx Версия: 6.2.9200.16659 Дата: 11.07.13
Виртуальная машина Windows 8 x86 загрузилась c новым “поправленным” ядром без каких бы то ни было проблем и увидела всю выделенную ей память – 4 ГБ.
Мне этого показалось недостаточно, кроме того, я давно обещал протестировать работу 32-разрядной Windows 8 со снятым 4 ГБ ограничением доступной памяти на физическом компьютере. Очень подходящий момент наконец это сделать. Результаты тестирования в следующей статье.
Напоминаю, что для того, чтобы скачать готовый командный файл PathPae2cmd, достаточно просто подписаться на обновления блога по E-Mail. Ссылка на скачивание будет в почтовом подтверждении подписки.
Обновление KB5001330 для Windows 10, версия 21H1, 20H2 и 2004: Новый Microsoft Edge заменил Edge Legacy
Накопительный пакет обновления KB4601382 (Build 19043.928) предназначен для Windows 10 версии 21H1 на базе процессоров x86, x64 (amd64), ARM64 и Windows Server (21H1) для систем на базе процессоров x64 и ARM64. В настоящее время «Обновление функций до Windows 10, версия 21H1» доступно для участников программы Windows Insider на канале обновления Beta и для коммерческих клиентов на канале Release Preview. Для перехода на новую версию также можно установить активационный пакет KB5000736.
Накопительный пакет обновления KB5001330 (OS Build 19042.928) предназначен для Windows 10 версии 20H2 (October 2020 Update) на базе процессоров x86, x64 (amd64), ARM64 и Windows Server (20H2) для систем на базе процессоров x64 и ARM64.
Накопительный пакет обновления KB5001330 (OS Build 19041.928) предназначен для Windows 10 версии 2004 (May 2020 Update) на базе процессоров x86, x64 (amd64), ARM64 и Windows Server (2004) для систем на базе процессоров x64 и ARM64.
Обновления доступны в рамках Вторника патчей.
Установка через Центр обновления Windows
Накопительное обновление 5001330 для ПК устанавливается автоматически через Центр обновления Windows. Для проверки перейдите в меню Параметры > Обновление и безопасность и нажмите Проверить наличие обновлений.
Для завершения установки потребуется перезагрузка компьютера. После обновления номер сборки Windows 10 поменяется на 19043.928 для Windows 10 (версия 21H1), 19042.928 для Windows 10 (версия 20H2) и 19041.928 для Windows 10 (версия 2004).
Скачать обновление
Вы также можете скачать обновление из Каталога Центра обновления Майкрософт и установить его вручную по ссылке ниже:
Улучшения и исправления KB5001330 (Сборки 19043.928, 19042.928 и 19041.928)
Данное обновление включает обновления качества. Новые функции системы не представлены. Список ключевых изменений:
- Удалена классическая версия Microsoft Edge (известная также как Microsoft Edge Legacy или Project Spartan), которая больше не поддерживается и установлен новый Microsoft Edge на Chromium. Дополнительная информация: Новый Microsoft Edge заменит классическую версию Edge в Windows 10 в апрельский «Вторник Патчей»
- Исправлена проблема, из-за которой участник доверенной области MIT не мог получить тикет службы Kerberos от контроллеров домена Active Directory. Проблема происходила на устройствах, на которых установлены обновления Windows, содержащие патчи против CVE-2020-17049 и с настроенным параметром PerfromTicketSignature на значение 1 или выше. Эти обновления были выпущены в период с 10 ноября 2020 года по 8 декабря 2020 года. При получении тикета возникала ошибка «KRB_GENERIC_ERROR», если вызывающие абоненты отправляли в качестве свидетельства Ticket Granting Ticket (TGT) без PAC и без указания флага USER_NO_AUTH_DATA_REQUIRED.
- Исправлена уязвимость безопасности CVE-2020-1036, обнаруженная независимым исследователем. Для минимизации рисков эксплуатации уязвимости все будущие обновления Windows больше не будут содержать компонент RemoteFX. В качестве альтернативы предлагается использовать дискретное назначение устройств (DDA) в Windows Server LTSC (Windows Server 2016 и Windows Server 2019) и в Windows Server SAC (Windows Server, версия 1803 и позднее).
- Исправлена потенциальная уязвимость повышения привилегий CVE-2021-27092, связанная с тем, как веб-авторизация в Azure Active Directory разрешает произвольный просмотр со сторонних конечных точек, используемых для федеративной проверки подлинности.
- Устранена причина возникновения ошибки 0x800f081f у инсайдеров при попытке установить 21H1 Build 19043.906 (KB5000842).
- Обновления безопасности для Windows App Platform and Frameworks, Windows Apps, Windows Input and Composition, Windows Office Media, Windows Fundamentals, Windows Cryptography, платформы Windows AI, ядра Windows, системы виртуализации Windows, Internet Explorer и Windows Media.
- Вторник патчей (апрель 2021): Microsoft исправила 108 уязвимостей, включая 5 угроз нулевого дня
Если вы устанавливали предыдущие обновления, то на этот раз будут применены только новые изменения в составе накопительного пакета.