Checkpoint Firewall Support und Fehleranalyse mit dem fw.log

by Aug 24, 2012

Die Erfahrung hat gezeigt, dass es im Umfeld von Checkpoint Firewalls immer wieder dazu kommen kann, dass Firewalls ohne ersichtlichen Grund Anzeichen einer Überlastung aufweisen, indem sie für kurze Zeit nicht mehr erreichbar sind und Verbindungen mit Timeouts abbrechen. Besonders in großen Firewall-Umgebungen, mit mehreren Gigabyte an Logdaten pro Tag, stellt die Analyse derart unbestimmter Fehlerzustände ein erhebliches Problem dar.

Die Werkzeuge der Herstellers sind meist nicht in der Lage, spezifische statistische Analysen zu erzeugen. Entweder erweisen sich die Auswertungen als zu grob, indem Angaben zu stark kumuliert wurden oder als zu detailliert, sodass zwar Einzelheiten erkennbar waren, aber die Übersicht verloren ging.
Der mit der Checkpoint Firewall ausgelieferte “SmartView Tracker”, der sich für die Detailanalyse einzelner Logs durchaus eignet,  erlaubt beispielsweise keine sinnvolle Auswertung bezüglich kurzfristiger Lastspitzen. Die Funktion des Trackers beschränkt sich im Wesentlichen auf die Darstellung und die Filterung von Logzeilen.

Checkpoint SmartView Tracker

Checkpoint Fehlersuche im SmartView Tracker

Das von Checkpoint angebotene Produkt “SmartEvent” kann u.a. statistische Analysen erzeugen, die allerdings in den meisten Fällen nicht die Flexibilität aufweisen, die für die Eruierung des Problems erforderlich ist. Besonders im Bezug auf mehrdimensionale Auswertungen, wie beispielsweise der Auswertung der Top-Speaker pro Zeiteinheit, sind in den Werkzeugen starre Grenzen gesetzt.

Checkpoint SmartEvent

Checkpoint SmartEvent (Source: http://www.ictsecurity.cz/)

Loganalysesoftware wie etwa Splunk, Sawmill oder Firewall Analyzer bieten jeweils andere und oftmals auch detailliertere Sichten auf diese Protokolldaten, sind aber oftmals in der jeweiligen Situation nicht verfügbar, laden aus Performancegründen nicht das gesamte Firewall Log  oder sind nicht so konfiguriert, dass eine einfache Fehlersuche ermöglicht wird.
Mit Hilfe von uns entwickelter Analyseskripte ist es auf einfache Weise möglich, auch sehr große (getestet bis 10GB Dateigröße) Checkpoint Firewall Logs zu parsen und eine statistische Auswertung zu Zeitabschnitten und Ereignissen innerhalb dieser Zeitabschnitt zu erhalten.
Die Skripte eignen sich vor allem für folgende Analysen:

  • Checkpoint Firewall Top Speaker Analysis
  • Checkpoint Firewall Time Frame based Top Speaker Statistics
  • Checkpoint Firewall Anomaly Detection
Da Firewall-Logs anderer Hersteller bis auf Spaltentrenner und Positionen der Werte in aller Regel gleich aufgebaut sind, ist eine Anpassung auf andere Firewall-Typen mit minimalem Aufwand möglich.

Die Skripte sind stark parametrisierbar und erlauben es beispielsweise Peaks im Traffic zu erkennen, also Zeitabschnitte, in denen durch ein oder mehrere Systeme besonders viele Verbindungen pro Zeiteinheit aufgebaut werden. Diese Peaks gehen meist in einer Tagesstatistik unter, da sie nur kurz, aber dafür umso stärker auf die Firewall einwirken und damit Fehlerzustände verursachen können. In der Gesamtzahl der Ereignisse pro Quellsystem und Tag müssen diese “Peeks” nicht auffällig werden.
Nachfolgendes Bild zeigt eine Topspeakeranalyse mit Sekundenzeitfenstern. Mögliche Werte für die Analysezeitfenster sind 1 Sekunde, 10 Sekunden, 1 Minute, 10 Minuten, 1Stunde.

Checkpoint Top Speaker Analysis per Time Frame

Checkpoint Top Speaker Analysis per Time Frame

Unsere Skripte erlauben es uns, durch die Verwendung des Standard-Inputs als zu lesenden Datenstrom, bereits gepackte Dateien auf einfache Art und Weise zu verarbeiten und schon vor der Verarbeitung durch das Skript eine Filterung vorzunehmen.
Im folgenden Beispiel wird ein gepacktes Checkpoint-Log mittels “zcat” entpackt und in die Standard-Ausgabe geschrieben, die durch “grep” alle Ereignisse des Typs “Accept” herausfiltert und nur die übrigen Zeilen an das Skript zu Analyse übergibt. Es handelt sich dabei nur um ein Demo-Log, aber man erkennt die Struktur der Analyse bereits recht gut.

zcat fw_280812.gz | grep -v accept | perl ./checkpoint-peak-detector.pl > report.htm

Die Ausgabe besteht aus deinem HTML-Report und CSV-Dateien. Der Kopf des HTML Outputs aus dem Demo-Daten ist im folgenden Screenshot zu sehen.

Checkpoint FW1 Analysis

Checkpoint Peek Analyse Kopf – Systeme mit Gesamtzahl der Verbindungen und dazugehörige “Actions” (Demo-Log)

Wenn Zeilen nicht verarbeitet werden können, weil sie keine Quell-IP enthalten, werden sie nicht einfach ausgelassen, sondern finden Beachtung in einer gesonderten Auswertung der “Unreadable lines”. Der Begriff trifft die Bedeutung nicht ganz, denn “SmartDefense” Ereignisse sind sicher “lesbar”, allerdings können einige nicht vom Skript ausgewertet werden, wenn sie keine Quell-IPs enthalten.
Andere Zeilen des Typs “control” oder “monitor” oder gar gänzlich unbekannte Typen werden hier statistisch ausgewertet. Im folgenden Beispiel sind leider nur wenige solche Ereignisse enthalten. Die Zeitabschnitte in denen besonders viele dieser Zeilen gefunden wurden, werden nach oben sortiert. In den Zeilen wird dann aufgeschlüsselt, um welchen Typ es sich dabei gehandelt hat. Selbst wenn hier noch keine genaue Auswertung des eigentlichen Problems erfolgt, so lassen sich doch wertvolle Hinweise auf die Quelle und denjenigen Zeitabschnitt herauslesen, der es lohnt, in anderen Werkzeugen genauer untersucht zu werden.

Checkpoint Unreadable Lines

Auswertung der Checkpoint Log Zeilen ohne Source IP

Die Werkzeuge werden immer auf die spezielle Kundenumgebung angepasst und können in der Regel sehr kurzfristig zum Einsatz kommen.
Bei Interesse an den Skripten oder Unterstützung in Sachen Fehleranlyse von Checkpoint Firewalls können Sie sich jederzeit über das Kontaktformular mit uns in Verbindung setzen.

About the author:

Florian Roth

Florian Roth serves as the Head of Research and Development at Nextron Systems. With a background in IT security since 2000, he has delved deep into nation-state cyber attacks since 2012. Florian has developed the THOR Scanner and actively engages with the community via his Twitter handle @cyb3rops. He has contributed to open-source projects, including 'Sigma', a generic SIEM rule format, and 'LOKI', an open-source scanner. Additionally, he has shared valuable resources like a mapping of APT groups and operations and an Antivirus Event Analysis Cheat Sheet.

Newsletter

New blog posts
(~1 email/month)

GDPR Cookie Consent with Real Cookie Banner