Donnerstag, 22. Dezember 2005 |
Topthema
Ziel der Protokollierung durch die Firewall ist die (gegebenenfalls
auch
nachträgliche) Erkennung von Angriffen und die Beweissicherung im Fall
eines Angriffs. Dazu muss festgelegt werden, was wo und wie
protokolliert
wird und wer die Protokolle auswertet. Dabei sind geltende gesetzliche
Bestimmungen, vor allem beim Datenschutz, zu beachten. In dieser Folge
dreht sich alles darum, was, wo und wie protokolliert wird.
Bei der Protokollierung sind folgende Punkte zu beachten:
- Alle Daten sollen möglichst genau dem jeweiligen
Verursacher (Rechner und/oder Benutzer) zuzuordnen sein.
- Die Systemzeit der einzelnen Komponenten der Firewall
sollte synchronisiert werden, damit eine Korrelation der verschiedenen
Protokolle möglich ist.
- Die Protokolldaten sollten so gespeichert werden, dass ein
Angreifer sie nicht oder zumindest nicht unbemerkt manipulieren kann.
Es bietet sich an, sie auf einem zentralen, besonders geschützten
Protokollierungsserver (dem Loghost) zu speichern. Die Übertragung muss
gesichert (also ggf. verschlüsselt) erfolgen. Die Protokolldaten
sollten auf einem nur einmal beschreibbaren Medium gespeichert werden,
um eine Manipulation der gespeicherten Daten auszuschließen. Besonders
wichtige Daten können auch zusätzlich direkt auf einem Drucker
ausgegeben werden.
- Um den Speicherverbrauch der Protokolle zu begrenzen,
sollten sie regelmäßig umbenannt und komprimiert werden. Weitere
Einträge werden dann in neue Dateien geschrieben. Sinnvollerweise
erfolgt dies bei Erreichen einer bestimmten Größe und nicht nur zu
bestimmten Terminen.
- Fällt die Protokollierung aus, z.B. weil der Speicherplatz
nicht ausreicht oder die Verbindung zum Loghost unterbrochen ist,
sollte die Firewall alle Verbindungen unterbrechen.
- Spezielle Ereignisse, z.B. der Ausfall der Protokollierung
oder unzulässige Verbindungsversuche, sollten zu einer sofortigen
Alarmierung des für die Firewall verantwortlichen Administrators
führen.
Umfang der Protokollierung
Paketfilter
Es sollten mindestens alle jene Pakete erfasst werden, die aufgrund
einer
Filterregel abgewiesen werden.
Zusätzlich können je nach Schutzbedarf auch weitere Pakete
protokolliert werden:
- Ungewöhnliche, fehlerhafte Pakete, z.B. mit einer falschen
Kombination von TCP-Flags oder fehlerhaften Header-Daten:
Diese Pakete sollten bereits durch eine entsprechende Filterregel
abgewiesen und dadurch protokolliert werden. Da derartige Pakete ein
Anzeichen für so genannte Stealth-Scans oder ein technisches Problem im
Netz sein können, kann eine zusätzliche Protokollierung nützlich sein.
- Akzeptierte Pakete verbindungsorientierter Protokolle
(z.B. TCP-basierte Protokolle), die zu einem Verbindungsaufbau und ggf.
-abbau gehören.
- Alle Pakete verbindungsloser Protokolle mit geringem
Datenaufkommen (z.B. UDP-basierte Protokolle wie DNS).
Von den protokollierten Paketen sollten mindestens folgende
Informationen
erfasst werden (siehe auch About Security
#30):
- Quell- und Ziel-IP-Adresse
- Quell- und Ziel-Port (bei TCP bzw. UDP) oder ICMP-Typ
- Datum und Zeit
- zutreffende Paketfilterregel
Application
Level Gateway
Da das Application Level Gateway durch die Paketfilter vor einem
Großteil der unzulässigen Pakete geschützt wird, sollten
für jeden erfolgreichen oder versuchten Verbindungsaufbau folgende
Daten protokolliert werden:
- Quell- und Ziel-IP-Adresse
- Quell- und Ziel-Port
- Dienst
- Datum und Uhrzeit des Verbindungsauf- und -abbaus (oder
Datum und Uhrzeit des Verbindungsaufbaus und Dauer der Verbindung)
- ggf. Authentifizierungsdaten
Für die verschiedenen Dienste (Proxies) können zusätzlich
folgende Daten protokolliert werden:
- HTTP
- Zieladresse (URL)
- Anzahl der übertragenen Bytes
- Verbindungsmethode (z.B. GET, POST, CONNECT, ...)
- Angewendete Filter
- Statusmeldungen
- FTP
- Zieladresse
- Abgelehnte PORT-Befehle
- Name der übertragenen Datei
- Anzahl der übertragenen Bytes
- Statusmeldungen
- SMTP
- Absender und Empfänger der E-Mail (aus dem
E-Mail-Header)
- Anzahl der übertragenen Bytes
- Angewendete Filter
- Statusmeldungen
Weitere Auslöser
der
Protokollierung
Außer in den bereits genannten Fällen gibt es weitere
Auslöser für eine Protokollierung der betreffenden Pakete:
- Angriffe auf die Firewall-Komponenten selbst
Das Firewallsystem erkennt zum Teil selbstständig, dass ein
Angriffsversuch stattfindet beziehungsweise stattgefunden hat. Dies
trifft zum Beispiel zu, wenn der zulässige Füllstand eines Logfiles
überschritten oder fehlgeschlagene Authentifizierungsversuche für die
Administrationsfunktionen der Firewall-Komponenten erkannt werden.
- Fehlverhalten der Firewall-Komponenten
Im Normalbetrieb nicht vorgesehene Ereignisse werden ebenfalls
protokolliert, z.B. Ausfälle der Hardware (z.B. Speicher- oder
Festplattenfehler, andere Hardwarealarme) oder Störungen der Software
(zum Beispiel das Auftreten undefinierter Zustände bei der Analyse).
- Aktionen der Administratoren
Es ist sinnvoll, alle von den Administratoren der einzelnen
Firewallkomponenten durchgeführten Aktionen gesondert vollständig zu
protokollieren. Dadurch können ggf. sowohl unbefugte Aktionen
böswilliger Administratoren als auch Manipulationen eines erfolgreichen
Angreifers aufgedeckt werden.
Damit ist geklärt, was, wo und wie protokolliert wird.
In der nächsten Woche gibt es ein
"Weihnachts- und Neujahrsspecial":
Wie der Weihnachtsmann digitale Gutscheine einführte...
Die Logfiles werden in der
nächsten
regulären Folge
weiter behandelt, dann geht es um die Auswertung der gesammelten
Informationen.
Wenn
Sie Fragen oder Themenvorschläge haben, können Sie
diese gerne an die angegebene E-Mail-Adresse senden oder im Security-Forum
einbringen!
Carsten
Eilers
About Security – Übersicht zum aktuellen Thema "Logfiles"