Netzwerkzeitprotokollsicherheit
Geschrieben von Stuart on Oktober 25th, 2008
Das von den meisten Zeitservern verwendete Protokoll ist NTP (Network Time Protocol) und es gibt es schon ziemlich lange, aber es wird ständig aktualisiert und weiterentwickelt und bietet immer höhere Genauigkeit und Sicherheit.
Synchronisation ist ein wesentlicher Bestandteil moderner Computernetzwerke und unerlässlich für die Sicherheit eines Systems. Ohne NTP und Zeitsynchronisation kann ein Computernetzwerk anfällig für bösartige Angriffe und sogar für Betrug sein.
Auch mit einem perfekt synchronisierten Netzwerk kann Sicherheit immer noch ein Problem sein, aber es gibt ein paar wichtige Schritte, um sicherzustellen, dass Ihr Netzwerk sicher ist.
Verwenden Sie immer einen dedizierten Network Time Server. Während Internetzeitquellen üblich sind, sind sie eine Zeitquelle außerhalb der Firewall. Dies hat offensichtliche Sicherheitsrückschläge, da ein böswilliger Benutzer das "Loch" in Ihrer Firewall ausnutzen kann, um mit dem NTP-Server zu kommunizieren. Ein dedizierter NTP-Server empfängt ein Zeitsignal von einer externen Quelle.
Normalerweise verwenden diese Arten von dedizierten Zeitservern entweder das GPS-Netzwerk (Global Positioning System) oder spezielle nationale Zeit- und Frequenzfunkübertragungen. Beide Zeitquellen bieten eine genaue und zuverlässige Methode der UTC-Zeit (koordinierte Weltzeit) und sind gleichzeitig sicher.
Eine weitere Möglichkeit, die Sicherheit zu gewährleisten, besteht darin, den integrierten Sicherheitsmechanismus von NTP - die Authentifizierung - zu nutzen. Bei der Authentifizierung handelt es sich um eine Reihe von verschlüsselten Schlüsseln, die verwendet werden, um festzustellen, ob die Zeitquelle von der Stelle kommt, von der sie angeblich stammt.
Die Authentifizierung überprüft, ob jeder Zeitstempel aus der beabsichtigten Zeitreferenz gekommen ist, indem er einen Satz von vereinbarten Verschlüsselungsschlüsseln analysiert, die zusammen mit der Zeitinformation gesendet werden. NTP, mit Message Digest-Verschlüsselung (MD5), um den Schlüssel zu verschlüsseln, analysiert ihn und bestätigt, ob er aus der vertrauenswürdigen Zeitquelle gekommen ist, indem er ihn gegen einen Satz vertrauenswürdiger Schlüssel überprüft.
Vertrauenswürdige Authentifizierungsschlüssel werden in der Konfigurationsdatei des NTP-Servers (ntp.conf) aufgelistet und in der Datei ntp.keys gespeichert. Die Schlüsseldatei ist normalerweise sehr groß, aber vertrauenswürdige Schlüssel teilen dem NTP-Server mit, welcher Satz von Schlüsseln derzeit aktiv ist und welche nicht. Verschiedene Teilmengen können aktiviert werden, ohne die Datei ntp.keys mit dem Befehl trusted-keys config zu bearbeiten.
Authentifizierung ist sehr wichtig beim Schutz eines NTP-Server vor böswilligen Angriffen; Internetzeitquellen können jedoch nicht authentifiziert werden, was das Risiko der Verwendung einer internetbasierten Zeitreferenz verdoppelt.