IPSEC - Verschlüsselung und Paketfilter
Nutzung von IPsec zur Verschlüsselung von Netzwerkverkehr
IPSec beinhaltet eine Suite von Internetstandardprotokollen, die eine sichere, verschlüsselte Kommunikation zwischen zwei Computern über ein nicht geschütztes Netzwerk ermöglichen. Die Verschlüsselung erfolgt auf der IP-Netzwerkschicht, was bedeutet, dass sie für die meisten Anwendungen, die bestimmte Protokolle für die Netzwerkkommunikation verwenden, transparent ist. Darüber hinaus bietet IPSec eine End-to-End-Sicherheit. Dies bedeutet, dass die vom sendenden Computer verschlüsselten IP-Pakete während der Übertragung unlesbar sind und nur vom Empfängercomputer entschlüsselt werden können. Damit eine noch höhere Sicherheit erreicht werden kann, werden in diesem Vorgang Verschlüsselungsalgorithmen verwendet, um einen einzigen Verschlüsselungsschlüssel zu erstellen. Dieser Schlüssel wird an beiden Enden der Verbindung verwendet, so dass er nicht über das Netzwerk weitergeleitet werden muss.
IPSec kann für die Ausführung einer oder mehrerer der folgenden Sicherheitsfunktionen konfiguriert werden:
- Authentifizieren des Absenders der IP-Datenpakete auf der Basis der Kerberos-Authentifizierung, digitaler Zertifikate oder eines gemeinsam genutzten Schlüssels (Kennwort)
- Sicherstellen der Integrität der über das Netzwerk übertragenen IP-Datenpakete
- Verschlüsseln aller über das Netzwerk gesendeten Daten mit absoluter Vertraulichkeit
- Verbergen der ursprünglichen IP-Adressen während der Übertragung
Mit diesen Funktionen können Sie sicherstellen, dass der Netzwerkverkehr während der Übertragung vor Datenänderungen geschützt ist und die Daten nicht von nicht authentifizierten Benutzern abgefangen, angezeigt oder kopiert werden können.
Wie auch bei anderen Sicherheitsrichtlinien können Sie die IPSec-Richtlinien auf lokaler Ebene oder auf Domänenebene anwenden.
Konfigurierbar unter:
- MMC -> Gruppenrichtlinien- Snap-in -> Richtlinien für Gruppenrichtlinienobject -> Computerkonfiguration -> Windows-Einstellungen -> Sicherheitseinstellungen -> IP-Sicherheitsrichtlinien
Nutzung von IPsec als Paketfilter zur Isolisierung vom Internet
Ohne weiteres lässt sich IPSec als leitungsfähiger Paketfilter (paketfilter-basiertes Firewall) einsetzen. Sie können Ihren Server mit folgendem Verfahren gegen jegliche Angriffe aus dem Internet schützen, indem Sie alle Zugriffe aus dem Internet verbieten und nur noch das eigene vertraute Netz zulassen.
Die folgenden Schritte zeigen Ihnen beispielhaft, wie Sie einen IPsec-Paketfilter unter Windows über die GUI oder die Kommandozeile konfigurieren, um das System vor Angriffen zu schützen.
Netzwerkbasierte Angriffsvektoren auf das System sind stark eingeschränkt.
- Das System wurde vom Internet isoliert.
Ein Beispiel soll Ihnen die Wirksamkeit einer solchen Konfiguration verdeutlichen.
Sie arbeiten im Web und eine Malware infiziert Ihr System mit einem Trojaner. Dieser Trojaner versucht Verbindung mit seinem Heimatsystem aufzunehmen, um eventuell weitere Software nachzuinstallieren und/oder das Heimatsystem über eine weitere PC-Drohne zu informieren, welche für zukünftige Zwecke benutzt werden kann.
Dies schlägt fehl, weil kein Zugriff auf das Heimatsystem des Trojaners erlaubt ist. Somit ist der Trojaner wirkungslos.
Wenn Sie die Isolierung vom Internet mit Software Whitelistung und Zwei-Faktor-Authentifizierung kombinieren, dann wird der Aufwand für eine erfolgreiche Kompromittierung Ihres Systems für potentielle Angreifer so erhöht, dass die Wahrscheinlichkeit groß ist, dass sich diese anderen Opfern zuwenden.
Konfigurieren eines IPSec-Paketfilters per GUI
Konfigurieren eines IPSec-Paketfilters per Kommandozeile
Das folgende Netsh Script blockt sämtlichen IP-Verkehr und lässt nur den Zugriff aus dem Subnetz 192.168.1 zu. Es kann nur unter Windows Server 2003 ausgeführt werden.
REM Anlegen der Policy
- netsh.exe ipsec static add policy name="IPFilter" description="IP Filter Policy"
REM Anlegen der Fileraktionen
- netsh.exe ipsec static add filteraction name=Block description="Blocks Traffic" action=block
- netsh.exe ipsec static add filteraction name=Permit description="Permit Traffic" action=permit
REM Anlegen der Filterliste “All Traffic”
- netsh.exe ipsec static add filterlist name="All Traffic" description="All Traffic"
- netsh.exe ipsec static add filter filterlist="All Traffic" srcaddr=me dstaddr=any description="All Traffic" protocol=any srcport=0 dstport=0
REM Anlegen der Filterliste “Trusted Traffic”
- netsh.exe ipsec static add filterlist name="Trusted Traffic" description="Trusted Traffic"
- netsh.exe ipsec static add filter filterlist="Trusted Traffic" srcaddr=me dstaddr=192.168.1.0 dstmask=255.255.255.0 description="Trusted Traffic" protocol=any srcport=0 dstport=0
REM Anlegen der Regel “Block” zum Blocken sämtlichen IP-Verkehrs
- netsh.exe ipsec static add rule name="Block" policy="IPFilter" filterlist="All Traffic" filteraction=Block
REM Anlegen der Regel “Trusted” zum Erlauben des IP-Verkehrs aus dem Subnetz 192.168.1
- netsh.exe ipsec static add rule name="Trusted" policy="IPFilter" filterlist="Trusted Traffic" filteraction=Permit
REM Aktivieren der Policy “IPFilter”
- netsh.exe ipsec static set policy name="IPFilter" assign=yes
Ausführliche Informationen zu Netsh unter:
Für Windows XP wird das ipseccmd-Tool in den Support Tools mitgeliefert, um IPsec Richtlinien über die Kommandozeile zu ändern. Die Syntax können Sie sich dem Parameter -? ausgeben lassen.
REM Block All Traffic
- ipseccmd.exe -f 0+*:: -n BLOCK -r Block -w REG -p IPFilter
REM Allow Subnet 139.30.*
- ipseccmd.exe -f 0:+192.168.1.0/255.255.0.0 -n PASS -r Trusted -w REG -p IPFilter
REM Activate Policy
- ipseccmd.exe -p IPFilter -w REG -x
Diese IPSec-Policy führt dazu, dass die Maschine nur im Subnetz 192.168.1 ansprechbar ist und nur auf Adressen im Subnetz 192.168.1 zu greifen kann. Zugriffe auf z.B. Webserver außerhalb des Subnetzes 192.168.1 können mit Hilfe eines Proxy-Servers erfolgen.
Weitere hilfreiche Links zum Thema IPSec unter:
Allgemein:
- Using IPSec to Lock Down a Server
- Active Directory in Networks Segmented by Firewalls
- How to configure a firewall for Active Directory domains and trusts
- How To Configure IPSec Tunneling in Windows Server 2003
- Using IPSec in Windows 2000 and XP Part 1
- Using IPSec in Windows 2000 and XP Part 2
- IPSec Filter Actions
- Securing DC to DC communication with IPsec using Windows Firewall with Advanced Security (WFAS) Connection Security Rules
- Securing RDP with IPSec
- Restrict Access to Only Trusted Computers
- Service overview and network port requirements for Windows
- Netsh Commands for Internet Protocol Security (IPsec)
Einen Überblick über IPSec erhalten Sie unter: