![]
Im Jahr 2024 kündigte Microsoft Pläne an, die Unterstützung für VBScript, eine früher beliebte Windows-Skriptsprache, einzustellen. VBScript-Skripte bleiben für die Automatisierung und Systemverwaltung beliebt, da sie einfach und benutzerfreundlich sind und über eine transparente Codestruktur auf Basis von Visual Basic verfügen. Zu den weiteren Vorteilen gehören die integrierte Windows-Laufzeit und der Interpreter des Windows Script Host sowie der Zugriff auf eine umfangreiche Bibliothek vorgefertigter Skripts vom Microsoft-Support und von Drittanbietern.
Aufgrund der veralteten Architektur, zahlreicher Schwachstellen und der Möglichkeit einer böswilligen Nutzung empfiehlt Microsoft die Verwendung von VBScript jedoch nicht mehr. Mit der Veröffentlichung von
Windows 11 24H2
und
Windows Server 2025
VBScript war veraltet und wurde zu einer optionalen Systemfunktion (Feature on Demand, FoD). In Windows 11 25H2 ist VBScript derzeit standardmäßig aktiviert. Laut der MSFT-Roadmap wird VBScript jedoch in zukünftigen Windows-Versionen im Jahr 2027 standardmäßig deaktiviert. Danach wird diese Funktion vollständig aus dem Windows-Image entfernt.
![]
Windows-Benutzer können VBScript über die Einstellungen-App aktivieren oder deaktivieren. Gehen Sie zu Einstellungen -> System -> Optionale Funktionen -> Optionale Funktionen anzeigen. Die optionale VBSCRIPT-Funktion ist in Windows standardmäßig aktiviert. Bei Bedarf können Sie es hier deaktivieren.
![]
Sie können auch mithilfe von PowerShell überprüfen, ob die VBScript-Skript-Engine unter Windows installiert ist.
Get-WindowsCapability-Online-Name vbs*
![]
Um die VBScript-Funktion zu entfernen, führen Sie den folgenden Befehl aus:
Remove-WindowsCapability-Online-Name „VBScript~~~~0.0.1.0“
Oder verwenden Sie DISM:
DISM/Online/remove-Capability/CapabilityName:VBScript
Um die VBscript-Funktion zu installieren, führen Sie Folgendes aus:
DISM/Online/Add-Capability/CapabilityName:VBScript
Windows-Benutzer können VBScript über die Einstellungen-App aktivieren oder deaktivieren. Gehen Sie zu->->->. Die optionale Funktion ist in Windows standardmäßig aktiviert. Bei Bedarf können Sie es hier deaktivieren. Sie können auch mithilfe von PowerShell überprüfen, ob die VBScript-Skript-Engine unter Windows installiert ist. Um die VBScript-Funktion zu entfernen, führen Sie den folgenden Befehl aus: Oder verwenden Sie DISM: Um die VBScript-Funktion zu installieren, führen Sie Folgendes aus:
Oder:
Add-WindowsCapability-Online-Name „VBScript~~~~0.0.1.0“
Wenn der VBScript-Interpreter fehlt, verlieren Dateien mit der Erweiterung.vbs ihre zugehörigen Ausführungszuordnungen, was zu einem Fehler führt, wenn versucht wird, ein VBS-Skript über die Befehlszeile auszuführen.
Program 'slmgr.vbs' failed to run: No application is associated with the specified file for this operation.

Wenn Sie versuchen, ein VBScript über WScript.exe (grafischer Modus) oder Cscript.exe (Konsolenmodus) auszuführen, wird eine Fehlermeldung angezeigt:
wscript.exe c:\windows\system32\slmgr.vbs
Windows Script HostThere is no script engine for file extension ".vbs"

VBS-Skripte werden in Unternehmensumgebungen immer noch häufig verwendet, um verschiedene Aufgaben zu automatisieren (insbesondere in Domänen-GPOs, automatisierten Bereitstellungsskripten, SCCM-Skripten und Taskplaner-Jobs). Microsoft empfiehlt, den gesamten verwendeten Code auf modernere Skriptsprachen wie PowerShell, JavaScript und Python zu migrieren, bevor VBScript in Windows vollständig deaktiviert wird.
Bevor VBScript in Windows global deaktiviert wird, sollten Administratoren ihre Umgebungen proaktiv prüfen, um alle Aufgaben oder Prozesse zu identifizieren, die noch auf VBS-Skripts basieren. Verwenden Sie das SYSMON-Tool, um Ereignisse im Zusammenhang mit der Verwendung von VBS-Code auf Unternehmenscomputern zu überwachen.
Laden Sie die Datei
<Sysmon schemaversion="4.50"><EventFiltering><!-- Tracking the loading of vbscript.dll --><ImageLoad onmatch="include"><ImageLoaded condition="contains">vbscript.dll</ImageLoaded></ImageLoad></EventFiltering></Sysmon>
herunter
Bevor VBScript in Windows global deaktiviert wird, sollten Administratoren ihre Umgebungen proaktiv prüfen, um alle Aufgaben oder Prozesse zu identifizieren, die noch auf VBS-Skripts basieren. Verwenden Sie das Tool, um Ereignisse im Zusammenhang mit der Verwendung von VBS-Code auf Unternehmenscomputern zu überwachen. Laden Sie die Datei „sysmon64.exe“ auf einen Referenzcomputer herunter. Erstellen Sie als Nächstes eine XML-Datei, um die Nutzung der vbscript.dll-Bibliothek zu protokollieren:
Speichern Sie diese Konfiguration in einer XML-Datei und installieren Sie dann den Sysmon-Dienst und den Gerätetreiber, der die VBS-Nutzungsereignisse überwacht.
„Sysmon64.exe-i sysmon_settings.xml“.

Oder führen Sie den Befehl „Sysmon64.exe-c sysmon_settings.xml“ aus, um die aktuelle Sysmon-Konfiguration zu aktualisieren.
Von nun an wird bei jeder Verwendung der VBScript-Skript-Engine ein Ereignis mit der Ereignis-ID 7 (Bild geladen: Regel: ImageLoad) zur Ereignisanzeige hinzugefügt. Durch die Analyse von Ereignissen in der Ereignisanzeige -> Anwendungs- und Dienstprotokolle -> Microsoft -> Windows -> Sysmon -> Operational können Sie die VBScript-Nutzung auf einem Computer identifizieren.
Sysmon-Protokolle können verwendet werden, um die spezifischen ausgeführten VBScript-Dateien, den Benutzer, der sie initiiert hat, und den Zeitpunkt ihrer Ausführung zu identifizieren.

Das folgende PowerShell-Skript fragt die Ereignisanzeige nach Ereignissen ab, die Informationen zu Dateien mit der Erweiterung *.VBS protokollieren: Ereignis-ID 1: Process Create (Regel: ProcessCreate )
` Get-WinEvent-FilterHashtable @{LogName=‘Microsoft-Windows-Sysmon/Operational’; Id=1} | ForEach-Object {
$xml=xml$_.ToXml()
$processPath=$xml.Event.EventData.Data | Where-Object {$_.Name-eq ‘Image’} | Select-Object-ExpandProperty ‘#text’$commandLine=$xml.Event.EventData.Data | Where-Object {$_.Name-eq ‘CommandLine’} | Select-Object-ExpandProperty ‘#text’if ($commandLine-like ‘.vbs') {
PSCustomObject@{
TimeCreated=$_.TimeCreated
ProcessPath=$processPath
CommandLine=$commandLine
}
}
} `
In meinem Fall habe ich mehrere VBScript-Ausführungsereignisse auf dem Computer gefunden.

Mit Sysmon können Sie daher VBScript-Nutzungsereignisse auf Unternehmenscomputern überwachen (es ist nicht erforderlich, die VBS-Überwachung für alle Systeme gleichzeitig zu aktivieren. Stattdessen sollte sie auf Testgruppen typischer Geräte beschränkt sein.). Nachdem Sie die VBS-Skripte in Ihrer Umgebung identifiziert haben, bewerten Sie deren funktionale Relevanz und beurteilen Sie, ob ihre Logik auf PowerShell portiert werden kann.
-
.vbs(VBScript) -
.vba(Visual Basic für Anwendungen) -
.wsf(Windows-Skriptdatei) -
.wsh(WSH-Einstellungsdatei)
Im Folgenden sind typische Dateierweiterungen aufgeführt, die VBScript-Code enthalten:
Eine beträchtliche Anzahl VBScript-basierter Skripte wird immer noch häufig in Windows-Umgebungen verwendet. Zum Beispiel. Dazu gehören die
Eine beträchtliche Anzahl VBScript-basierter Skripte wird immer noch häufig in Windows-Umgebungen verwendet. Zum Beispiel. Dazu gehören der Windows-Aktivierungsverwaltungsbefehl (Slmgr.vbs), das Microsoft Office-Aktivierungsskript (Ospp.vbs), die Office-Entfernungsskripts (Offscrub), das Systeminformationsanzeigetool (Bginfo) usw. Da Microsoft nicht für alle vorhandenen Legacy-Tools Ersatz bereitgestellt hat, ist es unwahrscheinlich, dass VBScript in naher Zukunft vollständig veraltet sein wird. Unternehmensadministratoren sollten sich jedoch bereits im Vorfeld auf diesen Schritt vorbereiten.
*️⃣ Quelllink:
, sysmon64.exe , PowerShell-Skript fragt die Ereignisanzeige ab, , , , , Windows-Aktivierungsverwaltungsbefehl, Ospp.vbs, Office-Entfernungsskripte, Bginfo,