Schützen Sie Ihre bidirektionalen GraphQL- und gRPC-Streaming-APIs mit F5 NGINX App Protect WAF

NGINX | 27. April 2023

Die digitale Wirtschaft wächst seit der COVID-19-Pandemie weiter, wobei 90 % der Unternehmen ihre modernen Anwendungsarchitekturen ausbauen. Im F5 State of Application Strategy Report 2023 bezeichnen mehr als 40 % der 1.000 weltweit befragten IT-Entscheidungsträger ihre Anwendungsportfolios als „modern“. Dieser Anteil ist in den vergangenen Jahren stetig gestiegen und wird Prognosen zufolge bis 2025 die Marke von 50 % überschreiten. Mit der Zunahme moderner Anwendungen und der Nutzung von Microservices steigt jedoch auch die Zahl der APIs und API-Endpunkte, wodurch das Potenzial für Schwachstellen und die Angriffsfläche exponentiell wachsen.

Laut Continuous API Sprawl, einem Bericht des F5 Office of the CTO, gab es 2021 weltweit etwa 200 Millionen APIs. Bis 2030 dürfte diese Zahl auf fast 2 Milliarden steigen. Zusätzlich zu der Komplexität, die sich aus diesem rasanten API-Wachstum ergibt, stellt die Verwaltung verteilter Anwendungen in Hybrid- und Multi-Cloud-Umgebungen eine weitere Herausforderung dar. Die Befragten des 2023 State of Application Strategy Report nannten die komplexe Verwaltung mehrerer Tools und APIs als ihre größte Herausforderung bei der Bereitstellung von Anwendungen in Multi-Cloud-Umgebungen. Die einheitliche Anwendung von Sicherheitsrichtlinien und die Optimierung der Anwendungsleistung folgten gemeinsam auf einem knappen zweiten Platz.

Abbildung 1: Die größten Herausforderungen bei der Bereitstellung von Anwendungen in einer Multi-Cloud-Umgebung (Quelle: 2023 State of Application Strategy Report).

Warum API-Sicherheit für Ihr Geschäftsergebnis entscheidend ist

APIs sind nicht nur die Bausteine moderner Anwendungen, sondern bilden auch das Herzstück digitaler Geschäftsmodelle: 58 % der im F5-Bericht 2023 befragten Unternehmen geben an, mindestens die Hälfte ihres Umsatzes mit digitalen Diensten zu erzielen. APIs ermöglichen die Kommunikation zwischen Nutzern und Anwendungen sowie zwischen verschiedenen Anwendungen. Der Zugriff, den sie auf private Kundendaten und interne Unternehmensinformationen bieten, macht sie zu lukrativen Zielen für Angreifer. Im Jahr 2022 waren APIs der bevorzugte Angriffsvektor.

Der Schutz von APIs ist für eine umfassende Strategie zur Anwendungssicherheit von größter Bedeutung. Angriffe können verheerende Folgen haben, die weit über die Verletzung der Privatsphäre von Verbrauchern hinausgehen – so schlimm diese bereits ist. Besonders schwerwiegende Angriffe können die öffentliche Sicherheit gefährden und zum Verlust geistigen Eigentums führen. Im Folgenden finden Sie einige Beispiele für die verschiedenen Arten von API-Angriffen, die 2022 aufgetreten sind.

  • Verbraucherdatenschutz – Twitter war über mehrere Jahre hinweg von einem API-Angriff betroffen. Im Dezember 2022 stahlen Hacker die Profildaten und E-Mail-Adressen von 200 Millionen Twitter-Nutzern. Vier Monate zuvor entdeckten Forscher von CloudSEK 3.207 mobile Anwendungen, durch die gültige Twitter-API-Schlüssel und -Geheimnisse offengelegt wurden. Und einen Monat davor hatten Hacker eine API-Schwachstelle ausgenutzt, um Daten von 5,4 Millionen Nutzern zu erbeuten und zu verkaufen.
  • Öffentliche Sicherheit – Ein Forschungsteam entdeckte kritische API-Sicherheitslücken bei rund 20 führenden Automobilherstellern, darunter Toyota, Mercedes und BMW. Da heutzutage so viele Autos wie intelligente Geräte funktionieren, können Hacker weit mehr tun, als nur Fahrzeug-Identifizierungsnummern (FIN) und personenbezogene Daten von Fahrzeughaltern zu stehlen. Sie können den Standort von Fahrzeugen verfolgen und das Fernverwaltungssystem steuern. Dadurch können sie das Fahrzeug entriegeln und starten oder es vollständig außer Betrieb setzen.
  • Geistiges Eigentum – Ein gezielt angegriffener Mitarbeiter von CircleCI, einer CI/CD-Plattform, die von über einer Million Entwicklern weltweit zur Bereitstellung von Code genutzt wird, fiel einem Malware-Angriff zum Opfer. Dieser Mitarbeiter war berechtigt, Zugriffs-Token für die Produktionsumgebung zu generieren. Dadurch konnten Hacker die API-Schlüssel und Geheimnisse von Kunden stehlen. Der Sicherheitsvorfall blieb fast drei Wochen lang unbemerkt. Da CircleCI nicht feststellen konnte, ob die Geheimnisse eines Kunden gestohlen und für unbefugte Zugriffe auf Systeme von Drittanbietern verwendet worden waren, konnte das Unternehmen seinen Kunden lediglich empfehlen, ihre projektbezogenen und persönlichen API-Token zu erneuern.

Diese API-Angriffe sind warnende Beispiele. Wenn APIs Sicherheitslücken aufweisen und ungeschützt bleiben, können die langfristigen Folgen weit über finanzielle Schäden hinausgehen. Die Bedeutung der API-Sicherheit kann gar nicht hoch genug eingeschätzt werden.

Wie F5 NGINX Sie bei der Absicherung Ihrer APIs unterstützt

Die NGINX API Connectivity Stack-Lösung unterstützt Sie bei der Verwaltung Ihrer API-Gateways und APIs in Multi-Cloud-Umgebungen. Durch den Einsatz von NGINX Plus als API-Gateway zusammen mit NGINX App Protect WAF können Sie dazu beitragen, gängige API-Exploits zu verhindern und einzudämmen, die die drei wichtigsten im F5 2023 State of Application Strategy Report genannten API-Herausforderungen betreffen – die Bewältigung der API-Komplexität in Multi-Cloud-Umgebungen, die Durchsetzung von Sicherheitsrichtlinien und die Optimierung der Anwendungsleistung – sowie die im vorherigen Abschnitt beschriebenen Arten von API-Angriffen. NGINX Plus kann auf verschiedene Weise eingesetzt werden, unter anderem als API-Gateway, mit dem Sie API-Anfragen schnell weiterleiten, API-Clients authentifizieren und autorisieren, um Ihre APIs abzusichern, und den Datenverkehr begrenzen können, um Ihre API-basierten Dienste vor Überlastung zu schützen.

NGINX Plus bietet standardmäßig Schutz nicht nur vor den OWASP API Security Top 10-Schwachstellen. Darüber hinaus prüft es auf fehlerhafte Cookies sowie fehlerhaftes JSON und XML, validiert zulässige Dateitypen und Antwortstatuscodes und erkennt Verschleierungstechniken, mit denen Angriffe getarnt werden. Ein NGINX Plus-API-Gateway gewährleistet Schutz für HTTP- oder HTTP/2-API-Protokolle, einschließlich REST, GraphQL und gRPC.

NGINX App Protect WAF bietet schlanke, leistungsstarke Anwendungs- und API-Sicherheit, die über den grundlegenden Schutz vor den OWASP API Security Top 10 und den OWASP (Application) Top 10 hinausgeht und Schutz durch mehr als 7.500 fortschrittliche Signaturen, Bot-Signaturen und Bedrohungskampagnen bietet. Die Lösung ermöglicht eine Shift-Left-Strategie und die einfache Automatisierung der API-Sicherheit, um Security-as-Code in CI/CD-Pipelines zu integrieren. In Tests mit den WAFs von AWS, Azure und Cloudflare zeigte sich, dass NGINX App Protect WAF robuste Anwendungs- und API-Sicherheit bei gleichzeitig höherer Leistung und geringerer Latenz bietet. Weitere Einzelheiten finden Sie in diesem GigaOm-Bericht.

NGINX App Protect WAF ist in das NGINX Plus API-Gateway integriert, sodass der API-Datenverkehr eine Station weniger durchlaufen muss. Weniger Stationen zwischen den Schichten verringern Latenz, Komplexität und potenzielle Ausfallpunkte. Dies steht in deutlichem Gegensatz zu typischen API-Management-Lösungen, die nicht in eine WAF integriert sind (Sie müssen die WAF separat bereitstellen, und nach der Einrichtung muss der API-Datenverkehr die WAF und das API-Gateway getrennt durchlaufen). Die enge Integration von NGINX ermöglicht hohe Leistung ohne Abstriche bei der Sicherheit.

GraphQL und gRPC sind auf dem Vormarsch

App- und API-Entwickler suchen ständig nach neuen Möglichkeiten, Flexibilität, Geschwindigkeit sowie Benutzerfreundlichkeit und Bereitstellung zu verbessern. Laut dem API-Statusbericht 2022 von Postman ist REST nach wie vor das heute am häufigsten verwendete API-Protokoll (89 %), doch GraphQL (28 %) und gRPC (11 %) erfreuen sich weiterhin wachsender Beliebtheit. Letztlich hängt die Wahl des API-Protokolls stark vom Zweck der Anwendung und der besten Lösung für Ihr Unternehmen ab. Jedes Protokoll bietet seine eigenen Vorteile.

Warum GraphQL-APIs verwenden?

Zu den wichtigsten Vorteilen der Verwendung von GraphQL-APIs gehören:

  • Anpassungsfähigkeit – Der Client bestimmt die angeforderten Daten, den Datentyp und das Format.
  • Effizienz – Es werden keine überflüssigen Daten abgerufen, Anfragen werden anhand eines erstellten Schemas ausgeführt und die zurückgegebenen Daten entsprechen genau (und ausschließlich) den angeforderten Daten. Die Daten sind in Anfrage und Antwort identisch formatiert, wodurch GraphQL-APIs schnell, vorhersehbar und einfach skalierbar sind.
  • Flexibilität – Unterstützt mehr als ein Dutzend Sprachen und Plattformen.

GitHub ist ein bekannter Nutzer von GraphQL. Das Unternehmen wechselte 2016 aus Gründen der Skalierbarkeit und Flexibilität zu GraphQL.

Warum sollte man gRPC-APIs verwenden?

Zu den wichtigsten Vorteilen der Verwendung von gRPC-APIs gehören:

  • Leistung – Das schlanke, kompakte Datenformat minimiert den Ressourcenbedarf und ermöglicht eine schnelle Kodierung und Dekodierung von Nachrichten
  • Effizient – Das Protobufs-Datenformat optimiert die Kommunikation durch die Serialisierung strukturierter Daten
  • Zuverlässigkeit – HTTP/2 und TLS/SSL sind erforderlich, wodurch die Sicherheit standardmäßig erhöht wird

Der Großteil der Leistung wird auf Clientseite erbracht, während Verwaltung und Berechnungen auf einen Remote-Server ausgelagert werden, auf dem die Ressource gehostet wird. gRPC eignet sich für Anwendungsfälle, die regelmäßig eine bestimmte Menge an Daten oder Rechenleistung benötigen, beispielsweise für den Datenverkehr zwischen Microservices oder die Datenerfassung, bei der der Anfragende (etwa ein IoT-Gerät) mit begrenzten Ressourcen auskommen muss.

Netflix ist ein Beispiel für einen bekannten Nutzer von gRPC-APIs.

Schützen Sie Ihre GraphQL-APIs mit NGINX App Protect WAF

NGINX App Protect WAF unterstützt jetzt GraphQL-APIs zusätzlich zu REST- und gRPC-APIs. Die Lösung schützt GraphQL-APIs, indem sie Angriffssignaturen anwendet, bösartige Exploits abwehrt und vor Angriffen schützt. GraphQL-Datenverkehr wird nativ geparst, sodass NGINX App Protect WAF Verstöße anhand der GraphQL-Syntax und des GraphQL-Profils erkennen und Angriffssignaturen anwenden kann. Dank der Transparenz bei Introspektionsabfragen kann NGINX App Protect WAF diese ebenso blockieren wie erkannte Muster in Antworten. Diese Methode hilft dabei, Angriffe zu erkennen und Signaturen in den entsprechenden Segmenten einer Nutzlast auszuführen, wodurch sich Fehlalarme reduzieren lassen.

Erfahren Sie in dieser Demo, wie NGINX App Protect WAF Ihre GraphQL-APIs vor Angriffen schützen kann.

 

Vorteile der GraphQL-API-Sicherheit mit NGINX App Protect WAF:

  • Sicherheitsparameter definieren – Legen Sie gemäß den Richtlinien Ihres Unternehmens die Gesamtlänge und die Werte der Parameter in der GraphQL-Vorlage und im Inhaltsprofil als Teil der Anwendungssicherheitsrichtlinie fest
  • Fehlalarme reduzieren – Verbessern Sie die Genauigkeit der Angriffsabwehr durch granulare Kontrollen, um Angriffe in einer GraphQL-Anfrage besser zu erkennen
  • Böswillige Ausnutzung eindämmen – Legen Sie die maximale Anzahl gebündelter Abfragen in einer HTTP-Anfrage fest, um das Risiko böswilliger Ausnutzung und von Angriffen zu verringern
  • DoS-Angriffe verhindern – Konfigurieren Sie die maximale Strukturtiefe in Inhaltsprofilen, um durch rekursive Abfragen verursachte DoS-Angriffe zu verhindern
  • API-Risiken begrenzen – Schränken Sie Introspektionsabfragen ein, um zu verhindern, dass Hacker die API-Struktur nachvollziehen können, was zu einer Sicherheitsverletzung führen kann

Bidirektionale gRPC-Streaming-APIs mit NGINX App Protect WAF absichern

NGINX App Protect WAF unterstützt jetzt bidirektionales gRPC-Streaming zusätzlich zu unären Nachrichtentypen. So können Sie gRPC-basierte APIs absichern, die Nachrichtenstreams verwenden (clientseitig, serverseitig oder beides). Dies bietet umfassende Sicherheit für gRPC-APIs, unabhängig von der Kommunikationsart.

NGINX App Protect WAF schützt gRPC-APIs, indem es Ihr Schema durchsetzt, Größenbeschränkungen festlegt, unbekannte Dateien blockiert und DoS-Angriffe verhindert, die auf eine Erschöpfung der Ressourcen abzielen. Sie können Ihre IDL-Datei (Interface Definition Language) in NGINX App Protect WAF importieren, damit die Struktur und das Schema Ihrer gRPC-Nachrichten durchgesetzt und diese an den richtigen Stellen auf Angriffe überprüft werden können. Dies ermöglicht die präzise Erkennung von Versuchen, Ihre Anwendung über gRPC auszunutzen, und vermeidet Fehlalarme, die auftreten können, wenn ohne Kontext an den falschen Stellen nach Sicherheitsbedrohungen gesucht wird.

Erfahren Sie in dieser Demo, wie NGINX App Protect WAF Ihre bidirektionalen gRPC-APIs vor Angriffen schützen kann.

 

Vorteile der gRPC-API-Sicherheit mit NGINX App Protect WAF:

  • Umfassender gRPC-Schutz – Vollständige Sicherheit für alle Kommunikationsarten, von unärem bis hin zu bidirektionalem Streaming
  • Fehlalarme reduzieren – Höhere Genauigkeit durch die Durchsetzung der gRPC-Nachrichtenstruktur und des Schemas zur besseren Erkennung von Angriffen in einer gRPC-Anfrage
  • Schädliche Exploits blockieren – Durchsetzung des korrekten Typs und der erwarteten Inhalte für jedes Feld in der gRPC-Nachricht sowie die Möglichkeit, unbekannte Felder zu blockieren
  • DoS-Angriffe verhindern – Begrenzung der Nachrichtengröße, um DoS-Angriffe durch Ressourcenerschöpfung zu verhindern

Sowohl SecOps- als auch API-Entwicklungsteams können die API-Sicherheit verwalten und automatisieren

Laut Postmans „2022 State of the API Report“ gaben 20 % der 37.000 befragten Entwickler und API-Fachleute an, dass es in ihrem Unternehmen mindestens einmal im Monat zu API-Vorfällen kommt, die zu Datenverlust, Dienstausfällen, Missbrauch oder unbefugtem Zugriff führen. Im Gegensatz dazu waren 52 % der Befragten seltener als einmal pro Jahr von einem API-Angriff betroffen. Dies unterstreicht, wie wichtig es ist, Sicherheit im Rahmen einer Shift-Left-Strategie für API-Sicherheit frühzeitig zu berücksichtigen. Da APIs häufiger veröffentlicht werden als Anwendungen, kommt eine Shift-Left-Strategie zunehmend auch bei der API-Sicherheit zum Einsatz. Wenn Unternehmen eine Shift-Left-Kultur etablieren und Security-as-Code in CI/CD-Pipelines integrieren, verankern sie Sicherheit in jeder Phase der API-Entwicklung, ermöglichen Entwicklern weiterhin agiles Arbeiten und beschleunigen die Bereitstellung.

Diagramm, das zeigt, wie sich mit Security-as-Code, NGINX App Protect WAF, Jenkins und Ansible ein Shift-Left-Ansatz umsetzen lässt
Abbildung 2: NGINX App Protect WAF ermöglicht die Integration von API-Sicherheit in CI/CD-Pipelines und bietet so automatisierten Schutz über den gesamten API-Lebenszyklus hinweg.

Ein zentraler Bereich, in dem der Schutz API-spezifisch sein muss, ist die Validierung von API-Schemata, einschließlich gRPC-IDL-Dateien und GraphQL-Abfragen. Schemata sind für jede API einzigartig und ändern sich mit jeder API-Version. Bei der Automatisierung des API-Schemas müssen Sie bei jeder Aktualisierung einer API auch die Konfiguration und den Code in dieser Datei aktualisieren. WAF-Konfigurationen können automatisiert bereitgestellt werden, um mit Änderungen an API-Versionen Schritt zu halten. NGINX App Protect WAF kann Schemata validieren und überprüfen, ob Anfragen den von der API unterstützten Vorgaben entsprechen (Methoden, Endpunkte, Parameter usw.). NGINX App Protect WAF ermöglicht eine konsistente Anwendungssicherheit mit deklarativen Richtlinien, die von SecOps-Teams erstellt werden können. Gleichzeitig können API-Entwicklungsteams die API-Sicherheit verwalten und bereitstellen, um eine präzisere Kontrolle und höhere Agilität zu erreichen. Wenn Sie Ihre API-Sicherheit in Hybrid- und Multi-Cloud-Umgebungen skalierbar automatisieren möchten, kann NGINX App Protect WAF Sie dabei unterstützen.

Zusammenfassung

Moderne Anwendungsportfolios wachsen kontinuierlich, und durch den Einsatz von Microservices nimmt die Zahl der APIs noch stärker zu. API-Sicherheit ist komplex und anspruchsvoll, insbesondere für Unternehmen, die in Hybrid- oder Multi-Cloud-Umgebungen arbeiten. Mangelnde API-Sicherheit kann über finanzielle Kosten hinaus verheerende Langzeitfolgen haben. NGINX App Protect WAF bietet umfassende API-Sicherheit, einschließlich Schutz für Ihre REST-, GraphQL- und gRPC-APIs, und unterstützt Ihre SecOps- und API-Teams dabei, Sicherheitsmaßnahmen frühzeitig in den Entwicklungsprozess zu integrieren und über den gesamten API-Lebenszyklus sowie in verteilten Umgebungen zu automatisieren.

Testen Sie NGINX App Protect WAF noch heute mit einer 30-tägigen kostenlosen Testversion.

Weitere Ressourcen

Blog: Schützen Sie Ihr API-Gateway mit NGINX App Protect WAF
E-Book: Moderne App- und API-Sicherheit
E-Book: API-Architektur meistern – von O’Reilly
Datenblatt: NGINX App Protect WAF


Teilen

Über den Autor

Thelen Blum
Thelen BlumSenior Product Marketing Manager, NGINX App Protect | F5

Weitere Blogbeiträge von Thelen Blum

Ähnliche Blogbeiträge

Die Zukunft von NGINX: Zurück zu unseren Open-Source-Wurzeln
NGINX | 23.08.2022

Die Zukunft von NGINX: Zurück zu unseren Open-Source-Wurzeln

Beim NGINX Sprint 2022 besinnen wir uns auf unsere Open-Source-Wurzeln. Erfahren Sie mehr über die Initiativen, die wir im kommenden Jahr verfolgen, und teilen Sie uns mit, was Sie sich wünschen.

Ein Leitfaden zur Auswahl eines Ingress-Controllers, Teil 1: Ermitteln Sie Ihre Anforderungen
NGINX | 08.09.2021

Ein Leitfaden zur Auswahl eines Ingress-Controllers, Teil 1: Ermitteln Sie Ihre Anforderungen

Ein Ingress-Controller kann eines der leistungsstärksten Tools in Ihrem Kubernetes-Stack sein. Erfahren Sie, wie Sie Ihre Ingress-Anforderungen ermitteln, um die beste Option auszuwählen.

Bereitstellung des NGINX Ingress Controllers auf Amazon EKS: So haben wir getestet
NGINX | 16.08.2021

Bereitstellung des NGINX Ingress Controllers auf Amazon EKS: So haben wir getestet

Wir haben kürzlich den Lösungsleitfaden zum NGINX Ingress Controller um Empfehlungen zur Dimensionierung für Amazon Elastic Kubernetes Service (EKS) ergänzt. In diesem Blogbeitrag erläutern wir, wie wir diese Empfehlungen erarbeitet haben, und stellen Ihnen alle Informationen zur Verfügung, die Sie benötigen, um selbst ähnliche Tests durchzuführen.

Protokollierung des Datenverkehrs zwischen NGINX und Upstream-Servern bei CDN77
NGINX | 12.12.2018

Protokollierung des Datenverkehrs zwischen NGINX und Upstream-Servern bei CDN77

Bei der Fehlersuche bei Datenverkehrsproblemen zwischen NGINX und Upstream-Servern konnte CDN77 die benötigten Daten nur aus dem Fehlerprotokoll mit aktivierter Debug-Ausgabe beziehen, was die Leistung beeinträchtigt und riesige Dateien erzeugt. Daher entwickelte das Team ein neues benutzerdefiniertes Modul, das ausschließlich die benötigten Daten protokolliert.

Ankündigung von NGINX Plus R16
NGINX | 05.09.2018

Ankündigung von NGINX Plus R16

NGINX Plus R16 ist eine einheitliche, elastische Ingress- und Egress-Schicht für Anwendungen, die die Funktionen eines Load Balancers, API-Gateways und einer WAF vereint und neue Features wie clusterfähige Ratenbegrenzung, Schlüssel-Wert-Speicher, „Random with Two Choices“, verbessertes UDP-Load-Balancing und vieles mehr bietet.

5 Gründe für den Umstieg auf softwarebasiertes Load Balancing
NGINX | 13.10.2016

5 Gründe für den Umstieg auf softwarebasiertes Load Balancing

Entdecken Sie fünf Gründe für den Wechsel zu einem softwarebasierten Load Balancer wie NGINX Plus, darunter Kosteneinsparungen, die Einführung von DevOps und eine einheitliche Lösung für alle Umgebungen.