Springe zum Hauptinhalt

Sicherer Betrieb von Windows-Systemen?

Sicherer Betrieb von Windows-Systemen?

Windows Personal Firewall

windows-eigene firewall (es gibt Alternativen)

Grundlagen (Skizze)

  • "Windows-Firewall" ab Windows XP SP2 (vorher "Internetverbindungsfirewall" - ICF),
    sowie Windows Server 2003, Windows Vista und Windows Server 2008
  • PC hat eine oder mehrere Netzverbindungen
  • Kommunikation - Empfangen bzw. Senden von Nachrichten - erfolgt in Paketen
  • übliche Protokolle: TCP und UDP
  • Pakete enthalten sog. Portnummern zugeordnet (z.B. 80 = http; 20,21 = ftp; 22 = ssh; 23 = telnet), siehe
    C:\WINDOWS\system32\drivers\etc/services - Zuordnung: Dienstname, Port, Protokoll
    oder http://www.iana.org/assignments/port-numbers - Liste der IANA (Internet Assigned Numbers Authority)
  • jedes Paket hat einen Absender sowie ein Ziel (in Windows-Firewall als "Bereich" bezeichnet - IP-Adresse, Subnetz, "alle")
Spezifik Windows XP/2003
  • nur für eingehende Netzverbindungen (Ausnahmen siehe icmp)

Konfigurationsmöglichkeiten (Alternativen)

  • Grafische/Interaktive Konfiguration (Windows like)
    • Start -> Systemsteuerung -> Windows-Firewall (XP)
      bzw. Start -> Systemsteuerung -> Sicherheit -> Windows-Firewall -> Einstellungen ändern (Vista)
    • Gruppenrichtlinien -> gpedit.msc (nicht in Home-editions enthalten)
      -> Computerkonfiguration -> Administrative Vorlagen -> Netzwerk -> Netzwerkverbindungen -> Windows firewall
      siehe auch Verwalten von Windows XP Service Pack 2-Features mithilfe von Gruppenrichtlinien
    • Start -> Systemsteuerung -> Sicherheitscenter bzw. ... -> Sicherheit ...
  • Konfiguration mit Kommando (in allen Windows-Editions verfügbar)
    netsh firewall ... (Kommandozeilen)
    netsh -> firewall (Umgebung)
  • Einstellungen in der registry vornehmen
    • regedit
    • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess
      HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\StandardProfile\AuthorizedApplications\List
      HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\StandardProfile\GloballyOpenPorts\List
      ...
  • unattended-Installation ( section [WindowsFirewall])
  • Konfiguration der Windows Firewall von Microsoft Windows XP Service Pack 2 über eine INF-Datei

Grafische Konfiguration

Start -> Systemsteuerung -> Sicherheit... -> Windows-Firewall
oder alternativ im Eingaben-Fenster firewall.cpl starten
  • ==> Allgemein - Aktiv / Inaktiv
    • mit aktuellen Service Packs standardmäßig aktiviert - dies soll immer so sein
  • ==> Ausnahmen
    • gültig für alle Netzverbindungen
    • über eine Netzverbindung kommende Daten, die akzeptiert werden sollen
      Remote Desktop / Remote Unterstützung - Eintrag automatisch, wenn dieses feature aktiviert wird (Systemsteuerung -> System -> Remote)
      für AFS:
      • Name: AFS CacheManager Callback
      • Port: 7001
      • TCP oder UDP : UDP und TCP (zwei Ausnahmen, mit Paketinstallation realisiert)
    • Ausnahmen für Programme, Systemdienste, Ports
    • Empfehlungen
      • Ausnahmen nur, wenn unbedingt benötigt (z.B. UPnP-Framework nicht benötigt - Kommunikation zwischen PCs, Suchanforderungen)
      • Ausnahme entfernen, wenn nicht mehr benötigt
      • keine Ausnahme für unbekannte Programme
    • Achtung bei "Benachrichtigen, wenn Programm durch Windows-Firewall geblockt wird": Bei Erlauben kann dies zu einer Änderung der bisherigen generellen Einstellung führen ==> Kontrolle
  • ==> Erweitert
    • ==> Sicherheitsprotokollierung
      • Empfehlung
      • "Verworfene Pakete protokollieren" und/oder "Erfolgreiche Verbindungen protokollieren"
      • je nach Bedarf und Datenmenge nach C:\WINDOWS\pfirewall.log (siehe "Größenlimit" und verfügbaren Platz)
      • "Verworfene ..." - sinnvoll, wenn ein Dienst nicht funktioniert
      • "Erfolgreiche ..." - Kontrolle / Überwachung
    • ==> ICMP
      • Internet Control Message Protocol (ICMP)
      • für Austausch von Fehler- und Informationsmeldungen in Netzwerken
      • spezieller Paket-/Nachrichtentyp für Diagnose-Informationen
      • "Echo Reply" / "Eingehende Echo-Anforderungen" => ping (Paket zurücksenden) - "Sichtbarkeit" des PCs
    • ==> Netzwerkverbindungseinstellungen
      • Konfiguration je ausgewählter Netzverbindung
      • incl. ICMP
      • hier die Möglichkeit, eine bestimmte Netzverbindung ohne Firewall zu betreiben
    • ==> Standardeinstellungen
      • Standardeinstellungen aktivieren
      • Modifikationen gehen verloren
siehe auch http://www.microsoft.com/technet/community/columns/cableguy/cg0204.mspx - Manually Configuring Windows Firewall in Windows XP Service Pack 2

Konfiguration/Informationen mittels Kommando

  • geeignet für Auswertung, Kontrolle, automatische Konfiguration (Wiederholung)
  • in einem File zusammenfassen (.bat, .cmd)
  • netsh firewall /?
In diesem Kontext:
?              - Zeigt eine Liste der Befehle an.
add            - Fügt die Firewallkonfiguration hinzu.
delete         - Löscht die Firewallkonfiguration.
dump           - Zeigt ein Konfigurationsskript an.
help           - Zeigt eine Liste der Befehle an.
reset          - Setzt die Firewallkonfiguration auf den Standardwert zurück.
set            - Legt die Firewallkonfiguration fest.
show           - Zeigt die Firewallkonfiguration an.

netsh firewall show

  • Anzeigen der aktuellen firewall-Konfiguration
  • Anzeigefunktionen - auch ohne Adminrechte nutzbar
  • Kommando-Optionen zur Steuerung des Informationsinhalts (Umfang, spezielle Bereiche)
C:\>netsh firewall show /?

Folgende Befehle sind verfügbar:

Befehle in diesem Kontext:
show allowedprogram - Zeigt vom Firewall zugelassene Programmkonfiguration an.
show config    - Zeigt die Firewallkonfiguration an.
show currentprofile - Zeigt das aktuelle Firewallprofil an.
show icmpsetting - Zeigt die Firewall-ICMP-Konfiguration an.
show logging   - Zeigt die Firewallprotokollierungskonfiguration an.
show multicastbroadcastresponse - Zeigt die Multicast-/Broadcastantwort-
                                  konfiguration des Firewalls an.
show notifications - Zeigt die Firewallbenachrichtigungskonfiguration an.
show opmode    - Zeigt die Firewallbetriebskonfiguration an.
show portopening - Zeigt die Firewallportkonfiguration an.
show service   - Zeigt die Firewalldienstkonfiguration an.
show state     - Zeigt aktuellen Firewallstatus an.
C:\>netsh firewall show logging

Protokollierungskonfiguration:
-------------------------------------------
Dateipfad       = C:\WINDOWS\pfirewall.log
Max. Dateigre = 4096 KB
Verworf. Pakete = Aktiv
Verbindungen    = Aktiv
  • portopening
    • aktuelle port-Konfiguration anzeigen (je Netzverbindung)
    • ... ENABLE -> Anzeige aller freigegebenen (Aktiv) sowie freigebbaren (Inaktiv) Ports
      (weitere Ports sind hinzufügbar)
C:\>netsh firewall show portopening

Portkonfiguration fr Profil "Domne":
Port   Protokoll Modus    Name
----------------------------------------------------------
3389   TCP       Aktiv    Remotedesktop

Portkonfiguration fr Profil "Standard":
Port   Protokoll Modus    Name
----------------------------------------------------------
1346   UDP       Aktiv    GhostConsole
7001   UDP       Aktiv    AFS CacheManager Callback (UDP)
7001   TCP       Aktiv    AFS CacheManager Callback (TCP)
5900   TCP       Aktiv    WinVNC
139    TCP       Aktiv    NetBIOS-Sitzungsdienst
445    TCP       Aktiv    SMB ber TCP
3389   TCP       Aktiv    Remotedesktop
  • state
    • aktuellen Status des firewalls anzeigen (Zusammenfassung)
    • ... ENABLE -> ...

netsh firewall set

  • Änderungen an der aktuellen Konfiguration vornehmen
  • Kommando-Optionen (analog netsh firewall show):
    allowedprogram, icmpsetting, logging, multicastbroadcastresponse, notifications, opmode, portopening, service
  • spezifische Syntax je Option siehe: netsh firewall set option /?
  • Empfehlung:
    Jede Änderung an der firewall-Konfiguration explizit prüfen!
    Mindestens mittels ... show ..., möglichst auch einen Praxistest!
  • Beispiele
    • netsh firewall set allowedprogram C:\Programme\Symantec\Ghost\ngctw32.exe GhostClient DISABLE ALL
    • netsh firewall show icmpsetting ENABLE
      netsh firewall set icmpsetting type = 8 mode = ENABLE
      netsh firewall show icmpsetting
    • netsh firewall set logging connections = DISABLE
      erfolgreiche Verbindungen nicht protokollieren
    • netsh firewall set service type = REMOTEDESKTOP
    • netsh firewall set notification ENABLE
      Benutzer werden benachrichtigt, wenn ein Programm versucht einen Port zu öffnen
    • netsh firewall set portopening TCP 80 Web

netsh firewall add / delete / dump / reset

  • dump - nicht unterstützt
    (export-/import-Funktion in Vista)
  • reset
    • firewall-Konfiguration wird auf Standard zurückgesetzt
    • Standard festgelegt in %WINDIR%\inf\netfw.inf = Installation
      siehe Installations-CD: i386\netfw.in_
    • Modifikation möglich (s.o.)
  • add / delete
    • für allowedprogram bzw. portopening
    • Beispiel
1346   UDP       Aktiv    GhostConsole
netsh firewall delete portopening  UDP 1346
netsh firewall add portopening  UDP 1346 Ghost
1346   UDP       Aktiv    Ghost

Einstellungen in der registry

Protokolldatei

pfirewall.log
#Version: 1.5
#Software: Microsoft Windows Firewall
#Time Format: Local
#Fields: date time action protocol src-ip dst-ip src-port dst-port size tcpflags tcpsyn tcpack tcpwin icmptype icmpcode info path
#Fields: 
#date      time   action protocol src-ip     dst-ip          src-   dst-  size tcpflags tcpsyn      tcpack   tcpwin icmptype icmpcode info path
                                                             port   port

2006-12-22 00:58:25 DROP UDP 134.109.200.209 134.109.201.255  138     138  202 -         -          -         -     - - -                  RECEIVE
2006-12-22 00:58:25 DROP UDP 134.109.200.209 134.109.201.255  137     137   78 -         -          -         -     - - -                  RECEIVE
2006-12-22 00:58:26 OPEN TCP 134.109.200.109 134.109.132.164 3598    1984    - -         -          -         -     - - -                  -
...
2006-12-22 05:22:28 DROP TCP  59.148.181.199 134.109.200.109   80    12115  48 SA        3885423350 104298265 16384 - - -                  RECEIVE
2006-12-22 05:22:32 DROP TCP  59.148.181.199 134.109.200.109   80    12115  48 SA        3885423350 104298265 16384 - - -                  RECEIVE
2006-12-22 05:25:44 DROP TCP  59.148.181.199 134.109.200.109   80    12115  48 SA        4208457496 104298265 16384 - - -                  RECEIVE
2006-12-22 05:25:47 DROP TCP  59.148.181.199 134.109.200.109   80    12115  48 SA        4208457496 104298265 16384 - - -                  RECEIVE
2006-12-22 09:15:55 DROP TCP 222.134.32.227  134.109.200.109   80    12115  40 AR          0        104298265     0 - - -                  RECEIVE
2006-12-22 09:15:55 DROP TCP 222.134.32.227  134.109.200.109   80    12115  40 AR          0        104298265     0 - - -                  RECEIVE
Erläuterung:
  • ... selbsterläuternd
  • src... - Quelle, Absender
  • dst... - Ziel, Adressat
  • tcpflags - TCP-Steuerungsflags
  • tcpsyn - TCP-Sequenznummer
  • tcpack - TCP-Bestätigungsnummer
  • tcpwin - TCP-Fenstergröße
  • icmptype - Typ-Feld der ICMP-Nachricht
  • icmpcode - Code-Feld der ICMP-Nachricht
  • ...

Spezifika in Windows Vista

  • unterstützt eingehenden und ausgehenden Netzwerkverkehr
  • Konfiguration von Ausnahmen für für Quell- und Ziel-IP-Adressen, für IP-Protokollnummern, für Quell- und Ziel-TCP- und UDP-Ports, ...
  • logging in C:\Windows\system32\LogFiles\Firewall\pfirewall.log
  • Filter zur Anzeige
  • Profile <- Netzwerkstandorte (festgelegt bei allererster Anmeldung)
    • "zu Hause " -> Profil: Privat
    • "Arbeistplatz" -> Profil: Privat
    • "Öffentlicher Ort" -> Profil: Öffentlich
    • oder bei Integration in eine Domäne -> Profil: Domäne
    • IPsec - "sichere Verbindungen", Schlüsselaustausch
    • Kontrolle/Änderung: -> Systemsteuerung -> Netzwerk- und Freigabecenter
  • MS-Console: wf.msc
  • gpedit.msc -> Computerkonfiguration -> Windows-Einstellungen -> Sicherheitseinstellungen -> Windows-firewall mit erweiterter Sicherheit ... (nicht in Home-Edition)
  • Kommando netsh advfirewall ...
    • "Profil Standard" entspricht "Profil Privat"
    • komplette Kommandozeile (ähnlich netsh firewall ...)
    • spezielle advfirewall-Kommandoumgebung möglich: Kommando netsh Kommando advfirewall Kommando help ...
      • Protokollierung: set file ...
      • firewall-Administration eines anderen PCs: set machine ...
    • Beispiele
netsh advfirewall /?
Befehle in diesem Kontext:

?              - Zeigt eine Liste der Befehle an.
consec         - Wechselt zum "netsh advfirewall consec"-Kontext.
dump           - Zeigt ein Konfigurationsskript an.
export         - Exportiert die aktuelle Richtlinie in eine Datei.
firewall       - Wechselt zum "netsh advfirewall firewall"-Kontext.
help           - Zeigt eine Liste der Befehle an.
import         - Importiert eine Richtliniendatei in den aktuellen Speicher.
monitor        - Wechselt zum "netsh advfirewall monitor"-Kontext.
reset          - Setzt die Richtlinie auf die standardmäßige Richtlinie zurück.
set            - Legt die profilbezogenen oder globalen Einstellungen fest.
show           - Zeigt Profil- bzw. globale Eigenschaften an.

Folgende Unterkontexte sind verfügbar:

 consec firewall monitor
netsh advfirewall show allprofiles
Domänenprofil-Einstellungen:
----------------------------------------------------------------------
Status                                ON
Firewallrichtlinie                    BlockInbound,AllowOutbound
Lokale Firewallregeln                 Nicht zutreffend (nur für GRO-Speicher)
Lokale Verbindungssicherheitsregeln   Nicht zutreffend (nur für GRO-Speicher)
Eingehende Benutzerbenachrichtigung   Enable
Remoteverwaltung                      Disable
Unicastantwort auf Multicast          Enable

Protokollierung:
Zugelassene Verbindungen protokol.    Disable
Getrennte Verbindungen protokollieren Enable
Dateiname                             C:\Windows\system32\LogFiles\Firewall\pfirewall.log
Max. Dateigröße                       4096


Privates Profil-Einstellungen:
----------------------------------------------------------------------
Status                                ON
Firewallrichtlinie                    BlockInbound,AllowOutbound
Lokale Firewallregeln                 Nicht zutreffend (nur für GRO-Speicher)
Lokale Verbindungssicherheitsregeln   Nicht zutreffend (nur für GRO-Speicher)
Eingehende Benutzerbenachrichtigung   Enable
Remoteverwaltung                      Disable
Unicastantwort auf Multicast          Enable

Protokollierung:
Zugelassene Verbindungen protokol.    Disable
Getrennte Verbindungen protokollieren Enable
Dateiname                             C:\Windows\system32\LogFiles\Firewall\pfirewall.log
Max. Dateigröße                       4096


Öffentliches Profil-Einstellungen:
----------------------------------------------------------------------
Status                                ON
Firewallrichtlinie                    BlockInbound,AllowOutbound
Lokale Firewallregeln                 Nicht zutreffend (nur für GRO-Speicher)
Lokale Verbindungssicherheitsregeln   Nicht zutreffend (nur für GRO-Speicher)
Eingehende Benutzerbenachrichtigung   Enable
Remoteverwaltung                      Disable
Unicastantwort auf Multicast          Enable

Protokollierung:
Zugelassene Verbindungen protokol.    Disable
Getrennte Verbindungen protokollieren Enable
Dateiname                             C:\Windows\system32\LogFiles\Firewall\pfirewall.log
Max. Dateigröße                       4096

OK.

Tipps

  • Immer mit aktivem firewall arbeiten, niemals ausschalten (auch nicht für Tests)!
    Aktuelle Systeme haben zum Abschluss einer Installation einen aktiven firewall.
    (Sonst Vorkehrungen treffen, u.U. ohne Netz installieren.)
  • Problembehebung - netzbasierte Software funktioniert nicht
    • siehe firewall-Protokoll -> C:\WINDOWS\pfirewall.log -> abgewiesene Pakete (siehe Quelle und Datum)
    • siehe Programm-/Produktbeschreibung oder Hersteller kontaktieren
    • C:\WINDOWS\system32\drivers\etc/services oder http://www.iana.org/assignments/port-numbers
    • benötigte Portnummer selbst ermitteln:
      • netstat -ano -> ... IP-Adresse:Port PID
      • tasklist bzw. tasklist /svc -> ... PID
  • Problembehebung - kein Zugriff/ keine Manipulation der firewall möglich
    Dienst "Windows-Firewall/Gemeinsame Nutzung der Internetverbindung" reagiert nicht mehr (fehlerhafte registry-Bearbeitung?!)
    1. %WINDIR%\inf\netfw.inf wiederherstellen
    2. netsh firewall reset
    3. firewall-Konfiguration aktualisieren
      oder
  • Sicherung/Wiederherstellung der aktuellen firewall-Konfiguration
    • registry-Teil SharedAccess sichern
      exportieren von HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess nach Datei sharedaccess.reg
  • firewall nur für benötigte und nachvollziehbare Anforderungen öffnen!
    Nicht mehr benötigte Ausnahmen unbedingt schließen! (nach Programm-Deinstallation, ...)
  • Achtung, wenn bei fehlendem Zugriff eines Programms mittels Fenster die "Behebung" des Problems angeboten wird, "Weiterhin blocken"/"Nicht mehr blocken"/"Erneut nachfragen". Dies sollte als anonyme Änderung der firewall (in Bezug auf Ports, Dauer, ...) interpretiert und somit abgelehnt werden! Konsequenz: explizite (eigene) firewall-Konfiguration vornehmen.
  • häufig: Ports 137, 138, 139 für NETBIOS ... (file und printer sharing)
  • Kontrolle auf Veränderungen?

Links

  • Logo

    #wirsinddivers

    TU Chemnitz lädt am 20. Mai 2025 alle Interessierten aus der Universität und der Stadt Chemnitz zum 3. Diversity Day ein …

  • Mehrere junge Menschen stehen um einen Tisch herum, auf dem Miniroboter fahren.

    RoboDay 2025: Robotik-Talente zeigen ihr Können

    Am 17. Mai 2025 wird der regionale Vorausscheid zur „World Robot Olympiad“ und der Wettbewerb „RoboSAX“ vereint mit einem Begleitprogramm für Kinder und Jugendliche, die spielerisch den Umgang mit Robotertechnologie, KI und autonomem Fahren erleben und die TU Chemnitz kennenlernen können …

  • Ein Mann mit Helm steht vor einem Förderturm im Sonnenuntergang.

    „Rummelplatz“ – eine ganz besondere Zeitreise

    TU Chemnitz ist Kooperationspartnerin der Konferenz zur Uraufführung der Oper „Rummelplatz“ ­– Für den Science Slam „Von Atommacht bis Zonen-Pop“ können bis zum 6. Juni 2025 Kurzbewerbungen eingereicht werden …

  • Ein Mann und eine Frau stehen neben einer technischen Anlage.

    Vom Reststoff zur Ressource

    Projekt „Reformed Wool“ bringt textile Abfälle zurück in den Kreislauf – EXIST-Förderung für Gründungsteam an der TU Chemnitz …