Ghost Driver Audit (für Win 11) - verwaiste Treiber entfernen

Nero Atreides

Lt. Commander Pro
Registriert
Jan. 2004
Beiträge
1.393
Ich hatte die letzten 2 Tage ein wirklich ätzendes Problem: ich wollte die Windows-Kernisolierung aktivieren, was aber durch zwei verwaiste Treiber verhindert wurde. Einen von der uralten ASUS AI Suite, und einen KBfilter auch von ASUS. Das Dumme war: wenn man diese Treiber entfernt hat über Driver Store Explorer oder in der Registry, dann waren nach einem Reboot alle USB-Geräte komplett tot, also auch Tastatur und Maus. Also Restore Point wiederherstellen (habe ich gestern bestimmt 5 Mal machen müssen).

Ich habe dann viel über das Windows Treibermodell gelernt und wie man solche Einträge findet und auch sicher löscht. Sie werden nämlich oft weder im Gerätemanager angezeigt (auch mit "ausgeblendete Geräte einblenden"), noch in Tools wie Driver Store Explorer.

Nachdem ich dann fertig war und alles (wieder) funktionierte, habe ich ein PowerShell-Skript erstellt, das findet ihr hier auf GitHub. Vielleicht hilft es ja dem ein oder anderen.

Das Skript operiert sehr hardware-nah und man kann sich theoretisch seine Windows-Installation damit zerschießen, wenn man einen Treiber löscht, der noch gebraucht wird. Ich habe zwar einige Mechanismen eingebaut, die genau das verhindern (und es wird ganz am Anfang automatisch ein Wiederherstellungspunkt erstellt), aber ein Restrisiko bleibt natürlich.

Benutzung auf eigenes Risiko!
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: taucher65, TSKNF und aragorn92
Coole Sache, aber warum setzt du am Ende HypervisorEnforcedCodeIntegrity = 1?
Ich glaube, es wäre besser den vorherigen Wert wiederherzustellen.
Andernfalls droht ein BSOD beim Neustart.
 
@mytosh Guter Punkt, bei mir war der Anwendungsfall, dass ich genau die Core Isolation aktivieren wollte... dann mach ich das mal optional ;)
 
  • Gefällt mir
Reaktionen: mytosh
Das Skript listet auch aktive Treiber / UpperFilters von Backupprogrammen:

1779632073312.png


Werden diese gelöscht, startet das System nicht mehr.
Fehler: INACCESSIBLE_BOOT_DEVICE (0x7B)

Das wird selbst zum Problem, wenn entspr. Backuppgramme (Aomei, Acronis, Macrium, EaseUs, O&O DiskImage) deinstalliert sind und solche Reste noch vorhanden sind.
Wenn übrig gebliebene Treiberdateien gelöscht werden, müssen auch entspr. Einträge in der Registry entfernt werden.

Siehe auch: https://gist.github.com/minanagehsalalma/249a9e717a5c6b5b46fb2e03b3eef3fd
 
@Nero Atreides
Ja, ich weiß. Aber die Leute hier nutzen es vielleicht aus anderen Gründen. Und die wissen das nicht.
 
So, habe es jetzt mal ergänzt.

Die Filtertreiber der bekannten Backup-Anbieter werden nun ebenfalls nicht mehr gelistet und die Aktivierung der Core Isolation ist optional.

# Core OS Filters "kbdclass", "mouclass", "vdrvroot", "volmgr", "fltsrv", "partmgr", "rawwan", "ndis", "umpass", "rdpinput", "cdrom", "disk", "fvevol", "pci", "acpi", "volmgrx", "tdx", "netvsc", "luafv", "iorate", "rdyboost", "volsnap", "ksthunk", "ehstorclass", "scfilter", "wpdupfltr", "wdmcompanionfilter", "pciidex", "intelpep", "spaceport", "sercx2", "bthpan", # Acronis Backup "file_protector", "tib_mounter", "fltsrv", "vidsflt", "tdrpman", "snapman", # AOMEI Backup "ambakdrv", "ammntdrv", "amlnk", "amwrtdrv", # Macrium Reflect "mrcbt", "mrflt", "vssmft", # Veeam "veeamsnap"
 
  • Gefällt mir
Reaktionen: mytosh
Zurück
Oben