Как я могу узнать, установлен ли КБ или новее для Windows?

13062
IguyKing

У меня есть система Windows, которая мне нужна для аудита. Требования состоят в том, чтобы (например) KB2160329 был установлен в систему. Из многих копаний я знаю, что KB2731847, который мы установили в среде, заменил более раннюю KB.

MSkbfiles.com работает, если вы знаете имя файла, например TCPIP.SYS. Ничего не делает, если вы просто ищете исправления KB.

Как я могу сказать feed в скрипте, который я ищу KB2160329, и он может проверять наличие замененных патчей? Или есть где-то сайт, который мне не хватает?

[Отредактировано 7 мая 2014 г. 8:54 CST]

Я ищу способ сказать, что KB2731847, который находится в системе, действительно решает ту же проблему (плюс больше исправлений), что и KB2160329, которого нет в списке, поскольку он установлен в системе.

5

3 ответа на вопрос

4
Etienne

You can download this spreasheet from Microsoft : http://go.microsoft.com/fwlink/?LinkID=245778

It includes all the published security bulletins/KB since June 1998 : severity, impact, title, affected product and also information on superseded bulletins/KB.

Then you just have to script a little bit to smartly compare the installed KB to this list :)

Have you eventually found an easier way ? I'm interested too !

Отлично, ура :) Fazer87 9 лет назад 0
Я не знаю, есть ли более простой способ. Спасибо за ссылки. Это начало. IguyKing 9 лет назад 0
2
Julian Knight

Я думаю, что вам придется создать свою собственную базу данных замененных исправлений.

Следующий PowerShell сообщит вам, установлено ли у вас определенное исправление:

get-hotfix | where HotfixID -eq 'KB2160329' 

Вам нужно будет пройтись по вручную созданному списку, проверяя наличие замененного исправления. Не должно быть так сложно сделать.

Это говорит мне, что данный QFE установлен. Не то чтобы KB2160329 был заменен KB2731847, поэтому KB2160329 не будет установлен, но применено такое же исправление безопасности. IguyKing 9 лет назад 0
Вот почему я сказал, что вам нужно будет создать список, содержащий исходные КБ со списком заменяющих КБ. Windows не хранит эту информацию в автоматическом формате. Julian Knight 9 лет назад 0
Согласовано. Я ищу, если есть другой способ. IguyKing 9 лет назад 0
Боюсь, что нет, как я уже сказал, данные не хранятся в надежном, машиночитаемом формате AFAIK. Julian Knight 9 лет назад 0
2
Eric G

Ответ Джулиана Найта показывает, как это сделать с помощью PowerShell, для обычной старой CMD вы можете попробовать [wmic qfe list full][2]. Есть несколько вариантов форматирования, и вы можете разобрать это в своем скрипте.

Возможно, вы также захотите взглянуть на некоторые сканеры уязвимостей, такие как Nessus, если они решат вашу основную проблему, зная, уязвимы ли системы для определенных эксплойтов.

Это говорит мне, что данный QFE установлен. Не то чтобы KB2160329 был заменен KB2731847, поэтому KB2160329 не будет установлен, но применено такое же исправление безопасности. IguyKing 9 лет назад 0

Похожие вопросы