- Наводим порядок в Windows х86 со снятым 4 ГБ ограничением памяти после обновления KB2859537
- Установка обновления KB2859537 в Windows 7 x86
- Windows 7 с ядром ntkr128g (ReadyFor4GB)
- Windows 7 с ядром ntkrnlpх (PatchPae2)
- Установка обновления KB2859537 в Windows 8 x86
- Windows 8 с ядром ntoskrnx (PatchPae2)
- Вышел срочный патч для Windows 10, устраняющий BSOD при печати
- Читайте также
Наводим порядок в 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. Ссылка на скачивание будет в почтовом подтверждении подписки.
Вышел срочный патч для Windows 10, устраняющий BSOD при печати
Microsoft выпустила срочные внеплановые обновления, которые устранят баг Windows 10, обнаруженный в этом месяце. Речь идёт о падении операционной системы и появлении синего экрана смерти BSOD при попытке распечатать любой документ.
Напомним, что после выхода мартовского набора патчей от Microsoft пользователи Windows столкнулись с ошибкой «APC_INDEX_MISMATCH». В процессе использования принтера ОС просто падала в BSOD и отказывалась продолжать работу.
Из-за неожиданного бага разработчикам пришлось срочно браться за дополнительные патчи, и вот теперь они готовы. Стоит отметить, что эти обновления не будут устанавливаться автоматически, поскольку являются опциональными.
Чтобы инсталлировать доступные апдейты, пользователям надо перейти в настройках в пункт Windows Update и проверить наличие обновлений. После этого можно загрузить патчи вручную и установить их.
Также вы можете воспользоваться отдельными ссылками, которые мы приводим ниже. В этом случае загрузка будет происходить из официального источника Microsoft Catalog:
После установки этих обновлений версия сборки операционной системы Windows 10 2004 изменится на 19041.868, а Windows 10 20H2 — на 19042.868. Напомним, на этой неделе Microsoft также предложила временное решение BSOD-проблемы.
Читайте также
26 мая в Цифровом деловом пространстве (Москва, улица Покровка, дом 47) впервые пройдет «Форум DLP+» – самое масштабное мероприятие в России по внутренним угрозам корпоративной безопасности. Организаторами мероприятия выступят национальный провайдер сервисов и технологий кибербезопасности «Ростелеком-Солар» и Медиа Группа «Авангард». Форум станет первой площадкой страны для обсуждения, обмена идеями и практическим опытом по этой теме.
По задумке организаторов DLP+ будет наполнен нестандартными дискуссиями и выступлениями ярких спикеров – как популярных экспертов рынка информационной безопасности, так и новых, порой неожиданных персон. Экспрессивный тон мероприятию задаст вводная дискуссия «Этика, право и безопасность», управление которой возьмет на себя медиа-звезда рынка информационной безопасности Олег Седов. Приглашенные эксперты, среди которых будут не только специалисты мира ИБ, но и писатели, и представители сферы бизнес-образования, поговорят о понятии этики в современной цифровой действительности.
Что такое этика? Человек, оценивая свои возможные решения, чувствует, какие из них этичны, а какие – не очень, основываясь на морали. Двадцать первый век породил многообразие технических средств контроля и мониторинга людей, в частности системы защиты от утечек и анализа поведения пользователей. Какие вопросы DLP-этики требуют ревизии и пересмотра?
- Как быть с неприкосновенностью частной жизни сотрудников? Тайной переписки?
- Становится ли администратор ИБ всемогущим, и кто контролирует его?
- Как совместить права сотрудников и компании как работодателя?
Деловая программа «Форума DLP+» сфокусируется как на актуальных технологиях, так и на практических методах защиты компании от внутренних угроз, поможет найти конкретные решения под потребности бизнеса. В фойе «Форума DLP+» будут представлены новейшие разработки ведущих вендоров систем защиты от внутренних корпоративных угроз – с возможностью опробовать любую разработку в действии на интерактивных демонстрационных стендах.
Партнерскую поддержку форуму оказывают ведущие компании российской отрасли информационной безопасности InfoWatch, Гарда Технологии, DeviceLock DLP, StaffCop, InfoSecurity, One Identity и другие.