KB4516065 и KB4516033: исправляем ошибки при установке
В ходе сентябрьского «вторника обновлений» компания Microsoft выпустила патчи примерно для 80 уязвимостей, из которых 17 отнесены к критическим. К сожалению, не все смогли своевременно поставить свежие обновления. Разберём, что нужно делать, если у вас возникают проблемы с установкой KB4516065 и/или KB4516033 (ежемесячные пакеты исправлений в Windows 7 и Windows Server 2008 R2).
На самом деле, проблема не в конкретных обновлениях для этих операционных систем, а в том, что корпорация Microsoft изменила способ их доставки. Если ранее компания подписывала обновления с помощью алгоритмов SHA-1 и SHA-2, то теперь она делает это только при помощи алгоритма SHA-2. Проблемы проявились ещё в прошлом месяце.
На страницах, посвящённых KB4516065 и KB4516033 Microsoft настоятельно рекомендует предварительно установить обновление служебного стека (KB4516655) и обновление системы безопасности ОС (KB4474419).

Помимо этого, если исходить из опыта прошлого месяца, крайне не повредит установка KB3133977.
Сентябрьский «вторник обновлений» принёс с собой устранение таких уязвимостей, как CVE-2019-1214 и CVE-2019-1215. Обе из них затрагивают проблему повышения привилегий. Первая уязвимость касается драйвера Windows Common Log File System (CLFS) и позволяет аутентифицированному злоумышленнику с пользовательскими правами повысить свои привилегии до администратора. Вторая уязвимость связана со службой ws2ifsl.sys (Winsock).
Исправляем ошибки установки обновлений Windows 7

Windows 7 по-прежнему остается популярной операционной системой в корпоративной среде, несмотря на то, что уже вышли две новые версии клиентских ОС. Расширенная поддержка «семёрки» закончится лишь 14 января 2020 г., а это значит, что ближайшие 4 года для нее будут выходить обновления, исправляющие обнаруженные уязвимости.
Существует правило – если есть обновления, то есть и проблемы с их установкой. Давайте разберем, какие основные проблемы возникают при обновлении Windows 7 через Windows Server Update Services (WSUS) и как их исправить с наименьшими затратами.
Ошибка #1. Failed to find updates with error code 80244010
Эту ошибку вы практически гарантированно будете наблюдать на любой системе, впервые обратившейся к серверу WSUS. В WindowsUpdate.log также встретится предупреждение:
WARNING: Exceeded max server round trips
Причина проблемы в том, что список обновлений стал слишком большим, и клиент не может принять его за один заход. Подробности — blogs.technet.microsoft.com/sus/2008/09/18/wsus-clients-fail-with-warning-syncserverupdatesinternal-failed-0x80244010
Какое решение предлагает Microsoft? Если после ошибки запустить повторный поиск обновлений, то процесс загрузки метаданных продолжится с момента возникновения ошибки. Терпение господа, терпение. Три, пять попыток wuauclt /detectnow – и все образуется. Не забудьте при повторном поиске дождаться окончания предыдущего цикла поиска, иначе магия не сработает!
Ошибка #2. Не устанавливаются обновления Windows с ошибкой 0x80070308
Встречается эпизодически, и в одном случае из 100 у нее есть единственное и очень специфическое решение — удалить ключ
HKLM\Components\PendingRequired=1
Перезагрузиться. Здесь важно не переусердствовать, не следует удалять никакие другие ключи в этом разделе, даже если они вам очень не нравятся, потому что после этого обновления прекратят ставиться навсегда.
Ошибка #3. Все другие ошибки
Практически 100% других ошибок может решить System Update Readiness Tool (SURT) из статьи support.microsoft.com/en-us/kb/947821
Скачиваете пакет для вашей системы, устанавливаете, читаете лог %windir%\Logs\CBS\CheckSUR.log и если он заканчивается примерно так:
Summary:
Seconds executed: 1164
Found 16 errors
Fixed 4 errors
то вы наш клиент.
Проблема заключается в том, что во время установки обновлений в системе могут появиться битые файлы. Что является причиной — неисправная сеть, диск, оперативная память, сам Windows Update – выяснить не получится, а исправить ошибки для установки последующих обновлений придется.
Как правило, повреждаются *.cat, *.mum, *.manifest файлы. У кого-то повреждаются *.dll, но я на практике не сталкивался. И вроде бы средство SURT должно само исправить ошибки, поскольку внутри него есть огромный каталог эталонных файлов. Только в последний раз SURT обновлялся в октябре 2014 года, а исправлений на операционную систему с тех пор вышло бесчисленное множество, и многих файлов в каталоге не хватает.

Ниже я опишу последовательность действий, необходимых для исправления ошибок установки обновлений на Windows 7 x64 с использованием SURT. Для редакции x86 просто потребуется другой пакет SURT из KB947821.
Последовательность действий будет следующая.
1. Запустить первый проход Windows6.1-KB947821-v34-x64.msu
Пользователя от работы отвлекать не потребуется, все сделаем удаленно. Создаем следующий командный файл и запускаем его:
set machine=BUHWKS02 xcopy Windows6.1-KB947821-v34-x64.msu \\%machine%\admin$\temp psexec -s \\%machine% wusa "c:\windows\temp\Windows6.1-KB947821-v34-x64.msu" /quiet /norestart pause
где BUHWKS02 – целевая машина.
Когда скрипт отработает и встанет на паузу, проверяем %windir%\Logs\CBS\CheckSUR.log
Если ошибок не найдено – дело не в битых обновлениях.
Если он заканчивается
Summary:
Seconds executed: 1164
Found 16 errors
Fixed 4 errors
CSI Manifest All Zeros Total count: 6
CSI Catalog Corrupt Total count: 3
Fixed: CSI Catalog Corrupt. Total count: 3
CBS MUM Corrupt Total count: 3
CBS Catalog Corrupt Total count: 3
CSI Catalog Thumbprint Invalid Total count: 1
Fixed: CSI Catalog Thumbprint Invalid. Total count: 1
Unavailable repair files:
winsxs\manifests\wow64_microsoft-windows-gdi32_31bf3856ad364e35_6.1.7601.19091_none_c19fa2719495aca9.manifest
winsxs\manifests\amd64_microsoft-windows-capi2-weakcrypto_31bf3856ad364e35_6.1.7601.23290_none_5e936c9c5ce2e8e6.manifest
winsxs\manifests\wow64_microsoft-windows-gdi32_31bf3856ad364e35_6.1.7601.23290_none_c22840d8adb43043.manifest
winsxs\manifests\amd64_microsoft-windows-gdi32_31bf3856ad364e35_6.1.7601.19091_none_b74af81f6034eaae.manifest
winsxs\manifests\amd64_microsoft-windows-capi2-weakcrypto_31bf3856ad364e35_6.1.7601.19091_none_5e0ace3543c4654c.manifest
winsxs\manifests\amd64_microsoft-windows-gdi32_31bf3856ad364e35_6.1.7601.23290_none_b7d3968679536e48.manifest
servicing\packages\Package_2_for_KB3123479~31bf3856ad364e35~amd64~~6.1.1.0.mum
servicing\packages\Package_2_for_KB3123479~31bf3856ad364e35~amd64~~6.1.1.0.mum
servicing\packages\Package_for_KB3123479_SP1~31bf3856ad364e35~amd64~~6.1.1.0.mum
то будем исправлять.
2. Копируем эталонные файлы на целевую машину
Microsoft предлагает нам длинную, путанную процедуру с извлечением хороших файлов из обновлений и размещением их в определенные каталоги средства SURT. При этом пути в статьях неверные. Где-то и вовсе рекомендуют подкладывать оригинальные msu файлы.
Самый простой и правильный вариант следующий — скопировать эталонные файлы с рабочей системы:
*.mum and *.cat из C:\Windows\servicing\Packages складываются в %windir%\Temp\CheckSUR\servicing\packages
*.manifest из C:\Windows\winsxs\Manifests складываются в %windir%\Temp\CheckSUR\winsxs\manifests\
Проблема в том, что битых файлов обычно десятки, и их очень сложно выбрать и скопировать. Тогда на помощь приходит следующий скрипт PowerShell (эталонной считается машина, с которой вы запускаете скрипт)
cls $flag = $false $destPC = "\\BUHWKS02" $log=get-content $($destPC + "\admin$\Logs\CBS\CheckSUR.log") $MUMCATSource = "C:\Windows\servicing\Packages\" $MUMCATDest = $destpc + "\admin$\Temp\CheckSUR\servicing\Packages\" $MANIFESTSource = "C:\Windows\winsxs\Manifests\" $MANIFESTDest = $destpc + "\admin$\Temp\CheckSUR\winsxs\Manifests\" If ((Test-Path -Path $MUMCATDest -PathType Container) -eq $false) If ((Test-Path -Path $MANIFESTDest -PathType Container) -eq $false) foreach ($line in $log) < if ($flag -eq $True)< if ($line.trim().Length -ne 0) < $fileArray=$($line.Split("\")) $file = $FileArray[$FileArray.Length-1] $extArray = $file.split(".") $ext = $extArray[$extArray.length-1] if ($ext -eq "manifest") < Write-Warning $("Copying " + $($MANIFESTSource+$file)+" to " + $MANIFESTDest) Copy-Item $($MANIFESTSource+$file) $($MANIFESTDest+$file) >if (($ext -eq "mum") -or ($ext -eq "cat") ) < Write-Warning $("Copying " + $($MUMCATSource+$file)+" to " + $MUMCATDest) Copy-Item $($MUMCATSource+$file) $($MUMCATDest+$file) >> > if ($line -eq "Unavailable repair files:") >
Как видите, скрипт прост и может быть легко заточен напильником под вашу инфраструктуру.
3. Запускаем второй проход Windows6.1-KB947821-v34-x64.msu
После копирования файлов мы повторно запускаем SURT, используя командный файл из первого шага. При повторном запуске средство сможет подхватить скопированные нами эталонные файлы из %windir%\Temp\CheckSUR и заменить ими испорченные.
Если мы сделали все правильно, то %windir%\Logs\CBS\CheckSUR.log примет следующий вид:
=================================
Checking System Update Readiness.
Binary Version 6.1.7601.22471
Package Version 26.0
2016-03-03 09:15
Checking Windows Servicing Packages
Checking Package Manifests and Catalogs
Checking Package Watchlist
Checking Component Watchlist
Checking Packages
Checking Component Store
Summary:
Seconds executed: 1435
No errors detected
Теперь можно продолжить установку обновлений на целевую машину, например, следующими командными файлами:
set machine= BUHWKS02
psexec -i -s \\%machine% wuauclt /detectnow
pause
set machine= BUHWKS02
psexec -i -s \\%machine% wuauclt /updatenow
pause
Ошибка #4. Если SURT отработал нормально, а обновления все равно не ставятся
Попробуйте прибегнуть к старому приему – сбросить службу Windows Update в исходное состояние. Для этого необходимо удалить каталог %windir%\SoftwareDistribution.
Создаем файл WU-cleanupCMD.cmd:
net stop wuauserv
rmdir /s /q %windir%\SoftwareDistribution
net start wuauserv
wuauclt /detectnow
Запускаем:
set machine= BUHWKS02
psexec -c -s \\%machine% WU-cleanupCMD.cmd
pause
После этого возникнет Ошибка #1, но как бороться с ней мы уже знаем.
Ошибка #5
Клиент исчезает из консоли WSUS. Любопытная ошибка, связанная с неправильным клонированием машин и задвоением (затроением и т.д.) идентификаторов клиентов. Решается так:
net stop wuauserv REG DELETE "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate" /v SusClientId /f REG DELETE "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate" /v SusClientIdValidation /f net start wuauserv wuauclt /resetauthorization /detectnow /reportnow
Ошибка #6
GetCookie failure, error = 0x8024400D, soap client error = 7, soap error code = 300, HTTP status code = 200
SyncUpdates failure, error = 0x80072EE2, soap client error = 5, soap error code = 0, HTTP status code = 200
Windows Update Client failed to detect with error 0x80072ee2
Ошибка связана с нехваткой ресурсов в AppPool WSUS. Решение — снять лимит на потребляемую память. Как это сделать — статья.
Коротко: Открываем IIS, Application Pools, WsusPool, Advanced Settings.
Параметр Private Memory Limit устанавливаем в 0.
Продолжение темы настройки WSUS — в моей следующей статье: https://habrahabr.ru/post/329440/
PS:
Многие ошибки решены в новом клиенте WSUS:
1. KB3125574 «Windows 7 post SP1 Convenience Rollup Update». Внимательно ознакомьтесь с разделом Known issues!
Предварительно необходимо установить KB3020369 «April 2015 servicing stack update for Windows 7 and Windows Server 2008 R2».
Kb4516065 для Windows 7: проблемы с установкой и их решение
Многие пользователи операционной системы Windows 7 сталкиваются с проблемой, когда обновление Kb4516065 не устанавливается на их компьютеры. Это обновление, выпущенное Microsoft, предназначено для устранения некоторых уязвимостей в системе и улучшения ее безопасности.
Однако, многие пользователи сталкиваются с ошибкой при установке этого обновления. Это может быть вызвано различными причинами, такими как неправильные настройки системы, конфликты с другими обновлениями или наличие вредоносного ПО на компьютере.
Чтобы решить проблему с установкой Kb4516065 на Windows 7, рекомендуется сначала проверить наличие других обновлений и установить их, если таковые имеются. Также стоит попробовать выполнить проверку системы на наличие вредоносного ПО и удалить его, если обнаружено. Если проблема не исчезает, можно попробовать отключить антивирусное программное обеспечение временно, чтобы установить обновление, а затем включить его снова.
Решение проблемы с установкой Kb4516065 на Windows 7
Если вы сталкиваетесь с проблемой, когда обновление Kb4516065 не устанавливается на вашу операционную систему Windows 7, вот несколько рекомендаций, которые могут помочь вам решить эту проблему:
- Перезагрузите компьютер и попробуйте установить обновление снова. Иногда простая перезагрузка может помочь исправить мелкие ошибки, которые могут влиять на процесс установки.
- Убедитесь, что у вас достаточно свободного места на жестком диске. Некоторые обновления требуют определенного объема свободного места для успешной установки. Проверьте, что у вас есть достаточно свободного места и освободите его при необходимости.
- Проверьте наличие открытых программ и приложений. Некоторые программы могут мешать установке обновлений. Закройте все открытые программы перед попыткой установки обновления.
- Используйте инструмент «Windows Update Troubleshooter». Этот инструмент может автоматически обнаруживать и исправлять проблемы, которые могут возникнуть в процессе установки обновлений.
- Проверьте настройки вашего антивирусного программного обеспечения. Временно отключите антивирусное программное обеспечение перед установкой обновления. Некоторые антивирусные программы могут блокировать установку обновлений, поскольку они считают их потенциально вредоносными.
- Если все остальные методы не помогают, попробуйте установить обновление в безопасном режиме. Запустите компьютер в безопасном режиме и попробуйте установить обновление. В безопасном режиме запускаются только основные службы и процессы, что может помочь избежать конфликтов, которые могут возникнуть с другими программами.
Если ни одно из вышеперечисленных решений не помогло, обратитесь в службу поддержки Microsoft для получения дополнительной помощи и рекомендаций по установке обновления Kb4516065 на вашу операционную систему Windows 7.
Блог IT для Windows
Windows 7 — ошибка 80092004 при установке обновления KB4516065
19.12.2020 18:42 Администратор

(20 голоса, среднее 3.20 из 5)
Многие пользователи с компьютерами, которые работают под управлением Windows 7, замечают, что в центре обновления есть важное обновление KB4516065.
![]()
Но при установке данного обновления возникает ошибка 80092004.
![]()
Что это за ошибка. Ответ есть на сайте Майкрософт.
Все устройства без поддержки SHA-2 не смогут загрузить обновления Windows, начиная с июля 2019 и позднее.
Для решения данного вопроса необходимо скачать и установить обновление KB4490628.
![]()
![]()
После установки обновления потребуется перезагрузка ПК.
![]()
Далее, снова устанавливаем KB4516065. И теперь обновление установлено удачно.