Drei Konfigurationsänderungen: Versiegeln, Isolieren und Herabstufen

Durch diese Konfigurationsänderungen und die strikte Einhaltung der Zwei-Benutzerregel ist unerwünschte Software (Malware) nicht mehr ausführbar.

Achtung! Voraussetzung für die korrekte Funktionsweise des Schutzes ist die strikte Einhaltung der Zwei-Benutzerregel!

Die Zwei-Benutzerregel bedeutet, dass alltägliche Arbeiten (Mails lesen, Webseiten aufrufen, Büroarbeit usw.) mit einem nicht-administrativen Konto erledigt werden und administrative Konten nur für administrative Aufgaben benutzt werden, s. auch Dokument "Fünf Grundregeln für den sicheren Betrieb von Windows-Systemen".

  1. Die erste Konfigurationänderung (ab Windows XP) ist die Aktivierung von Software Whitelisting (Versiegeln) mittels Windows Software Restrictions.
     
    Das Grundprinzip ist einfach:
     
    Der Start von Programmen ist nur erlaubt, wenn diese auf einer "Positivliste" (Whitelist) stehen.
     

    Folgende Verzeichnisse werden standardmäßig auf die Positivliste gesetzt:
     
     %Systemroot% (z.B. C:\Windows)
     %ProgramFiles% (z.B. C:\Program Files)
     %ProgramFiles(x86)% (z.B. C:\Program Files (x86))
    C:\ProgramData\Microsoft\Windows Defender
     

    Aus diesen Verzeichnissen ist das Starten beliebiger Software erlaubt. Da diese Pfade nur von administrativen Benutzern beschrieben werden können, ist der Start von unerwünschter Software durch ein Standardbenutzerkonto nicht mehr möglich.
     
    Darüber hinaus ist das Starten von Programmen aus folgenden Verzeichnissen im Windows-Verzeichnis deaktiviert, da diese Verzeichnisse  standardmäßig von Benutzern beschreibbar sind:

    %WINDIR%\Debug
    %WINDIR%\PCHEALTH
    %WINDIR%\Registration
    %WINDIR%\System32\BioAPIFFDB
    %WINDIR%\System32\catroot2
    %WINDIR%\System32\Com\dmp
    %WINDIR%\System32\FxsTmp
    %WINDIR%\System32\Microsoft
    %WINDIR%\System32\spool\drivers\color
    %WINDIR%\System32\Spool\Printers
    %WINDIR%\System32\Spool\Servers
    %WINDIR%\System32\Tasks
    %WINDIR%\SysWOW64\Com\dmp
    %WINDIR%\SysWOW64\FxsTmp
    %WINDIR%\SysWOW64\Tasks
    %WINDIR%\Tasks
    %WINDIR%\TEMP
    %WINDIR%\Tracing
     
    Diese Verzeichnisliste ist anpassbar, s. dazu den Abschnitt "Anpassen des QuickWinSec-Skriptes" weiter unten.

    Die Ausführung folgender Programmdateien wird über Block-Regeln verhindert:
     
    addinprocess.exe
    addinprocess32.exe
    addinutil.exe
    bash.exe
    bginfo.exe
    cdb.exe
    csi.exe
    dbghost.exe
    dbgsvc.exe
    dnx.exe
    fsi.exe
    fsiAnyCpu.exe
    kd.exe
    ntkd.exe
    lxssmanager.dll
    msbuild.exe
    mshta.exe
    ntsd.exe
    rcsi.exe
    windbg.exe
    wmic.exe

    Diese Liste ist einer Microsoft-Empfehlung entnommen, s. dazu
    https://docs.microsoft.com/en-us/windows/security/threat-protection/windows-defender-application-control/microsoft-recommended-block-rules

    Sie können die Liste der blockierten Programmdateien anpassen, indem Sie die Skriptvariable BlockedFiles anpassen.

    Weitere Information zu Software Whitelisting, s. "Software Whitelisting - der bessere Virenschutz".
       
  2. Die zweite Konfigurationsänderung (ab Windows Vista) ist eine Rekonfiguration der Windows Firewall.
     
    Diese Anpassung ist dringend empfohlen, da alle standardmäßig geöffneten Ports weltweit ansprechbar sind. Daher wird die Reichweite aller geöffneten Ports auf das lokale Subnetz beschränkt (Isolieren).

    Informationen zur Portkonfiguration der Windows Firewall einer Standard-Windows-Installation finden Sie unter Offene Ports einer Standard-Windows-Installation.
     
  3. Die dritte Konfigurationsänderung (ab Windows Vista) betrifft UAC, die Benutzerkontensteuerung von Windows.
     
    Da UAC ab Windows 7 in der Standardkonfiguration eine von Microsoft gepflegte Whitelist nutzt, um UAC-Zustimmungsabfragen zu reduzieren und dies eine automatische Nutzung von administrativen Rechten administrativer Konten erlaubt, wird UAC rekonfiguriert, damit jeder Nutzung administrativer Rechte zugestimmt werden muss (Herabstufen).

    Achtung! Konfigurationsänderung 2 und 3 werden unter Windows XP NICHT ausgeführt, da Windows XP keine entsprechenden Automatisierungsfunktionalitäten/Funktionalitäten besitzt!

    Außerdem wird das Explorer-Kontextmenü um folgende Befehle erweitert:

    Für Dateien

    "Editor..." - Startet Notepad.exe für die ausgewählte Datei mit Standardbenutzerrechten.

    "Elevated Editor..." - Startet Notepad.exe für die ausgewählte Datei mit administrativen Benutzerrechten (elevated.)

    Für Verzeichnisse

    "Command Line..." - Startet Cmd.exe für das ausgewählte Verzeichnis mit Standardbenutzerrechten.

    "Elevated Command Line..." - Startet Cmd.exe für das ausgewählte Verzeichnis mit administrativen Benutzerrechten (elevated).

    Für Dateien und Verzeichnisse

    "Copy to Folder..." und "Move to Folder..." - Ermöglicht das Kopieren oder das Bewegen von Dateien oder Verzeichnissen.
     
    Weitere Informationen zu UAC finden Sie im Dokument "Wozu dient UAC - die Benutzerkontensteuerung von Windows?"

    Optional wird ab Windows Vista das Microsoft Enhanced Mitigation Experience Toolkit (EMET) installiert und für die Liste von Window-Anwendungen der mitgelieferten EMET-Schutzprofiledatei All.XML aktiviert, um übliche Angriffsmethoden auf zugelassene Anwendungen zu unterbinden, s. dazu
    The Enhanced Mitigation Experience Toolkit  
    Enhanced Mitigation Experience Toolkit (EMET)
    http://blogs.technet.com/b/germany/archive/2012/06/06/emet-3-0-windows-schutztechniken-f-252-r-jegliche-anwendung-auch-unter-windows-8.aspx

    Optional wird die kostenlose Anti-Virensoftware Microsoft Security Essentialsinstalliert (nur Windows Vista/7/Server 2008/2008 R2), wenn Sie der Installation während der Skript-Ausführung zustimmen.

Mindestvoraussetzung für ein sicheres Arbeiten

Die angegebenen Anpassungen der Windows-Konfiguration sind die Mindestvoraussetzung für ein sicheres Arbeiten als Nicht-Administrator unter einem aktuellen Windows-System und daher dringend empfohlen.

Wovor schützt die Konfiguration?

Angriff Standard-benutzerkonto Administratives Benutzerkonto
Systemweite Veränderung des Systems durch unerlaubte Programme (Installation von Malware, Löschen von Daten usw.) nicht möglich möglich, nach expliziter Zustimmung per UAC
Löschen, Veränderung oder Diebstahl von Nutzerdaten durch unerlaubte Programme nicht möglich möglich, nach expliziter Zustimmung per UAC

Wovor schützt die Konfiguration nicht?

  • Vor Angriffen auf oder durch zugelassene Software wie z.B. Browsern, Mailprogrammen, Viewern, Textverarbeitungen usw.
  • Vor 0-Day-Exploits, die Fehler in zugelassenen Anwendungen oder im Betriebssystem ausnutzen, um mit vorhandener und zugelassener Software unerwünschte Aktionen durchzuführen.
  • Vor dem Start von beliebiger Software und beliebigen Skriptdateien durch das built-in Benutzerkonto System.

Welche Auswirkungen hat die Konfiguration auf die alltägliche Arbeit?

  1. Für Standardbenutzer ist Software nur noch aus den schreibgeschützten zugelassenen Verzeichnissen startbar. Dies sind standardmäßig:

    C:\Windows
    C:\Program Files
    C:\Program Files (x86)


    Achtung!
    Administratoren können weiterhin jede beliebige Software (z.B. Installationsprogramme) per rechter Maustaste und den Kontextmenübefehl "Als Administrator ausführen" starten.
     
  2. Alle offenen Ports des Firewalls sind nur noch innerhalb des lokalen IP-Subnetzes des konfigurierten Systems erreichbar, so dass eventuell angebotene Dienste nicht mehr wie vor der Konfiguration weltweit verfügbar sind.

    Dies minimiert die Angreifbarkeit des Systems gegenüber entfernt ausgeführten Angriffen.
     
  3. Administratoren werden vor jeder Nutzung administrativer Rechte zur Zustimmung zum Gebrauch dieser Rechte aufgefordert.

    Dies schützt nachhaltig vor Malware und Flüchtigkeitsfehlern.

Dringend empfohlene Mindestkonfigurationsanpassung, aber zu schwache Konfiguration für administrative Arbeiten vor allem auf Serversystemen

Wie die Tabelle zeigt, ist die Konfiguration nicht geeignet, um die Arbeit als Administrator abzusichern, da Administratoren, wie auch das Systemkonto, jedes Programm starten können.

Natürlich ist immer die Zustimmung zu einer administrativen UAC-Abfrage notwendig, weil durch den Konfigurationsschritt 3 Herabstufen die automatische Nutzung administrativer Rechte deaktiviert wurde und somit eine beliebige Software erst gestarted werden kann, wenn ein Administrator dem Start per UAC-Dialogbox zustimmt.

Eine ausführliche Konfigurationsanleitung zur Absicherung von Windows-System an denen vorrangig als Administrator gearbeitet wird, finden Sie im Dokument "Best Practice Windows-Sicherheitskonfiguration - Wie installiere und konfiguriere ich ein sicheres und robustes Windows-System?"

Systemvoraussetzung und Kurzbeschreibung der Kommandos

Die folgenden Kommandozeilen können benutzt werden, um die Arbeit als Nicht-Administrator an einem aktuellen Windows-System abzusichern.

Voraussetzungen

Beschreibung der Konfigurationsänderungen

  1. Versiegeln: Das Laden von Programmen und DLLs ist standardmäßig verboten und für Standardbenutzer nur aus zugelassenen Verzeichnissen (%SystemDrive%\Program files und %SystemDrive%\Windows) erlaubt.

    Für Windows Vista/Server 2008 und Windows 7/Windows Server 2008 R2 gilt:
    Administratoren dürfen Programme und DLLs aus beliebigen Verzeichnissen starten, aber erst nach einer Heraufstufung des jeweiligen Programms per UAC-Zustimmungsabfrage durch den Kontextmenübefehl "Als Administrator ausführen".

    Ab Windows 8 gilt:
    Administratoren dürfen Programme und DLLs aus beliebigen Verzeichnissen starten.

    In Abhänigkeit vom Betriebssystem Windows Vista/Windows Server 2008 oder höher  wird das Versiegeln entweder über Software Restrictions Version 1 - Windows Vista/Windows Server 2008 oder Applocker (Software Restrictions Version 2) - Windows 7/Windows Server 2008 R2 oder höher realisiert.

    Die Software Restrictions-Regeln werden direkt unter Umgehung der Gruppenrichtlinien in die Registry geschrieben. Daher sind die gesetzten Regeln per Gruppenrichtlinien-Snap-In "gpedit.msc" nicht sichtbar, werden jedoch trotzdem vom System beachtet. Für die automatisierte Konfigurierung von Software Restrictions per Gruppenrichtlinien kann das kostenpflichtige Powershell Add-On GPExpert Software Group Policy Automation Engine (GPAE) benutzt werden.

    Die Applocker-Regeln werden mit Bordmitteln per Powershell-Skript konfiguriert.

    Die Positivliste der zugelassenen Pfade lässt sich einfach durch das Setzen von Skriptvariablen des QuickWinSec-Skriptes anpassen, s. Anpassen des QuickWinSec-Skriptes.
     
  2. Isolieren: Eingehender Netzwerkverkehr ist grundsätzlich verboten und nur für festgelegte Ausnahmen auf das lokale Subnetz beschränkt. Ausgehender Netzwerkverkehr ist grundsätzlich erlaubt.
     
    netsh advfirewall set allprofiles firewallpolicy blockinbound,allowoutbound
    netsh advfirewall firewall set rule name="Regelname" new dir=in remoteip=localsubnet


  3. Herabstufen: Die automatische Nutzung von administrativen Rechten für administrative Konten ist abgeschaltet.

    reg.exe add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System
    /v FilterAdministratorToken /t REG_DWORD /d 0x1 /f
    reg.exe add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System
    /v ConsentPromptBehaviorAdmin /t REG_DWORD /d 0x2 /f 
    reg.exe add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System
    /v PromptOnSecureDesktop /t REG_DWORD /d 0x1 /f

Herunterladen und starten des Skriptes QuickWinSec.bat

Herunterladen des Skriptes

Das Skript "QuickWinSec.bat" zum Herunterladen finden Sie unter

https://softsrv.uni-rostock.de/pub/uni-rostock/rz/NT-Kurs/ToolKit/QuickWinSec.cab 

Nach dem Herunterladen müssen Sie das Skript "QuickWinSec.bat" aus dem CAB-Archiv "QuickWinSec.cab" entpacken.

Dazu doppelklicken Sie im File Explorer das heruntergeladene Archiv "QuickWinSec.cab" und doppelklicken anschließend das Skript "QuickWinSec.bat".

Nun können Sie das Skript "QuickWinSec.bat" an einen Ort Ihrer Wahl entpacken, z.B. C:\TEMP.

Starten des Skriptes

  1. Öffnen Sie eine Kommandozeile mit administrativen Rechten, indem Sie die rechte Maustaste auf den Shortcut "Eingabeaufforderung" unter "START -> Alle Programme -> Zubehör" drücken und anschließend den Befehl "Als Administrator ausführen" auswählen.
  2. Starten Sie das Skript "QuickWinSec.bat". 

Anpassen des QuickWinSec-Skriptes

Die Konfiguration des QuickWinSec-Skriptes ist einfach anpassbar, indem Sie eine Datei namens QuickWinSec.cfg im Verzeichnis des QuickWinSec-Skriptes oder im Verzeichnis C:\Logs\WinConfig erstellen und diese Datei zeilenweise mit Konfigurationsparametern aus der nachfolgenden Tabelle füllen, um die Standardeinstellungen zu überschreiben, z.B.

SRPDirs="D:\Program files","D:\Windows"
Unattended=1

oder

SRPDirs="C:\Program files","C:\Windows","C:\Soft\Tools"
INCLUDESCRIPTS=1

Die folgende Tabelle beschreibt Variablen, die Sie nutzen können, um das QuickWinSec-Skript an Ihre Bedürfnisse anzupassen:

Variablen des QuickWinSec-Skriptes

Variable Mögliche Werte (Standard) Bedeutung
AVINS 0 oder 1 (0) Installation von Anti-Virus Software (0=nein, 1=ja)
AVUNINS 0 oder 1 (-) Deinstallation von Anti-Virus Software (0=nein, 1=ja)
BLOCKEDFILES Komma getrennte Liste von Programmdateien (s. Punkt 1 oben unter "Drei Konfigurationsänderungen") Liste von blockierten Programmdateien
CONFIGFIREWALL 0 oder 1 (-) Konfiguration geöffneter Windows Firewall Ports auf die Reichweite lokales Subnetz (0=nein, 1=ja)
CONFIGUAC 0 oder 1 (1) Härtung der Benutzerkontensteuerung
DEBUG 0 oder 1 (1) Ausführliches Logging in die Datei C:\Logs\WinConfig\QuickWinSec-%COMPUTERNAME%.log (0=nein, 1=ja)
DEFAULTAPPRULES 0 oder 1 (1) Applocker-Standardregeln für Windows 8-Apps (0=nein - Nur aktuell installierte Apps zugelassen, 1=ja - Alle Apps zugelassen)
EMETINS 0 oder 1 (0) Installation von Microsoft EMET (0=nein, 1=ja)
EMETUNINS 0 oder 1 (0) Deinstallation von Microsoft EMET (0=nein, 1=ja)
ENABLEWHITELISTEXCEPTIONS 0 oder 1 (1) Aktiviere Ausnahmen für Verzeichnisse auf der Whitelist
INCLUDEMSI 0 oder 1 (1) Aktiviere Software Whitelist-Schutz zusätzlich für MSI-Dateien, MSI-Dateien sind nur noch für Administratoren oder aus dem Pfad C:\Windows\Installer startbar.
INCLUDESCRIPTS 0 oder 1 (1) Aktiviere Software Whitelist-Schutz zusätzlich für Skriptdateien
SRPDirs Komma getrennte Liste von Verzeichnissen ("!Systemroot!","!ProgramFiles!","!ProgramFiles(x86)!"), "C:\ProgramData\Microsoft\Windows Defender" Liste von Verzeichnissen, aus denen Programme gestartet werden dürfen
SRPv2Support 0 oder 1 (-) Nutzung von Applocker (0=nein, 1=ja)
SRPWinDirExceptions Komma getrennte Liste von Verzeichnissen (s. Punkt 1 oben unter "Drei Konfigurationsänderungen") Liste von Verzeichnissen im Windows-Pfad (%WINDIR%), aus denen keine Programme gestartet werden dürfen
UNATTENDED 0 oder 1 (0) Startet die Konfiguration ohne Abfrage (0=nein, 1=ja)

Nutzung des QuickWinSec-Skriptes

Achtung!

Die Batch-Datei muss in einer administrativen Kommandozeile ausgeführt werden und nach der Abarbeitung des Skriptes muss eine Neuanmeldung (Logoff/Logon) durchgeführt werden.

   

Öffnen Sie eine Kommandozeile mit administrativen Rechten, indem Sie die rechte Maustaste auf den Shortcut "Eingabeaufforderung" unter "START -> Alle Programme -> Zubehör" drücken und anschließend den Befehl "Als Administrator ausführen" auswählen. 

  • Schellabsicherung durchführen
      
    QuickWinSec.bat i 
     
    Sie werden zuerst gefragt, ob der Software Whitelist-Schutz auch für Windows-Installer-Dateien angewendet werden soll:
     
    "Software whitelist protection for Windows Installer file (MSI files) [Y,N]?"

    Weiter werden Sie gefragt, ob der Software Whitelist-Schutz auch für Skript-Dateien angewendet werden soll:
     
    "Software whitelist protection for scripts [Y,N]?"

    Anschließend werden Sie nach der Konfiguration der Firewall gefragt:

    "Configure Windows Firewall open ports to local subnet [Y,N]?"

    Abschließend werden Sie nach der Durchführung der Schnellabsicherung gefragt:
     
    "Start system configuration [Y,N]?"

    Beantworten Sie die Abfragen mit N oder gar nicht, dann werden keine Änderungen am System durchgeführt. Eine Installation der Microsoft Antivirensoftware ohne Systemkonfiguration ist nicht möglich.
     

  • Schnellabsicherung rückgängig machen
      
    QuickWinSec.bat u
     
    Sie werden zuerst nach der Deinstallation des Microsoft Antivirensoftware gefragt:
     
    "Uninstall Microsoft Anti-Virus [Y,N]?"
     
    Anschließend werden Sie nach dem Zurücknehmen der Schnellabsicherung gefragt:
     
    "Start system configuration [Y,N]?"
     
    Beantworten Sie beide Abfragen mit N oder gar nicht, dann werden keine Änderungen am System durchgeführt. Eine Deinstallation der Microsoft
    Antivirensoftware ohne Systemkonfiguration ist nicht möglich.

  • Nur den Software Whitelist-Schutz aktivieren, aktualisieren oder abschalten
      
    Software Whitelist-Schutz aktivieren oder aktualisieren

    QuickWinSec.bat s 
     
    Sie werden zuerst gefragt, ob der Software Whitelist-Schutz auch für Skript-Dateien angewendet werden soll:
     
    "Software whitelist protection for scripts [Y,N]?"

    Abschließend werden Sie nach der Durchführung der Aktion gefragt:
     
    "Start system configuration [Y,N]?"

    Beantworten Sie die Abfragen mit N oder gar nicht, dann werden keine Änderungen am System durchgeführt. 
      
    Software Whitelist-Schutz abschalten

    QuickWinSec.bat us 
     
    Abschließend werden Sie nach der Durchführung der Aktion gefragt:
     
    "Start system configuration [Y,N]?"

    Beantworten Sie die Abfragen mit N oder gar nicht, dann werden keine Änderungen am System durchgeführt. 

  • Installation von Software nach der Anwendung der Schnellabsicherung

    a) Software mit Installationsprogramm

    Starten Sie das jeweilige Setup wie folgt:

    1. Klicken Sie die rechte Maustaste auf das entsprechende Programm.
    2. Klicken Sie auf den Befehl "Als Administrator ausführen".
    3. Folgen Sie den Anweisungen des jeweiligen Programmes.

    b) Software ohne Installationsprogramm

    1. Kopieren Sie das entsprechende Programm in eines der zugelassenen Verzeichnisse. Dies sind standardmäßig folgende Verzeichnisse:

     %Systemroot% (z.B. C:\Windows)
     %ProgramFiles% (z.B. C:\Program Files)
     %ProgramFiles(x86)% (z.B. C:\Program Files (x86))


    s. auch Punkt 1 unter Welche Auswirkungen hat die Konfiguration auf die alltägliche Arbeit?
      
    2. Starten Sie das jeweilige Programm nach dem Kopieren aus dem jeweiligen Programmverzeichnis.

Bei Fragen oder Hinweisen zu diesem Dokument melden Sie sich bitte per E-Mail bei joerg.maletzky(at)uni-rostock.de.