Versteckte Microsoft Updates aufspüren (Hidden Updates)

 

Microsoft Updates sind eine wichtige Sache - und so möchte man als Administrator diesbezüglich alle Fäden in der Hand haben. Leider gibt es da ein kleine Lücke, die es Usern mit Administratorrechten ermöglicht angewiesene Patche auszubremsen.

Folgende Bilder zeigen wie das passiert.

Leider ist es für WSUS Admins sehr schwierig, so etwas herauszufinden. Wenn man einen Verdacht hat, kann man sich die detaillierte Updateübersicht eines PCs anzeigen lassen und dann ganz rechts auf „Nicht installiert“. In der Ereignisübersicht kann man dann den Hinweis finden.

Das ist natürlich sehr unbefriedigend. Deshalb habe ich ein kleines .NET  2.0 Programm geschrieben (HiddenUpdatesToXML.vb), dass die „Benutzer hat ein Update ausgeblendet“ Ereignisse aus der WSUS-Datenbank ausließt und in eine XML Datei schreibt.

Die WSUS-Api benötigt bei der Abfrage der Ereignisse leider ein Zeitfenster, und so muss dem Programm mitgegeben werden, wie weit in die Vergangenheit geschaut werden soll.

--8<--
@echo off
start /wait HiddenUpdatesToXML.exe 60
exit
--8<--

Ruft man das Programm ohne einen Integer-Wert auf, werden 90 Tage per Default verwendet.

Die Ergebnisdatei heißt dann HiddenUpdates.xml. Den Aufbau der Datei kann man sich hier ansehen.

Nun kann man nicht beliebig weit zurück schauen, weil die Abfrageergebnisse dann zu umfangreich werden. Deshalb sollte man von Zeit zu Zeit (monatlich) ein kleines VBS Script (unhideHiddenUpdates.vbs) auf allen PCs ausführen lassen, damit die Aktionen rückgängig gemacht werden. Um das evtl. besser anweisen zu können (SMS/SCCM) habe ich es in eine kleine EXE gepackt.  Ca. 30 Sekunden nach der Ausführung erscheint dann die Updateankündigung im Tray. Es kann als UnhideHiddenUpdates.zip heruntergeladen werden.

Sind die aufgelisteten PCs online, kann man auch sofort aktiv werden, indem man den WSUS-Helper benutzt. Startet man das Programm mit Adminrechten der Zielmaschine, kann man die abgelehnten Updates per Knopfdruck wieder aktivieren.

Das .NET Programm steht als HiddenUpdatesToXML.zip zur Verfügung. Man entpackt es am besten auf dem WSUS-Server im Verzeichnis "C:\Inetpub\wwwroot" und ruft es über einen Scheduled-Task einmal täglich auf. Entsprechende Zugriffsrechte vorrausgesetzt, kann auf die erzeugte HiddenUpdates.xml dann aus dem gesamten Netzwerk zugegriffen werden.

AnhangGröße
UnhideHiddenUpdates.zip273.76 KB
HiddenUpdatesToXML.zip6.11 KB