BLOG | NGINX

Sichern Sie Ihre bidirektionalen GraphQL- und gRPC-Streaming-APIs mit F5 NGINX App Protect WAF

NGINX-Teil-von-F5-horiz-schwarz-Typ-RGB
Thelen Blum Miniaturbild
Thelen Blum
Veröffentlicht am 27. April 2023

Die digitale Wirtschaft wächst seit der COVID-19-Pandemie weiter und 90 % der Unternehmen erweitern ihre modernen App-Architekturen. Im State of Application Strategy Report 2023 von F5 beschreiben mehr als 40 % der 1.000 befragten globalen IT-Entscheidungsträger ihr App-Portfolio als „modern“. Dieser Prozentsatz ist in den letzten Jahren stetig gestiegen und wird Prognosen zufolge bis 2025 die Marke von 50 % überschreiten. Allerdings geht mit der Zunahme moderner Apps und der Nutzung von Microservices auch eine Verbreitung von APIs und API-Endpunkten einher, wodurch das Potenzial für Schwachstellen und die Angriffsfläche exponentiell zunimmt.

Laut „Continuous API Sprawl“ , einem Bericht des F5 Office of the CTO, gab es im Jahr 2021 weltweit etwa 200 Millionen APIs, und bis 2030 dürfte diese Zahl auf fast 2 Milliarden ansteigen.  Die Komplexität, die sich aus diesem schnellen API-Wachstum ergibt, wird noch dadurch vergrößert, dass es schwierig ist, verteilte Anwendungen in Hybrid- und Multi-Cloud-Umgebungen zu verwalten. Die Teilnehmer des State of Application Strategy Report 2023 nannten die Komplexität der Verwaltung mehrerer Tools und APIs als ihre größte Herausforderung bei der Bereitstellung von Apps in Multi-Cloud-Umgebungen. Die Anwendung konsistenter Sicherheitsrichtlinien und die Optimierung der App-Leistung belegten knapp den zweiten Platz.

Abbildung 1: Die größten Herausforderungen bei der Bereitstellung von Apps in einer Multi-Cloud-Umgebung (Quelle: Bericht zur Anwendungsstrategie 2023).

Warum API-Sicherheit für Ihr Endergebnis von entscheidender Bedeutung ist

APIs sind nicht nur die Bausteine moderner Anwendungen, sondern auch das Herzstück des digitalen Geschäfts – 58 % der im F5-Bericht 2023 befragten Unternehmen geben an, dass sie mindestens die Hälfte ihres Umsatzes mit digitalen Diensten erzielen. APIs ermöglichen die Kommunikation zwischen Benutzern und Apps sowie zwischen Apps. Der Zugriff auf private Kundendaten und interne Unternehmensinformationen macht sie zu lukrativen Zielen für Angreifer. APIs waren im Jahr 2022 der Angriffsvektor der Wahl.

Der Schutz von APIs ist in einer umfassenden Anwendungssicherheitsstrategie von größter Bedeutung. Angriffe können verheerende Folgen haben, die weit über die Verletzung der Privatsphäre von Verbrauchern hinausgehen (so schlimm das auch ist) und einen schwerwiegenderen Grad an Schwere aufweisen, der die öffentliche Sicherheit gefährdet und zum Verlust geistigen Eigentums führt. Hier sind einige Beispiele für jede dieser Arten von API-Angriffen, die im Jahr 2022 aufgetreten sind.

  • Datenschutz für Verbraucher – Twitter war über mehrere Jahre hinweg Opfer eines API-Angriffs. Im Dezember 2022 stahlen Hacker die Profildaten und E-Mail-Adressen von 200 Millionen Twitter-Nutzern . Vier Monate zuvor hatten Forscher von CloudSEK 3.207 mobile Anwendungen entdeckt, die gültige Twitter-API-Schlüssel und -Geheimnisse preisgaben. Und einen Monat zuvor hatten Hacker eine API-Schwachstelle ausgenutzt, um Daten von 5,4 Millionen Benutzern zu erbeuten und zu verkaufen.
  • Öffentliche Sicherheit – Ein Forscherteam hat bei etwa 20 führenden Automobilherstellern, darunter Toyota, Mercedes und BMW , kritische API-Sicherheitslücken entdeckt. Da sich heutzutage so viele Autos wie intelligente Geräte verhalten, können Hacker weit mehr tun, als nur Fahrgestellnummern und persönliche Informationen der Autobesitzer zu stehlen. Sie können den Standort des Fahrzeugs verfolgen und das Fernverwaltungssystem steuern, sodass sie das Fahrzeug entriegeln und starten oder es vollständig deaktivieren können.
  • Geistiges Eigentum – Ein Mitarbeiter von CircleCI , einer CI/CD-Plattform, die von über einer Million Entwicklern weltweit zum Ausliefern von Code genutzt wird, wurde Opfer eines Schadsoftware-Angriffs. Dieser Mitarbeiter verfügte über die Berechtigung, Produktionszugriffstoken zu generieren, wodurch Hacker die API-Schlüssel und -Geheimnisse von Kunden stehlen konnten. Der Verstoß blieb fast drei Wochen lang unbemerkt. Da CircleCI nicht feststellen konnte, ob die Geheimnisse eines Kunden gestohlen und für einen unbefugten Zugriff auf Systeme Dritter verwendet wurden, konnte das Unternehmen den Kunden nur raten, Projekt- und persönliche API-Token zu rotieren.

Diese API-Angriffe dienen als warnendes Beispiel. Wenn APIs Sicherheitslücken aufweisen und ungeschützt bleiben, können die langfristigen Folgen weit über die finanziellen Kosten hinausgehen. Die Bedeutung der API-Sicherheit kann nicht genug betont werden.

So hilft Ihnen F5 NGINX beim Sichern Ihrer APIs

Mit der NGINX API Connectivity Stack- Lösung können Sie Ihre API-Gateways und APIs in Multi-Cloud-Umgebungen verwalten. Indem Sie NGINX Plus als Ihr API-Gateway mit NGINX App Protect WAF bereitstellen, können Sie dazu beitragen, gängige API-Exploits zu verhindern und abzuschwächen. Diese befassen sich mit den drei größten API-Herausforderungen, die im F5 2023 State of Application Strategy Report identifiziert wurden – Verwaltung der API-Komplexität in Multi-Cloud-Umgebungen, Gewährleistung von Sicherheitsrichtlinien und Optimierung der App-Leistung – sowie mit den Arten von API-Angriffen, die im vorherigen Abschnitt besprochen wurden. NGINX Plus kann auf verschiedene Weise verwendet werden, unter anderem als API-Gateway, wo Sie API-Anfragen schnell weiterleiten, API-Clients authentifizieren und autorisieren können, um Ihre APIs zu sichern, und den Datenverkehr begrenzen können, um Ihre API-basierten Dienste vor Überlastung zu schützen.

NGINX Plus bietet sofort einsatzbereiten Schutz nicht nur gegen die Top 10 der OWASP API Security-Schwachstellen. Darüber hinaus prüft es, ob Cookies, JSON und XML fehlerhaft sind, validiert zulässige Dateitypen und Antwortstatuscodes und erkennt Umgehungstechniken, die zum Maskieren von Angriffen verwendet 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 leichte, leistungsstarke App- und API-Sicherheit, die über den grundlegenden Schutz vor den OWASP API Security Top 10 und OWASP (Application) Top 10 hinausgeht und Schutz vor über 7.500 erweiterten Signaturen, Bot-Signaturen und Bedrohungskampagnen bietet. Es ermöglicht eine Shift-Left-Strategie und eine einfache Automatisierung der API-Sicherheit zur Integration von Sicherheit als Code in CI/CD-Pipelines. Bei Tests mit den WAFs von AWS, Azure und Cloudflare stellte sich heraus, dass NGINX App Protect WAF eine starke App- und API-Sicherheit bei gleichzeitig besserer Leistung und geringerer Latenz bietet. Weitere Einzelheiten finden Sie in diesem GigaOm-Bericht .  

NGINX App Protect WAF ist in das NGINX Plus API-Gateway eingebettet, was zu einem Hop weniger für den API-Verkehr führt. Weniger Hops zwischen den Schichten verringern Latenz, Komplexität und Fehlerquellen. Dies steht in krassem Gegensatz zu typischen API-Verwaltungslösungen, die nicht in eine WAF integriert sind (Sie müssen die WAF separat bereitstellen und nach der Einrichtung muss der API-Verkehr die WAF und das API-Gateway separat durchlaufen). Die enge Integration von NGINX bedeutet hohe Leistung ohne Kompromisse bei der Sicherheit.

GraphQL und gRPC sind auf dem Vormarsch

App- und API-Entwickler suchen ständig nach neuen Möglichkeiten, die Flexibilität, Geschwindigkeit sowie Benutzerfreundlichkeit und Bereitstellung zu erhöhen. Laut dem „State of the API Report 2022“ von Postman ist REST noch immer das am häufigsten verwendete API-Protokoll (89 %), aber GraphQL (28 %) und gRPC (11 %) erfreuen sich weiterhin wachsender Beliebtheit. Letztendlich hängt die Wahl des API-Protokolls stark vom Anwendungszweck und der besten Lösung für Ihr Unternehmen ab. Jedes Protokoll hat seine eigenen Vorteile.

Warum GraphQL-APIs verwenden?

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

  • Anpassungsfähigkeit – Der Kunde entscheidet über Datenanforderung, -typ und -format.
  • Effizienz – Es erfolgt kein Überabrufen, Anfragen werden anhand eines erstellten Schemas ausgeführt und die zurückgegebenen Daten sind genau (und nur) die angeforderten Daten. Die Formatierung der Daten in Anfrage und Antwort ist identisch, wodurch GraphQL-APIs schnell, vorhersehbar und leicht skalierbar sind.
  • Flexibilität – Unterstützt über ein Dutzend Sprachen und Plattformen.

GitHub ist ein bekannter Benutzer von GraphQL. Aus Gründen der Skalierbarkeit und Flexibilität haben sie 2016 auf GraphQL umgestellt.

Warum gRPC-APIs verwenden?

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

  • Leistung – Das leichte, kompakte Datenformat minimiert den Ressourcenbedarf und ermöglicht eine schnelle Nachrichtenkodierung und -dekodierung
  • Effizient – Das Protobufs- Datenformat optimiert die Kommunikation durch die Serialisierung strukturierter Daten
  • Zuverlässigkeit – HTTP/2 und TLS/SSL sind erforderlich, was die Sicherheit standardmäßig verbessert

Der Großteil der Leistung wird vom Client übernommen, während Verwaltung und Berechnungen auf einen Remote-Server ausgelagert werden, der die Ressource hostet. gRPC eignet sich für Anwendungsfälle, die regelmäßig eine festgelegte Datenmenge oder Verarbeitung erfordern, z. B. Datenverkehr zwischen Mikrodiensten oder Datenerfassung, bei der der Anforderer (z. B. ein IOT-Gerät) mit begrenzten Ressourcen haushalten muss.

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

Sichern Sie Ihre GraphQL-APIs mit NGINX App Protect WAF

NGINX App Protect WAF unterstützt jetzt neben REST- und gRPC-APIs auch GraphQL-APIs . Es sichert GraphQL-APIs, indem es Angriffssignaturen anwendet, bösartige Exploits eliminiert und sich gegen Angriffe verteidigt. GraphQL-Verkehr wird nativ analysiert, sodass NGINX App Protect WAF Verstöße basierend auf GraphQL-Syntax und -Profil erkennen und Angriffssignaturen anwenden kann. Durch die Sichtbarkeit von Introspektionsabfragen kann NGINX App Protect WAF diese sowie erkannte Muster in Antworten blockieren. Mithilfe dieser Methode lassen sich Angriffe erkennen und Signaturen in den entsprechenden Segmenten einer Nutzlast ausführen. Auf diese Weise können Fehlalarme reduziert werden.
 
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äß Ihrer Organisationsrichtlinie die Gesamtlänge und den Wert der Parameter in der GraphQL-Vorlage und im Inhaltsprofil als Teil der App-Sicherheitsrichtlinie fest.
  • Reduzieren Sie Fehlalarme – Verbessern Sie die Genauigkeit der Angriffsprävention mit granularen Kontrollen zur besseren Erkennung von Angriffen in einer GraphQL-Anfrage.
  • Mildern Sie böswillige Angriffe – Definieren Sie maximale Batch-Abfragen in einer HTTP-Anfrage, um das Risiko böswilliger Ausnutzung und Angriffe zu verringern.
  • DoS-Angriffe eliminieren – Konfigurieren Sie eine maximale Strukturtiefe in Inhaltsprofilen, um DoS-Angriffe durch rekursive Abfragen zu stoppen
  • Begrenzen Sie das API-Risikopotenzial – Setzen Sie Einschränkungen bei Introspektionsabfragen durch, um zu verhindern, dass Hacker die API-Struktur verstehen, was zu einem Verstoß führen kann.

Sichere bidirektionale gRPC-Streaming-APIs mit NGINX App Protect WAF

NGINX App Protect WAF unterstützt jetzt zusätzlich zu unären Nachrichtentypen bidirektionales gRPC-Streaming , sodass Sie gRPC-basierte APIs sichern können, die Nachrichtenstreams verwenden (Client, Server oder beides). Dies bietet vollständige Sicherheit für gRPC-APIs unabhängig vom Kommunikationstyp.

NGINX App Protect WAF sichert gRPC-APIs, indem es Ihr Schema erzwingt, Größenbeschränkungen festlegt, unbekannte Dateien blockiert und DoS-Angriffe verhindert, die zur Erschöpfung der Ressourcen führen. Sie können Ihre IDL-Datei (Interface Definition Language) in NGINX App Protect WAF importieren, damit es die Struktur und das Schema Ihrer gRPC-Nachrichten erzwingen und an den richtigen Stellen nach Angriffen suchen kann. Dies ermöglicht die genaue Erkennung von Versuchen, Ihre Anwendung über gRPC auszunutzen, und vermeidet Fehlalarme, die auftreten können, wenn ohne Kontext an den falschen Stellen nach Sicherheit 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 – Von unärem bis hin zu bidirektionalem Streaming, vollständige Sicherheit unabhängig vom Kommunikationstyp
  • Reduzierung von Fehlalarmen – Verbesserte Genauigkeit durch Durchsetzung der gRPC-Nachrichtenstruktur und des gRPC-Schemas zur besseren Erkennung von Angriffen in einer gRPC-Anfrage
  • Blockieren böswilliger Exploits – Durchsetzung, dass jedes Feld in der gRPC-Nachricht den richtigen Typ und den erwarteten Inhalt hat, mit der Möglichkeit, unbekannte Felder zu blockieren.
  • DoS-Angriffe eliminieren – Begrenzung der Nachrichtengröße zur Vermeidung ressourcenerschöpfender DoS-Angriffe

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

Im „State of the API Report 2022“ von Postman gaben 20 % der 37.000 befragten Entwickler und API-Experten an, dass es in ihrer Organisation mindestens einmal im Monat zu API-Vorfällen kommt, die zu Datenverlust, Serviceausfällen, Missbrauch oder unberechtigtem Zugriff führen. Im Gegensatz dazu waren 52 % der Befragten weniger als einmal pro Jahr Opfer eines API-Angriffs. Dies unterstreicht, wie wichtig es ist, Sicherheit frühzeitig als Teil einer Shift-Left-Strategie für die API-Sicherheit zu integrieren. Da APIs häufiger veröffentlicht werden als Anwendungen, wird bei der API-Sicherheit zunehmend eine Shift-Left -Strategie verfolgt. Wenn Unternehmen eine Shift-Left-Kultur einführen und Sicherheit als Code in CI/CD-Pipelines integrieren, bauen sie Sicherheit in jede Phase der API-Entwicklung ein, ermöglichen Entwicklern, agil zu bleiben, und beschleunigen die Bereitstellungsgeschwindigkeit.

Diagramm, das zeigt, wie man mit Sicherheit als Code mit NGINX App Protect WAF, Jenkins und Ansible nach links verschiebt
Abbildung 2: NGINX App Protect WAF ermöglicht die Integration der API-Sicherheit in CI/CD-Pipelines für automatisierten Schutz, der den gesamten API-Lebenszyklus umfasst.

Ein wichtiger 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. Wenn Sie das API-Schema automatisieren, 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 den API-Versionsänderungen Schritt zu halten. NGINX App Protect WAF kann Schemata validieren und überprüfen, ob die Anforderungen mit dem übereinstimmen, was die API unterstützt (Methoden, Endpunkte, Parameter usw.). NGINX App Protect WAF ermöglicht konsistente App-Sicherheit mit deklarativen Richtlinien, die von SecOps-Teams erstellt werden können, wobei API-Entwicklungsteams die API-Sicherheit verwalten und bereitstellen können, um eine genauere Kontrolle und Agilität zu erreichen. Wenn Sie Ihre API-Sicherheit in großem Maßstab in Hybrid- und Multi-Cloud-Umgebungen automatisieren möchten, kann NGINX App Protect WAF Ihnen helfen.

Zusammenfassung

Moderne App-Portfolios wachsen weiter und mit der Nutzung von Microservices kommt es zu einer noch stärkeren Verbreitung von APIs. API-Sicherheit ist komplex und herausfordernd, insbesondere für Organisationen, die in Hybrid- oder Multi-Cloud-Umgebungen arbeiten. Ein Mangel an API-Sicherheit kann über die finanziellen Kosten hinaus verheerende langfristige Auswirkungen haben. NGINX App Protect WAF bietet umfassende API-Sicherheit, die Schutz für Ihre REST-, GraphQL- und gRPC-APIs umfasst und Ihren SecOps- und API-Teams dabei hilft, die Sicherheit über den gesamten API-Lebenszyklus und über verteilte Umgebungen hinweg zu automatisieren.

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

Weitere Ressourcen

Blog: Sichern Sie Ihr API-Gateway mit NGINX App Protect WAF
E-Book: Moderne App- und API-Sicherheit
E-Book: Mastering API Architecture von O'Reilly
Datenblatt: NGINX App Protect WAF


„Dieser Blogbeitrag kann auf Produkte verweisen, die nicht mehr verfügbar und/oder nicht mehr unterstützt werden. Die aktuellsten Informationen zu verfügbaren F5 NGINX-Produkten und -Lösungen finden Sie in unserer NGINX-Produktfamilie . NGINX ist jetzt Teil von F5. Alle vorherigen NGINX.com-Links werden auf ähnliche NGINX-Inhalte auf F5.com umgeleitet."