Automatisierungstechniken für Netzwerksysteme

(Di Georg Tosi)
08/11/21

Der Verweis auf den Einsatz von Automatisierungstechniken und möglicherweise KI (Künstliche Intelligenz) ist bei der Lösung vieler Datenanalyseprobleme zur gängigen Praxis geworden, um daraus Hinweise auf das zukünftige Verhalten komplexer Systeme zu ziehen.

Tatsächlich gibt es in vielen Geräten schon seit längerem die Möglichkeit, dass ein System autonom auf bestimmte Ereignisse reagiert und so sein Verhalten standardisiert. In diesen Anmerkungen werden wir ein Beispiel für die Funktionen untersuchen, die auf einigen Knoten von Unternehmensnetzwerken (derzeit alle auf dem IP-Protokoll basierend) verfügbar sind und Folgendes ermöglichen:

Anerkennung eines bestimmten Ereignisses

Die Erstellung einer Richtlinie, die angewendet wird, wenn das betreffende Ereignis eintritt

Die Anwendung der Richtlinie auf das System mit der folgenden Änderung des Verhaltens desselben.

Alle großen Hersteller von IP-Netzwerkgeräten (Cisco Systems, Juniper Networks, Arista Networks usw.) bieten eine solche Funktion unter unterschiedlichen Namen an.

Ohne auf die Besonderheiten der einzelnen Systeme einzugehen, möchte ich lediglich das Funktionsprinzip veranschaulichen, um eine Vorstellung davon zu vermitteln, wie es auch im Netzwerkbereich Geräte, Tools und Funktionen gibt, die die Automatisierung des Knotenverhaltens im Gesicht ermöglichen konkreter Ereignisse.

Die Verbreitung dieser Tools könnte auch zu Lösungen führen, die in Synergie mit KI-basierten Sicherheitstechniken (Artikel lesen) ermöglichen ein wirksames Eingreifen bei spezifischen Problemen und verhindern, dass die Bedrohung oder der Kompromittierungsversuch die endgültigen Systeme (Server oder einzelne Workstations) erreicht.

Ich beziehe mich daher auf ein hypothetisches Netzwerkgerät. Dieser Knoten stellt eine Entwicklungsumgebung bereit, die sich auf die Implementierung von Automatisierungsfunktionen konzentriert.

Sehr oft wird diese Umgebung auf Basis eines Linux-Systems entwickelt, das für die Ausführung auf einem „Hilfs“-Prozessor innerhalb des Netzwerkknotens optimiert ist. Der große Vorteil einer solchen Lösung liegt darin, dass sie viele (wenn auch nicht alle) der in der Linux-Umgebung verfügbaren Bibliotheken und Sprachen nutzen kann. Darüber hinaus muss die von den Herstellern des Netzwerkknotens angebotene Möglichkeit hinzugefügt werden, von dieser Linux-Umgebung aus auf die wichtigsten Nutzungsmerkmale des Knotens selbst zuzugreifen.

Es ist daher möglich, über eine Bibliothek (vom Hersteller bereitgestellt) auf bestimmte Parameter der Schnittstellen zuzugreifen, die es beispielsweise ermöglicht, die Anzahl der Pakete zu ermitteln, die in der Eingabe-Ausgabe von einem bestimmten Port übertragen werden, oder fehlerhafte Pakete (zu groß oder zu groß) zu identifizieren zu klein oder mit Fehlern,…). Diese Funktionen sind nicht auf die Eigenschaften der Schnittstelle beschränkt, sondern können sich auf andere Subsysteme des Knotens auswirken, beispielsweise auf die Routing-Ebene oder einige physikalische Eigenschaften des Systems (Temperatur, Lüfterstatus usw.).

Ich kann daher ein bestimmtes Ereignis definieren, das auf dem Eintreten einer vorgegebenen Bedingung basiert: Überschreiten der Anzahl von CRC-Fehlern an einem Port, Ändern einer Routing-Tabelle, Überschreiten eines Schwellenwerts hinsichtlich der Systemtemperatur, der CPU-Auslastung oder der Speichernutzung.

An diesem Punkt kann das so definierte Ereignis als Auslöser (Trigger) für eine bestimmte Aktion (Richtlinie) verwendet werden: einen Port deaktivieren, eine Nachricht (mit verschiedenen Methoden) an den Systemadministrator senden, in die Konfiguration eingreifen, um eine Route zu ändern standardmäßig usw.

Alle Aktionen können über Skripte oder ausführbare Programme ausgeführt werden: Typischerweise bieten die Systeme die Möglichkeit, die Hauptsprachen zu verwenden, also Python, Perl, Ruby und eine native Umgebung, die auf einer eigenen Befehlsschnittstelle basiert.

Diese Funktionalität eröffnet auch aus Sicht der Netzwerksicherheit eine ganze Reihe möglicher, sehr interessanter Implikationen.

Wenn es möglich wäre, mithilfe systemexterner und auf KI basierender Tools in der im zitierten Artikel definierten Perspektive das System ordnungsgemäß über das Vorhandensein einer möglicherweise erkannten Bedrohung zu informieren und zu informieren, wäre es möglich, sofort einzugreifen (bzw in extrem kurzer Zeit). Der hypothetische Eingriff würde daher die spezifische Verbindung blockieren und gleichzeitig eine zuvor definierte spezifische Richtlinie umsetzen und somit in die Konfiguration des Systems selbst eingreifen.

Auf diese Weise könnte es beispielsweise möglich sein, eine bestimmte Domäne zu isolieren, die als nicht vertrauenswürdig gilt, und gleichzeitig die Aufrechterhaltung der Konnektivität auf globaler Ebene sicherzustellen.

Natürlich werden die Synergien zwischen Netzwerkgeräten und Sicherheitssystemen von allen großen Anbietern analysiert und entwickelt, die Tools zur Identifizierung und Eindämmung von Computerbedrohungen anbieten können, die sich bei richtiger Konfiguration und Verwendung als sehr effektiv erweisen.