Was genau ist „smart“, wenn es um die beste Strategie zum Finden, Erkennen und Analysieren von sicherheitsrelevanten Daten geht? Beim Erfassen und Analysieren von Sicherheitsdaten sowie ihrer automatischen Erkennung mittels künstlicher Intelligenz, hängt die Qualität der Ergebnisse stark von der Qualität der Daten ab.
Welche Erkenntnisse wir aus den Daten ableiten, die wir erfassen, speichern und verarbeiten, basiert zudem auf der Genauigkeit, mit der sie erfasst worden sind. Oftmals fallen allerdings sehr viel mehr Daten an, als wir selbst oder die Systeme bewältigen können.
An dieser Stelle will ich einige Strategien für den Umgang mit Daten sowie die Vor- und Nachteile der einzelnen Ansätze diskutieren:
1. Sampling (Stichprobe entnehmen) – Analyse einer statistisch signifikanten Teilmenge von Daten
2. Filtering (Filtern) – Daten entfernen, die in diesem Kontext als unwichtig oder wiederholend bewertet werden
3. Scaling up (Hochskalieren) – Suche nach Tools und Technologien, mit denen sich alle Daten effektiv verarbeiten lassen
Naturgemäß will man sämtliche der anfallenden Daten berücksichtigen. Limitierende Faktoren sind aber die zur Verfügung stehende Zeit und die anfallenden Kosten. Sampling ist eine effektive Methode, um etwas über die statistische Natur der Daten zu erfahren. Sie hilft allerdings nicht weiter, wenn man nach der sprichwörtlichen Nadel im Heuhaufen sucht oder Zugriff auf bestimmte Daten braucht. Filtern ist dann eine gute Strategie, wenn man zum einen gewährleisten kann, dass die verwendeten Methoden zuverlässig sind, sie die Statistik der erfassten Daten nicht verändern und garantiert alle wichtigen Daten beibehalten werden.
Beim Thema Sicherheit kommt hinzu, dass wir es auf der anderen Seite mit smarten Gegnern zu tun haben. Hier steht die Datenintegrität im Vordergrund. Sie gilt es, vor den potenziellen Manipulationen seitens der Angreifer zu schützen. Damit in Zusammenhang stehen die Fragen: Ist es zu einem Verlust von Daten aufgrund eines bestimmten Verhaltens der Angreifer gekommen oder ist es ein erwarteter, also kalkulierter Verlust? Hat der Angreifer die Filtering-Strategie durchschaut und benutzt sie sogar, um selbst unerkannt zu bleiben?
Filtering-Ansatz
Betrachten wir den Filtering-Ansatz deshalb genauer. Nehmen wir einmal an, dass wir die Erfassung von Netzwerkdaten auf 100 Verbindungen für jeden Prozess beschränken. Vordergründig klingt das vernünftig. Die durchschnittliche Anzahl von Verbindungen pro Prozess ist an den meisten Endpunkten deutlich geringer. Man kann also davon ausgehen, dass nur sehr wenige Daten gefiltert werden. In Wirklichkeit folgen Datenmuster in computerisierten Umgebungen aber einer aggressiven Potenzgesetzverteilung und nicht einer Linear- oder gar Normalverteilung. Ein typisches Textverarbeitungsprogramm öffnet beispielsweise nur sehr wenige Verbindungen, manchmal gar keine, manchmal eine oder zwei – zum Beispiel, um Updates von der betreffenden Seite zu ziehen. Selten mehr. Ein Browser hingegen öffnet beim Ansteuern einer einzigen Website Dutzende von Verbindungen. Die Zahl geht allein an einem Tag leicht in die Tausende. Das Problem potenziert sich auf Serverebene ein weiteres Mal. Auf einem Server werden nahezu alle Inbound-Verbindungen für den Prozess abgewickelt, der die primäre Funktion genau dieses Servers ist; das heißt, hier werden beispielsweise 99,9999 % aller eingehenden Kommunikation zu einer Oracle-Datenbank oder einem Mail-Server abgewickelt. Aufgrund dessen würden bei jeder Art von gedeckelter Filterung die meisten Daten eliminiert.
Unabhängig davon, welche Strategie man wählt, um die erfasste Datenmenge zu begrenzen, man stößt immer wieder auf diese Art von Einschränkungen. Das Problem besteht darin, dass wir zu Daten, die wir nicht erfassen oder an Server übermitteln, keinerlei Transparenz erlangen, und sie nicht für die Server-seitige Aufdeckung oder „Hunting“ verwenden können.
Selbst wenn man versucht, eine Strategie zu wählen, die hinsichtlich böswilliger Vorgänge optimiert ist, stoßen wir am Ende immer auf eines oder mehrere der folgenden Probleme:
- Das böswillige Unschärfeprinzip – Man kann nie zu 100% sicher sein, dass etwas nicht böswillig ist.
- Das Potenzgesetz – Welchen begrenzenden Mechanismus man auch immer wählen mag, irgendwann stößt man zwangsläufig auf ein Verhalten nach dem Potenzgesetz, und dadurch wird eine willkürliche Filterung erzwungen.
- Gegnerisches Verhalten – Wenn ein Gegner verstanden hat, nach welchen Prinzipien Sie die Datenerfassung einschränken, kann er dieses Wissen nutzen, um Sicherheitsmaßnahmen zu umgehen.
- Aufbrechen der forensischen Integrität – Es werden immer Daten fehlen und das Potenzgesetz der Daten verhindert, dass Ihnen für die eigentliche Vorfallsreaktion eine kritische forensische Spur zur Verfügung steht.
- Nicht überprüfbarer Datenverlust – Wenn Daten fehlen, können Sie nie absolut sicher sein, ob dieser Verlust auf ein absichtsvolles Verhalten, einen unbeabsichtigten Fehler oder ein gegnerisches Verhalten zurückzuführen ist.
Wenn Anbieter von „Smart Filtering“ sprechen, veranschaulichen die skizzierten Probleme, dass Filtering alles andere als smart ist. Die Technologie ist nicht darauf ausgelegt „Rauschen“ zu reduzieren. Es ist lediglich eine Strategie, um die technologischen Einschränkungen der serverseitigen Systeme zu überwinden und Kosten zu senken. Das geht jedoch ganz eindeutig zu Lasten der Datenintegrität, der Erkennungsqualität und der Leistungsfähigkeit der Sicherheitslösung.
Hier kommt Strategie 3, „Scaling-up“ ins Spiel. Im Rahmen dieser Methode werden alle Daten erfasst, verarbeitet, gespeichert und zusammengeführt. Wie weiter oben erwähnt, kann das zeitaufwendig und teuer sein. Um das zu vermeiden, muss man sicherstellen, dass man die Daten schnell genug verarbeitet, und die verwendeten Systeme in der Lage sind, das effizient zu tun. Darüber hinaus muss man Teilmengen von Differenzdaten zügig korrelieren, was wiederum einen neuen Algorithmus erfordert. Das Hochskalieren, um sämtliche Daten zu verarbeiten, ist von allen genannten Strategien die anspruchsvollste.
Bei allen anderen kommt man aber früher oder später zu derselben Schlussfolgerung: Wenn Sie sich für eine willkürliche, intelligente, statistische Filterung entscheiden, nehmen Sie für Ihr System unweigerlich blinde Flecken in Kauf. Ein Hacker wird sich diese Schwachstellen zunutze machen und sie entweder direkt ausnutzen oder er zieht anhand der Art dieser „Systemblindheit“ Rückschlüsse wie Ihr System zur Datenerfassung aufgebaut ist und nutzt dieses Wissen gezielt aus, um Daten abzuziehen. In anderen Fällen stößt ein Angreifer vielleicht eher unbeabsichtigt auf diese „Einladung“.
Schlussendlich hat niemand eine 100-prozentige Gewähr dafür, welche Daten man im Rahmen eines Auswahlprozesses ignorieren kann und welche nicht. Neue Technologien stellen sicher, Daten auch in großen Mengen schnell erfassen und analysieren zu können. Der wirklich smarte Ansatz beim Daten-Filtering ist, Daten erst gar nicht zu filtern.