Wachsende Angriffsfläche durch Verbreitung von APIs

Die schnelle Verbreitung von APIs hat hohe Sicherheitsrisiken für Unternehmen geschaffen

Eine Programmierschnittstelle (Application Programming Interface oder kurz API) ist eine Computerschnittstelle, die Interaktionen zwischen verschiedenen Programmen definiert und ermöglicht. Für viele alltägliche Aufgaben werden APIs benutzt, zum Beispiel beim Teilen von Medienmaterial in den sozialen Netzwerken, der Ausführung von Online-Zahlungen oder der Verdichtung von Website-Analysedaten. Per Cloud Computing können Unternehmen globale Infrastrukturen mithilfe von APIs leichter bereitstellen.

Die meisten Softwareanwendungen verwenden heute APIs oder sind selbst APIs, nachdem die letzten vier bis fünf Jahre von exponentiellem API-Wachstum geprägt waren. Bei Postman, einer Plattform zur gemeinsamen API-Entwicklung, ist beispielsweise die Anzahl der API-Ordner von weniger als einer halben Million im Jahr 2016 auf fast 35 Millionen im Jahr 2020 geschnellt.

Doch bei dem fulminanten Siegeszug von APIs ist die Sicherheit teilweise auf der Strecke geblieben. Mit ihrer zunehmenden Verbreitung treten auch zahlreiche große Sicherheitslücken zutage. Angesichts der Kombination aus explosivem Wachstum und unterentwickelter Sicherheit prognostiziert Gartner, dass APIs zur größten Sicherheitslücke aller Zeiten werden.

Der Aufstieg von APIs führte zu einem „API-first“-Schwerpunkt in der Entwicklung

Einer der Hauptgründe für die immer stärkere Verbreitung von APIs ist die seit 2013 wachsende Beliebtheit von Microservices. Bei einer Microservices-Architektur werden kleine, individuelle Anwendungen entwickelt, die über APIs miteinander kommunizieren. Auf diese Weise werden komplexe Aufgaben aufgespalten, sodass ihre einzelnen Bestandteile unabhängig voneinander entwickelt und bearbeitet werden können.

Der Wert des globalen Microservices-Architekturmarkts wurde im Jahr 2018 auf 2,07 Mrd. USD geschätzt und wird voraussichtlich bis 2026 auf 8,07 Mrd. USD steigen (CAGR 18,6 % von 2019 bis 2026). Microservices haben sich aufgrund ihrer Flexibilität, kürzeren Entwicklungszyklen und besseren Skalierbarkeit durchgesetzt.

Netflix etwa ist von zentralisierten monolithischen Rechenzentren zu einer cloudbasierten Microservices-Architektur übergegangen, um mit der Nachfrage Schritt halten zu können. Das hat Entwicklern enormem Freiraum dabei verschafft, die Kundenerfahrung kontinuierlich zu verbessern – zum Beispiel durch die Möglichkeit, Inhalte auf bestimmte Weltregionen zuzuschneiden.

Die Trends, die zum aktuellen „API-first“-Standard beigetragen haben, führen uns aber auch auf die Spur ihrer Schwachstellen. APIs sind überall und es werden immer mehr. Damit erhöht sich auch das Risiko.

APIs: die neue große Sicherheitslücke

Der häufige Einsatz von APIs und die damit verbundenen Entwicklungen führen nicht zu sicheren Anwendungen. Laut Gartner werden 2021 bei 90 % der webfähigen Anwendungen exponierte APIs eine größere Angriffsfläche bieten als Benutzerschnittstellen (User Interface oder kurz UI). Gartner prognostizierte außerdem, dass API-Missbrauch bis 2022 von einem seltenen zum häufigsten Angriffsvektor werden wird.

API-Sicherheitslücken können in einer Vielzahl von Bereichen auftreten, z. B. an Endpunkten (Geräten, Servern, virtuellen Umgebungen usw.), unter anderem in Form von Datenlecks, Denial-of-Service (DoS), Autorisierungsfehlern oder einer Fehlkonfiguration von Sicherheitssystemen. In Anbetracht der riesigen Angriffsfläche, die durch Tausende von API-unterstützten Assets in einem Unternehmen entsteht, können sich API-Sicherheitslücken extrem weitreichend auf ein Unternehmen auswirken.

Zu den möglichen Gefahren gehören: Datenvernichtung, gestohlene Gelder, Produktivitätsverluste, Diebstahl von geistigem Eigentum, Diebstahl von personenbezogenen und finanziellen Daten, Betrug, Störung des Geschäftsbetriebs sowie die Kosten für Wiederherstellung bzw. Löschung beschädigter Daten und Systeme. Der mit einer API-Verletzung verbundene Reputationsschaden kann auch zu Vertrauensverlust führen. Das gilt bei jedem schweren Sicherheitsvorfall.

Es gab bereits prominente Fälle, in denen Unternehmen trotz robuster Sicherheitsmaßnahmen mit API-Angriffen konfrontiert waren. Man denke nur an das Beispiel Facebook: Durch Ausnutzung einer Sicherheitslücke im Feature „Anzeigen aus Sicht von“ wurden 50 Millionen Konten zugänglich. Hacker konnten so Kontozugangs-Token erbeuten, nachdem Facebook eine API-gestützte Funktion für Video-Uploads eingeführt hatte.

Auch Uber war betroffen, als die Universally Unique Identifiers (UUID) von Nutzern in API-Anfragen dazu führten, dass Token in der API-Antwort offengelegt wurden. Mit diesen Token war es möglich, Konten zu kapern. Die Angreifer konnten damit die Standorte der Opfer verfolgen und sogar Fahrten stehlen.

Fälle wie diese werden als API-Angriff durch „Broken User Authentication“ bezeichnet. Wenn die Authentifizierung falsch implementiert ist, können dadurch Authentifizierungs-Token kompromittiert werden und andere Sicherheitslücken entstehen, die wiederum den Diebstahl von Nutzeridentitäten ermöglichen.

Da wir aufgrund der Covid-19-Pandemie verstärkt von zu Hause aus arbeiten, nutzen wir private IP-Adressen in großem Umfang. Die Unterscheidung zwischen böswilligen und legitimen API-Aufrufen ist heute deshalb wichtiger denn je. Bei Angriffen durch Credential Stuffing oder Spam-Botnetze können bis zu 10.000 verschiedene IPs verwendet werden. Dafür werden gehackte Server, Workstations und sogar IoT-Geräte genutzt.

Die Abwehr von API-Angriffen erfordert die richtige Strategie und das richtige Netzwerk

APIs stellen Anwendungslogik und sensible Daten wie personenbezogene Daten (Personally Identifiable Information, PII) bereit. Daher sind sie für die Infrastruktur und Sicherheitsstrategie eines Unternehmens von entscheidender Bedeutung. Herkömmliche Sicherheitsstrategien für Webanwendungen – von denen viele auf einem „negativen Sicherheitsmodell“ basieren – können jedoch die meisten API-Bedrohungen nicht aufhalten.

API-Abwehr durch positive Sicherheit

In einem „negativen Sicherheitsmodell“ wird jede Anfrage durch eine Web Application Firewall (WAF) geleitet – es sei denn, sie steht auf einer Blockierliste mit bekannten oder mutmaßlichen Bedrohungen. Dieses Modell kann zu falsch-positiven Ergebnissen (bei denen legitime API-Aufrufe blockiert werden) und auch dazu führen, dass einige der gezielteren Angriffe nicht erfasst werden. WAFs spielen bei der API-Sicherheit dennoch eine wichtige Rolle. Zum Beispiel kann authentifizierter Traffic, der einige Etappen der Schemavalidierung durchlaufen hat (z. B. Endpunkt, Methode und Parameter) immer noch einen SQL-Angriff transportieren, den eine WAF dann abfangen könnte. Einige APIs sind darüber hinaus nicht für TLS geeignet oder stellen eine Herausforderung für die Schemavalidierung dar. Wenn Schemata nicht auf dem neuesten Stand oder wenn APIs fragmentiert sind und nur schwer in einem einzigen Schema konsolidiert werden können, könnte eine WAF zur Schließung dieser Lücke beitragen.

Ein Unternehmen, das sich in Sachen API-Sicherheit allein auf eine WAF und deren Blockierliste verlässt, bleibt jedoch weiterhin verwundbar. Diese Risiken lassen sich vermeiden, wenn man bei der Abwehr von API-Bedrohungen auf ein „positives Sicherheitsmodell“ wie API Shield setzt. Dieses Modell lässt nur bekanntes Verhalten zu, alles andere wird identifiziert und zurückgewiesen.

Ein wichtiger Schritt in Richtung eines positiven Modells ist der Einsatz einer starken Authentifizierung und Autorisierung, die jeweils nicht anfällig für die Wiederverwendung oder Weitergabe von Passwörtern sind, z. B. TLS oder OAuth. Die Verwaltung von Berechtigungen und die Freigabe von Zertifikaten kann sehr zeitaufwendig sein, daher sollten Entwickler Tools bevorzugen, die die Führung von Positivlisten so weit wie möglich vereinfachen.

Natürlich ist es nicht unmöglich, ein Zertifikat von einem Gerät zu extrahieren und anderswo wiederzuverwenden. Entwickler benötigen auch eine Möglichkeit, API-Aufrufe selbst zu validieren. Für die Schemavalidierung wird der Inhalt der API-Anfragen (die Abfrageparameter, die nach der URL und dem Inhalt des POST-Texts aufgeführt sind) mit einem Vertrag oder „Schema“ abgeglichen, das die Regeln für erwartete Anfragen enthält. Wenn die Validierung fehlschlägt, wird der API-Aufruf blockiert, wodurch der Ursprungsserver vor einer ungültigen Anfrage oder einer bösartigen Nutzlast geschützt wird.

Abwehr von API-Angriffen: Netzwerke stärken einzelne Tools

Positive Sicherheit durch Authentifizierung/Autorisierung und API-Aufrufvalidierung ist zwar wichtig, aber zusätzliche Sicherheitsmaßnahmen sind erforderlich. Zum Beispiel sind APIs immer noch anfällig für volumetrische Angriffe, Brute-Force-Angriffe und Credential Stuffing. Daher bleiben DDoS-Abwehr und Durchsatzbegrenzung notwendige Werkzeuge für das Gesamtsicherheitsniveau eines Unternehmens.

Die Kombination neuer Sicherheitstools mit bereits vorhandenen (wie DDoS-Abwehr und Durchsatzbegrenzung) kann zu Problemen führen. Wenn API-Aufrufe viele unterschiedliche Tools durchlaufen, wird es mühsamer, sie zu überwachen und zu protokollieren. Außerdem kann das Durchschleusen des Traffics durch verschiedene Tools in geografisch verteilten Rechenzentren zu zusätzlicher Latenz und einer Verschlechterung der Anwendungs-Performance führen.

API-Sicherheit lässt sich deshalb am besten durch ein größeres Edge-Netzwerk gewährleisten, in das mehrere Sicherheitsfunktionen integriert sind und das unter anderem folgende Vorteile bietet:

  • Ausfallsicherheit: Wenn mehrere Edge-Netzwerkstandorte API-Sicherheitstools hosten können, stellen isolierte Ausfälle ein geringeres Risiko dar.
  • Geringere Latenz: Wenn mehrere API-Sicherheits-Tools innerhalb desselben Edge-Netzwerkstandorts ausgeführt werden, muss der Traffic nicht zwischen verschiedenen Standorten hin- und herspringen.
  • Bedrohungsinformationen: Mit genug Reichweite kann ein Edge-Netzwerk Angriffe auf eine große Anzahl von APIs analysieren und diese Informationen nutzen, um den Rest besser zu schützen.
  • Einfachere Protokollierung: Die Verwendung eines einzigen Netzwerks (das über eine einzige Oberfläche gesteuert wird) bietet Entwicklern eine Single Source of Truth.

Cloudflare wurde für moderne Unternehmensarchitekturen entwickelt. Mit Cloudflare können Sie Ihre APIs auf einfache Weise sichern: durch eine starke, auf Client-Zertifikaten basierende Identität und strenge, schemabasierte Validierung. Eine intelligente und skalierbare Lösung zum Schutz Ihrer geschäftskritischen Webanwendungen vor heimtückischen Angriffen – ohne Änderungen an Ihrer bestehenden Infrastruktur.

Informieren Sie sich umfassend über API-Sicherheit. Schauen Sie sich den „Magic Quadrant“ 2020 von Gartner zum Thema WAF an und erfahren Sie mehr über den Schutz vor API-Sicherheitslücken.

Dieser Beitrag ist Teil einer Serie zu den neuesten Trends und Themen, die für Entscheidungsträger aus der Tech-Branche heute von Bedeutung sind.