In unserem vorherigen Material zum Thema Cloud haben wir , wie man IT-Ressourcen in der Public Cloud schĂŒtzt und warum traditionelle Antivirenlösungen dafĂŒr nicht ganz geeignet sind. In diesem Beitrag setzen wir das Thema Cloud-Sicherheit fort und sprechen ĂŒber die Entwicklung von WAF und darĂŒber, was besser zu wĂ€hlen ist: Hardware, Software oder Cloud.Â

Was ist WAF
MĂĄs de 75 % der Hackerangriffe zielen auf Schwachstellen in Webanwendungen und Websites ab: Solche Angriffe sind in der Regel fĂŒr die Informationssicherheitsinfrastruktur und -dienste nicht erkennbar. Schwachstellen in Webanwendungen bergen wiederum Risiken von Kompromittierung und Betrug bei Benutzerkonten und personenbezogenen Daten, Passwörtern, Kreditkartennummern. DarĂŒber hinaus dienen Schwachstellen auf Websites Cyberkriminellen als Einstiegspunkt in das Unternehmensnetzwerk.
Ein Webanwendungsfirewall (WAF) ist eine Schutzmauer, die Angriffe auf Webanwendungen blockiert: SQL-Injection, Cross-Site-Scripting, Remote Code Execution, Brute Force und Authentifizierungsumgehung (Auth Bypass). Dazu gehören auch Angriffe, die Zero-Day-Schwachstellen ausnutzen. Anwendungsfirewalls bieten Schutz, indem sie den Inhalt von Webseiten ĂŒberwachen, einschlieĂlich HTML, DHTML und CSS, und potenziell schĂ€dliche HTTP/HTTPS-Anfragen filtern.
Wie sahen die ersten Lösungen aus?
Die ersten Versuche, eine Webanwendungsfirewall zu entwickeln, wurden bereits zu Beginn der 90er Jahre unternommen. Es ist bekannt, dass mindestens drei Ingenieure in diesem Bereich tÀtig waren. Der erste ist Professor der Informatik Jean Spafford von der Purdue University. Er beschrieb die Architektur einer Anwendungsfirewall mit Proxy und veröffentlichte sie 1991 in seinem Buch .
Die zweiten und dritten waren die Informationssicherheitsexperten William Cheswick und Marcus Ranum von Bell Labs. Sie entwickelten einen der ersten Prototypen von Anwendungsfirewalls. Die Verbreitung ĂŒbernahm das Unternehmen DEC â das Produkt wurde unter dem Namen SEAL (Secure External Access Link) veröffentlicht.
SEAL war jedoch keine vollwertige WAF-Lösung. Es handelte sich um eine klassische Netzwerkwall mit erweiterten Funktionen â der Möglichkeit, Angriffe auf FTP und RSH zu blockieren. Aus diesem Grund gilt heute das Produkt des Unternehmens Perfecto Technologies (spĂ€ter Sanctum) als erste WAF-Lösung. Im Jahr 1999 brachte es heraus. AppShield-System. Zu dieser Zeit entwickelte Perfecto Technologies Informationssicherheitslösungen fĂŒr den E-Commerce, und die Zielgruppe ihres neuen Produkts waren Online-Shops. AppShield konnte HTTP-Anfragen analysieren und Angriffe basierend auf dynamischen Informationssicherheitsrichtlinien blockieren.
Etwa zur gleichen Zeit wie AppShield (im Jahr 2002) wurde das erste Open-Source-WAF eingefĂŒhrt. Es wurde . Es wurde mit dem Ziel entwickelt, WAF-Technologien populĂ€r zu machen, und wird bis heute von der IT-Community unterstĂŒtzt (hier ist sein ). ModSecurity blockiert Angriffe auf Anwendungen, basierend auf einem standardmĂ€Ăigen Satz von regulĂ€ren AusdrĂŒcken (Signaturen) â Tools zur ĂberprĂŒfung von Anfragen anhand von Mustern â .
Insgesamt gelang es den Entwicklern, ihr Ziel zu erreichen â neue WAF-Lösungen begannen auf dem Markt zu erscheinen, darunter auch solche, die auf ModSecurity basieren.
Drei Generationen â bereits Geschichte
Es ist ĂŒblich, drei Generationen von WAF-Systemen zu unterscheiden, die sich mit der Weiterentwicklung der Technologie entwickelt haben.
Die erste Generation. Arbeitet mit regulĂ€ren AusdrĂŒcken (oder Grammatiken). Dazu gehört ModSecurity. Der Anbieter des Systems untersucht die Arten von Angriffen auf Anwendungen und erstellt Muster, die legitime und potenziell schĂ€dliche Anfragen beschreiben. WAF vergleicht sich mit diesen Listen und entscheidet, was in einer bestimmten Situation zu tun ist â den Datenverkehr zu blockieren oder nicht.
Ein Beispiel fĂŒr die Erkennung auf Basis von regulĂ€ren AusdrĂŒcken ist das bereits erwĂ€hnte Projekt aus open source. Ein weiteres Beispiel ist , das ebenfalls Open Source ist. Systeme mit regulĂ€ren AusdrĂŒcken haben eine Reihe von Nachteilen, insbesondere wenn eine neue Schwachstelle entdeckt wird, muss der Administrator zusĂ€tzliche Regeln manuell erstellen. Bei einer umfangreichen IT-Infrastruktur können es mehrere tausend Regeln sein. Mit einer solchen Anzahl von regulĂ€ren AusdrĂŒcken umzugehen, ist ziemlich schwierig, ganz zu schweigen davon, dass deren ĂberprĂŒfung die Netzwerkleistung beeintrĂ€chtigen kann.
RegulĂ€re AusdrĂŒcke weisen ebenfalls eine relativ hohe Rate an Fehlalarmen auf. Der berĂŒhmte Linguist Noam Chomsky schlug eine Klassifikation von Grammatiken vor, die sie in vier bedingte Schwierigkeitsgrade unterteilt. GemÀà dieser Klassifikation können regulĂ€re AusdrĂŒcke nur Regeln fĂŒr Firewalls beschreiben, die keine Abweichungen vom Muster vorsehen. Das bedeutet, dass Angreifer WAFs der ersten Generation leicht "ĂŒberlisten" können. Eine Methode zur BekĂ€mpfung dessen besteht darin, spezielle Zeichen zu den Anfragen an die Anwendungen hinzuzufĂŒgen, die die Logik der schĂ€dlichen Daten nicht beeinflussen, aber die Signaturregel verletzen.

Die zweite Generation. Um die Probleme im Zusammenhang mit der Leistung und Genauigkeit von WAFs zu umgehen, wurden Firewalls der zweiten Generation entwickelt. In diesen wurden Parser eingefĂŒhrt, die dafĂŒr zustĂ€ndig sind, eindeutig definierte Angriffsarten (auf HTML, JS usw.) zu identifizieren. Diese Parser arbeiten mit speziellen Tokens, die die Anfragen beschreiben (z.B. variable, string, unknown, number). Potenziell schĂ€dliche Tokenfolgen werden in eine separate Liste ausgegliedert, mit der das WAF-System regelmĂ€Ăig abgeglichen wird. Dieser Ansatz wurde erstmals auf der Black Hat 2012 Konferenz in Form einer C/C++ , die es ermöglicht, SQL-Injektionen zu erkennen.
Im Vergleich zu WAFs der ersten Generation können spezialisierte Parser schneller arbeiten. Dennoch haben sie die Herausforderungen im Zusammenhang mit der manuellen Anpassung des Systems bei neuen schÀdlichen Angriffen nicht gelöst.

Die dritte Generation. Die Evolution der Erkennung logischer Mechanismen der dritten Generation beruht auf dem Einsatz von Methoden des maschinellen Lernens, die es ermöglichen, die Erkennungsgrammatik maximal an die echte Grammatik von SQL/HTML/JS der geschĂŒtzten Systeme anzupassen. Diese Erkennungslogik kann die Turingmaschine anpassen, um rekursiv aufgelistete Grammatiken zu erfassen. Zuvor war die Aufgabe, eine anpassbare Turingmaschine zu schaffen, unlösbar, bis die ersten Forschungen ĂŒber neuronale Turingmaschinen veröffentlicht wurden.
Maschinelles Lernen bietet die einzigartige Möglichkeit, jede Grammatik anzupassen, um jeden Typ von Angriff zu erfassen, ohne manuell Signaturlisten zu erstellen, wie es bei der Erkennung der ersten Generation erforderlich war, und ohne neue Tokenizer/Parser fĂŒr neue Angriffstypen wie Memcached-, Redis-, Cassandra- oder SSRF-Exploits entwickeln zu mĂŒssen, wie es die Methodik der zweiten Generation verlangte.
Indem wir alle drei Generationen der Erkennungslogik kombinieren, können wir ein neues Diagramm zeichnen, in dem die dritte Generation der Erkennung (Abb. 3) rot umrissen dargestellt ist. Zu dieser Generation gehört eine der Lösungen, die wir gemeinsam mit âOnsecâ, dem Entwickler der Plattform fĂŒr adaptive Webanwendungs- und API-Sicherheit Valarm, in der Cloud implementieren.
Jetzt wird in der Erkennungslogik Feedback von der Anwendung zur Selbstjustierung verwendet. Im Rahmen des maschinellen Lernens wird dieser Feedbackzyklus als âVerstĂ€rkungâ bezeichnet. In der Regel gibt es einen oder mehrere Typen solcher VerstĂ€rkungen:
- Analyse des Verhaltens der Antwort der Anwendung (passiv)
- Scannen/Phasen (aktiv)
- Berichtdateien/Interception-Prozeduren/Fallen (nachtrÀglich)
- Manuell (vom Supervisor festgelegt)
Infolgedessen löst die Erkennung der dritten Generation auch ein wichtiges Problem der Genauigkeit. Es ist jetzt möglich, nicht nur Fehlalarme und falsche Negative zu vermeiden, sondern auch zulÀssige echte Negative zu erkennen, wie z. B. das Erkennen der Verwendung eines SQL-Befehls in einem Dashboard, das Hochladen von Webseitenvorlagen, JavaScript-Fehler-bedingte AJAX-Anfragen und andere.

![]()

Als nÀchstes betrachten wir die technologischen Möglichkeiten verschiedener Implementierungsvarianten von WAF.
Hardware, Software oder Cloud â was wĂ€hlen?
Eine der Implementierungsoptionen fĂŒr Anwendungsfirewalls ist eine âHardwareâ-Lösung. Solche Systeme sind spezialisierteComputing-GerĂ€te, die das Unternehmen lokal in seinem Rechenzentrum installiert. In diesem Fall mĂŒssen jedoch eigene Hardware angeschafft und Geld fĂŒr Integratoren ausgegeben werden, um diese einzurichten und zu debuggen (wenn das Unternehmen keine eigene IT-Abteilung hat). Zudem veraltet jede Hardware und wird unbrauchbar, weshalb die Kunden gezwungen sind, ein Budget fĂŒr Hardware-Upgrades einzuplanen.
Eine andere Variante der Bereitstellung von WAF ist die Softwareimplementierung. Die Lösung wird als ErgĂ€nzung zu einer Software (zum Beispiel wird ModSecurity ĂŒber Apache konfiguriert) installiert und lĂ€uft auf demselben Server. In der Regel können solche Lösungen sowohl auf physischen Servern als auch in der Cloud bereitgestellt werden. Ihr Nachteil sind die eingeschrĂ€nkten Möglichkeiten der Skalierbarkeit und der UnterstĂŒtzung durch den Anbieter.
Die dritte Möglichkeit ist die Konfiguration von WAF aus der Cloud. Solche Lösungen werden von Cloud-Anbietern als Abonnementdienst angeboten. Unternehmen mĂŒssen keine spezielle Hardware erwerben oder konfigurieren; diese Aufgaben fallen in den Verantwortungsbereich des Dienstanbieters. Ein wichtiger Punkt: Moderne Cloud-WAFs erfordern keine Migration der Ressourcen auf die Plattform des Anbieters. Die Website kann ĂŒberall bereitgestellt werden, sogar on-premise.
Warum immer mehr auf Cloud-WAFs geschaut wird, erklÀren wir im Folgenden.
Was kann eine WAF in der Cloud?
Aus technologischer Sicht:
- FĂŒr die Updates ist der Anbieter verantwortlich. WAF wird im Abonnement bereitgestellt, daher kĂŒmmert sich der Dienstanbieter um die AktualitĂ€t von Updates und Lizenzen. Die Updates betreffen nicht nur die Software, sondern auch die Hardware. Der Anbieter aktualisiert den Serverpark und kĂŒmmert sich um dessen Wartung. Er ist auch fĂŒr die Lastverteilung und das Backup verantwortlich. Im Falle eines Fehlers beim WAF-Server wird der Datenverkehr sofort auf einen anderen Server umgeleitet. Eine rationelle Verteilung des Datenverkehrs hilft, Situationen zu vermeiden, in denen die Firewall in den Fail-Open-Modus wechselt â sie mit der Last nicht fertig wird und aufhört, Anfragen zu filtern.
- Virtuelles Patching. Virtuelle Patches beschrĂ€nken den Zugriff auf kompromittierte Teile der Anwendung, bis der Entwickler die Schwachstelle schlieĂt. Dadurch kann der Kunde des Cloud-Anbieters in Ruhe warten, bis der Anbieter der jeweiligen Software offizielle "Updates" veröffentlicht. Dies so schnell wie möglich zu tun, hat fĂŒr den Softwareanbieter PrioritĂ€t. Beispielsweise ist in der Plattform "Valarm" ein separates Softwaremodul fĂŒr das virtuelle Patchen zustĂ€ndig. Der Administrator kann benutzerdefinierte regulĂ€re AusdrĂŒcke hinzufĂŒgen, um bösartige Anfragen zu blockieren. Das System ermöglicht es, bestimmte Anfragen mit dem Tag "Vertrauliche Daten" zu kennzeichnen. Dann werden ihre Parameter maskiert und sie werden unter keinen UmstĂ€nden auĂerhalb des Arbeitsbereichs der Firewall ĂŒbertragen.
- Integrierter Scanner fĂŒr Perimeter und Schwachstellen. Dies ermöglicht es, die Netzgrenzen der IT-Infrastruktur selbststĂ€ndig zu bestimmen, unter Verwendung von Daten aus DNS-Anfragen und dem WHOIS-Protokoll. Danach analysiert das WAF automatisch die innerhalb des Perimeters laufenden Dienste und Services (fĂŒhrt Port-Scans durch). Die Firewall kann alle gĂ€ngigen Schwachstellentypen erkennen â SQLi, XSS, XXE usw. â und Konfigurationsfehler in der Software aufdecken, wie beispielsweise unbefugten Zugriff auf Git- und Bitbucket-Repositories sowie anonymen Zugriff auf Elasticsearch, Redis, MongoDB.
- Angriffe werden von den Cloud-Ressourcen ĂŒberwacht. In der Regel verfĂŒgen Cloud-Anbieter ĂŒber groĂe Mengen an Rechenleistung. Das ermöglicht eine hochprĂ€zise und schnelle Bedrohungsanalyse. In der Cloud wird ein Cluster von Filterknoten bereitgestellt, durch die der gesamte Datenverkehr flieĂt. Diese Knoten blockieren Angriffe auf Webanwendungen und senden Statistiken an das Analytics-Zentrum. Dieses verwendet Algorithmen des maschinellen Lernens, um die Blockierungsregeln fĂŒr alle geschĂŒtzten Anwendungen zu aktualisieren. Die Umsetzung eines solchen Schemas ist in Abb. 4 dargestellt. Solche angepassten Sicherheitsregeln minimieren die Anzahl falscher Positiver der Firewall.

Nun ein wenig zu den Besonderheiten von Cloud-WAF aus organisatorischer Sicht und im Management:
- Ăbergang zu OpEx. Bei Cloud-WAFs liegen die Implementierungskosten bei null, da der Anbieter bereits die gesamte Hardware und die Lizenzen bezahlt hat; die Zahlung fĂŒr den Dienst erfolgt im Abonnement.
- Verschiedene TarifplĂ€ne. Ein Benutzer des Cloud-Services kann schnell zusĂ€tzliche Optionen aktivieren oder deaktivieren. Die Verwaltung der Funktionen erfolgt ĂŒber ein einheitliches Steuerpanel, das ebenfalls geschĂŒtzt ist. Der Zugang erfolgt ĂŒber HTTPS, zudem gibt es ein zweifaktorisches Authentifizierungsverfahren auf Basis des TOTP-Protokolls (Time-based One-Time Password Algorithm).
- DNS-Anbindung. Sie können selbststĂ€ndig die DNS Ă€ndern und die Netzwerkrouting konfigurieren. FĂŒr diese Aufgaben mĂŒssen keine speziellen FachkrĂ€fte eingestellt und geschult werden. In der Regel kann der technische Support des Anbieters bei der Konfiguration unterstĂŒtzen.
WAF-Technologien haben sich von einfachen NetzwerkschutzmaĂnahmen mit heuristischen Regeln zu komplexen Schutzsystemen mit Algorithmen des maschinellen Lernens entwickelt. Heutzutage verfĂŒgen Web Application Firewalls ĂŒber ein breites Spektrum an Funktionen, die in den 90er Jahren schwer umsetzbar waren. In vielerlei Hinsicht wurde das Aufkommen neuer FunktionalitĂ€ten durch Cloud-Technologien ermöglicht. WAF-Lösungen und deren Komponenten entwickeln sich weiter. Genau wie andere Bereiche der Informationssicherheit.
Der Text wurde von Alexander Karpuzikov, Produktentwicklungsmanager fĂŒr die Informationssicherheit des Cloud-Anbieters #CloudMTS, verfasst.
Quelle: habr.com
