Seite 2 - Machine Learning in Web Application Firewalls

Lesezeit
2 Minuten
Bis jetzt gelesen

Seite 2 - Machine Learning in Web Application Firewalls

10.02.2021 - 14:00
Veröffentlicht in:
Die richtige Aggregationsstufe
WAFs treffen typischerweise Entscheidungen basierend auf einzelnen Requests oder einer Gruppe solcher Anfragen, beispielsweise alle Requests innerhalb einer HTTP-Session oder von derselben Source-IP-Adresse. Bei der Betrachtung einer Gruppe von Anfragen innerhalb einer HTTP-Session lassen sich interessante Eigenschaften definieren und statistisch untersuchen. Zum Beispiel ist die Wahrscheinlichkeit einer bestimmten Folge von HTTP-Requests innerhalb einer Session auslesbar.

Die typischen Folgen werden meist vom gewünschten Benutzerverhalten dominiert. Untypische Folgen deuten auf unerwünschte Aktivitäten wie einen Web-Crawler hin, der die Links in einer unüblichen Reihenfolge aufruft. Eine Schwierigkeit beim Session-Scope besteht darin, während eines Angriffs früh Gegenmaßnahmen wie das Blockieren der Session auszulösen. Ein weiteres Problem ist, dass Angreifer ihre Attacken auf mehrere Sessions verteilen können. Dies ist insbesondere bei öffentlich zugänglichen Webapplikationen einfach möglich.

Machine Learning braucht Engineering
Um eine unerwünschte HTTP-Session mittels ML-basierten Methoden zu erkennen, gilt es zunächst, entsprechende Features zu definieren (Feature Engineering). Dabei werden aus den zugrundeliegenden Daten wichtige Attribute abstrahiert, aufgrund derer das Modell später Vorhersagen trifft. Dieser Schritt ist zentral für den Erfolg. Beispiele für solche Features in Webverkehr sind Verteilungen der Zeitabstände von Requests, HTTP-Objekt-Größen oder die Verteilung von HTTP-Status-Codes. Aus einzelnen Basisattributen in den Rohdaten wie zum Beispiel Timestamps lassen sich über mehrere Schritte komplexere Features konstruieren. Anschließend werden, basierend auf diesen Features, geeignete ML-Modelle ausgewählt, konfiguriert und trainiert.

Durch geeignete Kombination verschiedener Modelle entsteht nun ein System, das in der Lage ist, bestimmte Auffälligkeiten einer Websession zu identifizieren. Dieses System kann Fragen beantworten, wie: Wurden einzelne Requests innerhalb der Session durch eine Person ausgeführt oder war ausschließlich eine Software beteiligt? Handelt es sich um einen gewöhnlichen Benutzer oder deutete sein Verhalten auf einen Hacker hin? Falls die Requests von einer Software ausgelöst wurden: Handelt es sich um eine legitime Suchmaschine, ein Monitoringtool oder möglicherweise um einen unerwünschten Site-Crawler, Bot – oder sogar ein Attack-Tool?

Jede Webapplikation lässt sich dabei mit einem eigenen Modell trainieren und schützen. Somit kann eine bestimmte Anomalie in einer Applikation ein gewöhnliches Verhalten in einer anderen Applikation sein. Dies ist ein weiterer Vorteil einer Web Application Firewall mit Machine Learning an Bord, gegenüber statischen Sicherheitsfunktionen, die nur mit viel Aufwand für jede Webanwendung unterschiedlich konfigurierbar und optimierbar ist. Beim Trainieren der Modelle ist zudem darauf zu achten, dass der Angreifer keinen Einfluss auf die Trainingsphase nehmen kann oder dass die Modelle mit solchen unerwünschten Daten umgehen können.

Kein Schwarz-Weiß-Denken
Im Gegensatz zu klassischen, regelbasierten Systemen liefern Machine-Learning-Modelle keine Schwarz-Weiß-Antworten sondern Wahrscheinlichkeitsverteilungen. Aktionen sind nun in Abhängigkeit dieser Verteilung auslösbar. Eine Session-Terminierung oder das zeitliche Blockieren einer Source-IP soll in der Regel nur dann geschehen, wenn ein Angriff eine hohe Wahrscheinlichkeit hat. Andere Aktionen wie das Einblenden eines CAPTCHAs sollen dagegen nur erfolgen, wenn Requests mit hoher Wahrscheinlichkeit automatisiert ausgelöst wurden, zum Beispiel von einem Bot. Ist die Unsicherheit zu hoch, so lassen sich Session-Details lediglich loggen oder an ein Zusatzsystem etwa für Fraud Detection für zusätzliche Analysen und Entscheidungen weiterleiten.

Sicherheit von ML-basierten Systemen
Da ML-Modelle heute in sehr kritischen Systemen wie selbstfahrenden Autos zum Einsatz kommen, in welchen falsche Entscheidungen fatale Folgen haben können, erfolgt seit einigen Jahren vermehrt Forschung zum Thema der Robustheit dieser Modelle. Obwohl sich Straßenschilder ohne Probleme während einer sehr hohen Genauigkeit erkennen lassen, wurde gezeigt, dass bei weniger robusten Modellen ein Angreifer durch kaum sichtbare Veränderungen eines Stopp-Straßenschildes, das System dazu bringen kann, dieses Schild als "Höchstgeschwindigkeit 80 km/h" zu klassifizieren.

Diese Frage nach der Robustheit eines ML-Modells wird in vielen Projekten außer Acht gelassen. Es ist offensichtlich, dass im Sicherheitsumfeld diese Modelleigenschaft relevant ist. Eine relativ einfache Möglichkeit die Modelle robuster gegen solche Angriffe zu machen, lautet, diese zusätzlich mit entsprechenden Angriffsbeispielen (Perturbed Train Data) zu trainieren.

Fazit
Das Potenzial von ML-Modellen in Sicherheitsprodukten wie WAFs ist groß. Auf Statistik basierende Lösungsansätze bringen aber neue Risiken mit sich. Die Kunst dabei ist, zu erkennen, in welchen Bereichen die Systeme einen tatsächlichen Mehrwert liefern und wie diese dafür im Detail gestaltet werden müssen, um Anforderungen an Sicherheit und insbesondere Betriebsamkeit zu erfüllen. Fundiertes Fachwissen im Bereich der Applikationssicherheit sowie des Machine Learning ist dabei zentral für den Erfolg eines solchen Projekts.


<< Vorherige Seite Seite 2 von 2


ln/Reto Ischi, Head of Research and Development bei Airlock WAF

Tags

Ähnliche Beiträge

Sicherheit in Microsoft Azure (3)

Hybride Szenarien lassen sich je nach eingesetzter Technologie in der Cloud relativ schnell aufbauen. Dies ist etwa für Testszenarien interessant. Planen Sie aber, Teile Ihrer lokalen Infrastruktur dauerhaft auszulagern, sollten Sie die Sicherheit nicht aus den Augen verlieren. In der Cloud warten hier ganz neue Security-Aspekte – und das gleich auf verschiedenen Ebenen. Im letzten Teil des Workshops geht es unter anderem darum, wie Sie mit Microsoft Defender for Cloud für Sicherheit sorgen und warum Sie den Zugriff auf virtuelle Server einschränken sollten.

Sicherheit in Microsoft Azure (2)

Hybride Szenarien lassen sich je nach eingesetzter Technologie in der Cloud relativ schnell aufbauen. Dies ist etwa für Testszenarien interessant. Planen Sie aber, Teile Ihrer lokalen Infrastruktur dauerhaft auszulagern, sollten Sie die Sicherheit nicht aus den Augen verlieren. In der Cloud warten hier ganz neue Security-Aspekte – und das gleich auf verschiedenen Ebenen. Im zweiten Workshop-Teil schildern wir, wie Sie auf der Kommandozeile für den Security-Feinschliff sorgen und wie Sie den Azure-Login absichern.

Identity Access Management vs. Identity Governance and Administration

Die IT-Sicherheit differenziert zwischen Identity Access Management (IAM) und Identity Governance and Administration (IGA). Beide sind für Sicherheit und Compliance essenziell, aber in ihren Funktionen leicht verwechselbar. Wer IAM und IGA differenzieren kann, dem bereiten Authentifizierung, Berechtigungsmanagement und Cyberangriffe weitaus weniger Kopfzerbrechen. Der Fachbeitrag klärt, wie sich IGA und IAM unterscheiden und warum beide Konzepte komplementär zu betrachten sind.