Zum Inhalt

NTP/NTS-KE - Integrität

NTP/NTS-KE - Integrität

Einführung

Das Audit-Ereignis CUSTOM_NTS_INTEGRITY dokumentiert Probleme während des sicheren Network-Time-Security-(NTS-)TLS-Handshakes zwischen der Firewall-Appliance und ihrem konfigurierten NTS-Zeitserver.

Schlägt dieser Handshake fehl, kann die Firewall die Zeit möglicherweise nicht sicher synchronisieren. In Industrie- und OT-Umgebungen kann sich dies auf die Integrität von Protokollen, zeitbasierte Zugriffsregeln und die Korrelation von Ereignissen in einem SIEM oder SOC auswirken.

Dieses Ereignis wird von chronyd erzeugt und in das Linux-audit.log geschrieben. Es ist auf 4 Meldungen pro Stunde begrenzt, um zu verhindern, dass das Audit-Log mit wiederholten Handshake-Fehlern gefüllt wird.

Aus Sicherheitssicht sollten Sie diese Ereignisse untersuchen, da sie auf ungültige oder nicht vertrauenswürdige Zertifikate, falsch konfigurierte TLS-Parameter oder Netzwerkprobleme hinweisen können, die eine sichere Zeitsynchronisation verhindern. Bis das Problem behoben ist, sollten Sie Zeitstempel der Firewall bei forensischen Analysen oder Compliance-Berichten mit Vorsicht behandeln.

Webinterface-Ansicht

Im VIEW-Webinterface erscheint dieses Ereignis im Abschnitt Anomaly audit.

Die CUSTOM_NTS_INTEGRITY-Datensätze werden zusammen mit anderen Anomalie-Meldungen des integrierten Überwachungssystems angezeigt. Eine Beispielzeile sieht wie im Screenshot aus:

  • Title: NTS TLS handshake failed
  • Description: Error with certificate from time.cloudflare.com

Die Tabellenspalten in der Anomaly-audit-Ansicht sind:

Web-Feld Beschreibung Beispielwert
Date Lokales Datum, an dem das Audit-Ereignis aufgezeichnet wurde, abgeleitet aus der Audit-Zeit. 12/25/14
Time Lokale Uhrzeit, zu der das Ereignis aufgezeichnet wurde. 12:35:05
Title Kurzzusammenfassung aus dem Feld title des Audit-Datensatzes. NTS TLS handshake failed
Description Detaillierter Text aus dem Feld description des Audit-Datensatzes. Error with certificate from time.cloudflare.com

Nutzungshinweise für Operatoren und SOC-Analysten:

  • Verwenden Sie die Anomaly-audit-Ansicht, um aktuelle NTS-Integritätsprobleme schnell zu erkennen, ohne das rohe audit.log auswerten zu müssen.
  • Korrelieren Sie Date und Time mit anderen Ereignissen in Ihrem SIEM (zum Beispiel VPN-Änderungen oder Zertifikatsverteilungen).
  • Wenn NTS TLS handshake failed erscheint:
  • Prüfen Sie die NTS-Serverkonfiguration auf der Firewall.
  • Überprüfen Sie das Serverzertifikat und das CA-Vertrauen auf beiden Seiten.
  • Überprüfen Sie, dass zwischengeschaltete Firewalls oder TLS-Inspection-Geräte den TLS-Handshake nicht unterbrechen.

Alle in der Anomaly-audit-Tabelle sichtbaren Einträge sind durch Einträge in /var/log/audit/audit.log hinterlegt, sodass sie zentral für die SIEM-/SOC-Integration weitergeleitet und ausgewertet werden können.

Erläuterung des rohen audit.log-Eintrags

Das Ereignis CUSTOM_NTS_INTEGRITY wird von auditd in /var/log/audit/audit.log geschrieben. Eine Beispielzeile lautet:

type=CUSTOM_NTS_INTEGRITY msg=audit(1419507305.264:11): pid=7121 uid=323 auid=4294967295 ses=4294967295 msg='title="NTS TLS handshake failed" description="Error with certificate from time.cloudflare.com" exe="/usr/sbin/chronyd" hostname=? addr=? terminal=? res=success'UID="chrony" AUID="unset"

Nachfolgend werden nur die ereignisspezifischen Felder erläutert. Für die generischen Audit-Felder wie pid, uid, auid und ses können Sie die offizielle auditd-Dokumentation heranziehen.

Feld Beschreibung Beispielwert
type Audit-Datensatztyp. Kennzeichnet diese Meldung als NTS-Integritätsereignis. CUSTOM_NTS_INTEGRITY
msg (hdr) Standard-Audit-Header mit Zeitstempel und Ereignis-ID. audit(1419507305.264:11)
pid Prozess-ID des Prozesses, der das Ereignis ausgelöst hat (chronyd). 7121
uid Benutzer-ID, unter der der Prozess läuft. 323
auid Audit-Benutzer-ID. 4294967295
ses Audit-Sitzungs-ID. 4294967295
msg (body) Frei formatierter Schlüssel-Wert-Block mit menschenlesbaren Details. title="..." description="..." ...
title Kurzzusammenfassung des Problems. Dieser Text wird in der Anomaly-audit-Tabelle als Title angezeigt. NTS TLS handshake failed
description Detaillierte Beschreibung, die üblicherweise den betroffenen NTS-Server oder das Zertifikatsproblem benennt. Wird im Webinterface als Description angezeigt. Error with certificate from time.cloudflare.com
exe Vollständiger Pfad zur ausführbaren Datei, die den Audit-Datensatz erzeugt hat. /usr/sbin/chronyd
hostname Für dieses Ereignis nicht verwendet. Immer ?. ?
addr Für dieses Ereignis nicht verwendet. Immer ?. ?
terminal Für dieses Ereignis nicht verwendet. Immer ?. ?
res Ergebnis-Flag von auditd. Für dieses benutzerdefinierte Ereignis ist es aus technischen Gründen immer auf success gesetzt. success
UID Textueller Benutzername, der uid entspricht. chrony
AUID Textuelle Darstellung von auid. unset

Für die SIEM-/SOC-Integration gehen Sie typischerweise wie folgt vor:

  • Filtern Sie auf type=CUSTOM_NTS_INTEGRITY, um alle NTS-Integritätsereignisse zu erfassen.
  • Extrahieren Sie title, description und exe aus dem msg-Body zur Verwendung als normalisierte Felder (event.action, event.reason, process.name und ähnliche).
  • Verwenden Sie den Zeitstempel des Audit-Headers audit(…) als primäre Ereigniszeit und rechnen Sie ihn in die Zeitzone Ihres SIEM um.

Wiederholtes Auftreten dieses Ereignisses für denselben NTS-Server weist auf eine dauerhafte Fehlkonfiguration oder ein Verbindungsproblem hin, das behoben werden sollte, um eine korrekte und vertrauenswürdige Systemzeit zu gewährleisten.

Wann das Ereignis erzeugt wird

Ein CUSTOM_NTS_INTEGRITY-Ereignis wird immer dann erzeugt, wenn ein NTS-TLS-Handshake zwischen der Firewall (NTS-Client) und einem konfigurierten NTS-Server fehlschlägt.

Das Ereignis wird wie folgt erzeugt:

  • Der NTP-Daemon chronyd erkennt, dass er einen NTS-TLS-Handshake mit einem NTS-Zeitserver nicht abschließen kann.
  • Typische technische Ursachen sind:
  • Ungültiges, abgelaufenes oder nicht übereinstimmendes Serverzertifikat.
  • Die Zertifikatskette des Servers kann nicht gegen eine vertrauenswürdige CA validiert werden.
  • Inkompatible TLS-Parameter oder Cipher Suites.
  • Netzwerkunterbrechungen oder Middleboxes, die den TLS-Handshake stören.
  • chronyd ruft audit_log_user_message() aus libaudit auf.
  • auditd schreibt einen Eintrag vom Typ CUSTOM_NTS_INTEGRITY in /var/log/audit/audit.log mit einem kurzen title und einer ausführlicheren description.

Um das Audit-Log vor Überflutung zu schützen, begrenzt die Firewall die Erzeugung dieses Audit-Ereignisses auf 4 Meldungen pro Stunde. Weitere Handshake-Fehler innerhalb dieser Stunde erzeugen keine zusätzlichen CUSTOM_NTS_INTEGRITY-Einträge.

Hinweis: Das Feld res innerhalb der Meldung ist aus technischen Gründen immer auf success gesetzt, obwohl die semantische Bedeutung des Ereignisses ein Handshake-Fehler ist. Der Fehler wird in den Feldern title und description ausgedrückt.

Beispiel eines audit.log-Eintrags

type=CUSTOM_NTS_INTEGRITY msg=audit(1419507305.264:11): pid=7121 uid=323 auid=4294967295 ses=4294967295 msg='title="NTS TLS handshake failed" description="Error with certificate from time.cloudflare.com" exe="/usr/sbin/chronyd" hostname=? addr=? terminal=? res=success'UID="chrony" AUID="unset"