web-dev-qa-db-ja.com

KB以降がWindowsにインストールされているかどうかを確認するにはどうすればよいですか?

監査する必要のあるWindowsシステムがあります。要件は、(たとえば)KB2160329がシステムにインストールされていることです。多くの掘り下げから、環境にインストールしたKB2731847が以前のKBに取って代わったことがわかります。

MSkbfiles.comは、TCPIP.SYSなどのファイル名がわかっている場合に機能します。 KB修正プログラムを探しているだけの場合は、何もしません。

KB2160329を探しているスクリプトでフィードを言うと、置き換えられたパッチをチェックできますか?それとも私が行方不明になっているウェブサイトがどこかにありますか?

[2014年5月7日午前8時54分CST編集]

システムにインストールされているKB2731847が、システムにインストールされているリストにないKB2160329と同じ問題(およびその他の修正)を修正するという言い方を探しています。

5
IguyKing

このspreasheetはMicrosoftからダウンロードできます: http://go.Microsoft.com/fwlink/?LinkID=245778

これには、1998年6月以降に公開されたすべてのセキュリティ情報/ KBが含まれます。重大度、影響、タイトル、影響を受ける製品、および置き換えられたセキュリティ情報/ KBに関する情報です。

次に、インストールされているKBをこのリストとスマートに比較するために、少しスクリプトを作成する必要があります:)

最終的にもっと簡単な方法を見つけましたか?私も興味があります!

4
Etienne

置き換えられた修正プログラムの独自のデータベースを作成する必要があると思います。

次のPowerShellは、特定の修正プログラムがインストールされているかどうかを示します。

get-hotfix | where HotfixID -eq 'KB2160329'

手動で作成したリストをウォークスルーして、置き換えられた修正を確認する必要があります。そんなに難しいことではないはずです。

2
Julian Knight

Julian Knight の答えは、PowerShellでこれを行う方法を示しています。通常の古いCMDの場合は、[wmic qfe list full][2]を試すことができます。いくつかのフォーマットオプションがあり、スクリプトでこれを解析できます。

システムが特定のエクスプロイトに対して脆弱であるかどうかを知るという根本的な問題に対処できる場合は、 Nessus などの脆弱性スキャナーを調べることもできます。

2
Eric G