Cyber-Risiko APIs?

Die Gefahr von Bot-Angriffen und Online-Betrug via APIs – und wie sie minimiert werden kann
Von   Stephan Dykgers   |  Area Vice President DACH   |  Imperva
13. Juli 2023

Die Nutzung von Programmierschnittstellen (APIs) hat in den letzten Jahren rasant zugenommen. Mittlerweile sind sie nicht mehr aus dem digitalen Alltag wegzudenken und haben sich zu einem zentralen Bestandteil der Digitalisierung entwickelt. Doch was sind APIs? APIs sind Softwarevermittler, mit denen Anwendungen miteinander kommunizieren. Sie stellen die Verbindung zwischen Anwendungen und anderen Diensten oder Plattformen – wie soziale Netzwerke, Online-Spiele, Datenbanken oder Geräte – her. Darüber hinaus nutzen Anwendungen und Geräte des Internets der Dinge (IoT) APIs, um Daten zu sammeln oder sogar andere Geräte zu steuern. So werden beispielsweise bei Energieversorgungsunternehmen APIs verwendet, um die Temperatur eines Thermostats anzupassen, und so Strom zu sparen.

Tatsächlich gibt es kaum eine Software oder Online-Dienste, die keine API verwendet oder selbst eine ist. Durch die Unterstützung einer schnellen Entwicklung und Bereitstellung helfen sie Entwicklern, Anwendungen schnell und effizient zusammenzuführen. Gleichzeitig schaffen sie ein besseres Benutzererlebnis für Web- und Mobilanwendungen. Doch so hilfreich APIs auch sind, werden sie nicht entsprechend geschützt, stellen sie ein signifikantes Risiko für Anwender und vor allem Unternehmen dar.

APIs und die Gefahr durch Bad Bots

Zum einen erweitern APIs die Angriffsfläche, da sie mehr Einstiegspunkte für Angreifer bieten, zum anderen sind sie auch anfälliger für den Missbrauch von Geschäftslogiken und Betrug, was sie zu einem idealen Ziel für automatisierte Angriffe macht. Und solche Angriffe nehmen mit einer alarmierenden Geschwindigkeit zu. In 2022 gingen etwa 17 Prozent aller Angriffe auf APIs welche Geschäftsprozesse missbrauchten von Bots aus, 21 Prozent waren andere Arten von automatisierten Angriffen, wie der Bad Bots Report 2023 des Cybersecurity Unternehmen Imperva zeigt. Aber warum werden APIs immer häufiger zum Ziel von Cyberattacken?

APIs – gekommen, um zu bleiben

APIs sind ein wesentlicher Bestandteil der modernen Softwareentwicklung. 98 Prozent der Unternehmen verwenden heutzutage öffentliche und/oder private APIs. Eine von Imperva in Auftrag gegebene Umfrage ergab, dass durchschnittlich 300 APIs von Unternehmen verwaltet werden. Darüber hinaus ergab ein kürzlich veröffentlichter Bericht, dass 70 Prozent der Entwickler erwarten, dass die API-Nutzung zunehmen wird. Mit der steigenden Zahl von APIs vergrößert sich jedoch auch die Angriffsfläche. Es ist also zu erwarten, dass APIs in den kommenden Jahren zu einem zentralen Angriffsziel von Cyberattacken werden.

Die Risiken von Schatten-APIs

Ein weiteres Risiko, wessen sich viele Unternehmen oft nicht bewusst sind, ist das Entstehen von sogenannten Schatten-APIs. Ihr Entstehen kann vor allem zwei Ursachen haben:

Unwissenheit und mangelnde Transparenz über bestehende APIs und ihrer Funktionen
Mangelnder Einblick in den durch Bots entstanden API-Verkehr
Unternehmen sollten ihre APIs kennen und dokumentieren. Doch wie die Erfahrung zeigt, ist das oft nur in der Theorie so, jedoch nicht in der Praxis. In vielen Unternehmen und Organisationen gibt es (oft auch öffentlich zugängliche) APIs, welche nicht inventarisiert oder deren Existenz sie sich nicht bewusst sind. Diese werden gemeinhin als Schatten-APIs bezeichnet. Beispiele hierfür sind veraltete API-Endpunkte, welche nie entfernt wurden, neue API-Endpunkte, die nicht inventarisiert oder dokumentiert wurden, oder das versehentliche Vornehmen von Änderungen durch Entwickler an nicht-öffentlichen API-Endpunkten, die diese dem Internet preisgeben.14 Prozent des gesamten API-Verkehrs läuft über solche Schatten-APIs – wie das Imperva Threat Research herausgefunden hat. Dabei stellt sich die Frage: Wie kann etwas geschützt werden, dessen Existenz nicht einmal bekannt ist?

Eine weitere Herausforderung ist die Unterscheidung zwischen menschlichem und automatisiertem Onlineverkehr (Bots), geschweige denn zwischen „Good Bots“ und „Bad Bots“. Das Problem liegt darin begründet, dass für eine API alles wie ein Bot aussieht, da sie für automatisierte Clients konzipiert ist, was es für Unternehmen schwierig macht, ihre APIs vor Bot-Angriffen zu schützen. Die APIs verarbeiten große Mengen an Anfragen, verfügen aber nicht über integrierte Abwehrmechanismen, wodurch das Erkennen und Blockieren von schädlichem Bot-Verkehr erschwert wird und Angreifer, eine solche Automatisierung nutzen können, ohne die Gefahr, einen Alarm auszulösen.

Um zu verhindern, dass Bots auf die Zielgruppe einer API zugreifen, gibt es wirksame Möglichkeiten, diese zu segmentieren. Viele APIs sind so konzipiert, dass sie Daten an mobile und einseitige Browseranwendungen liefern. Durch die Identifizierung des Zielverbrauchers der API kann das IT-Team verhindern, dass nicht autorisierte Clients die API missbrauchen.

Direkter Zugriff auf sensible Daten über APIs

Sensible Daten, Geschäftsfunktionen, Ressourcen – APIs dienen als direkter Weg für den Zugang zu solchen und anderen sensiblen Informationen. Und wie eine kürzlich durchgeführte Analyse von API-Endpunkten ergab, verarbeiten 13 Prozent der APIs hochsensible Daten wie Kreditkarten- und, Sozialversicherungsnummern oder Privatadressen. Verschafft sich nun ein Angreifer Zugang zu einer API, die solche sensiblen Daten verarbeitet, kann er potenziell auf all diese zugreifen, für die die API ausgelegt ist. Ein solcher Datenabfluss würde zu einer erheblichen Datenverletzung führen.

APIs machen es automatisierten Tools einfach

Eine Eigenschaft der APIs, die es den Entwicklern zwar auf der einen Seite leichter machen diese zu analysieren, jedoch auf der anderen auch Angreifern erleichtert diese auszunutzen, ist ihre maschinelle Lesbarkeit. Oder anders ausgedrückt: Aufgrund der Art und Weise, wie APIs Anfragen verarbeiten, können Angreifer leichter automatisierte Tools wie etwa Bots einsetzen, ohne Browser emulieren zu müssen. APIs sind vergleichbar mit SQL-Schnittstellen – sie vereinfachen die Abfrage von Daten, legen aber ihre Logik offen.

Eine weitere Besonderheit von APIs ist, dass sie in der Regel zustandslos sind (d. h. sie halten keine Zustandsinformationen zwischen den Abfragen aufrecht), im Gegensatz zu den meisten herkömmlichen Webanwendungen, welche zustandsbehaftet (die Anwendungen werden im Kontext vorangegangener Transaktionen ausgeführt) sind. Im Allgemeinen gelten zustandslose Anwendungen als gefährdeter als zustandsbehaftete, da sie die Sitzungsinformationen des Benutzers nicht speichern. In einer zustandslosen Anwendung wird jede Anfrage als unabhängige Transaktion behandelt, und die Anwendung speichert keine Informationen über frühere Anfragen desselben Benutzers.

Die Kombination aus der relativen Einfachheit, APIs anzugreifen, und der Leichtigkeit, mit der ein Angriff durch Bots-for-Hire/Bots-as-a-Service orchestriert werden kann, ergibt einen gefährlichen Mix aus einem leichten Ziel und einem kostengünstigen Angriff mit geringem Aufwand.

Implementierungsfehler erhöhen Gefahr durch Bots

Laut einer Studie der API-Plattform Postman haben 44 Prozent der Entwickler weniger als zwei Jahre Erfahrung in der Entwicklung von APIs. Gleichzeitig nehmen sie sich für die Konzipierung, Implementierung, das Testen und Liefern einer API nur wenig Zeit. 48 Prozent der API-Entwickler schließen diesen Prozess innerhalb einer Woche ab. Geht es um die Absicherung ihrer APIs, wenden Entwickler für gewöhnlich ein Standard-Regelwerk an. Dabei wird oft die Geschäftslogik vernachlässigt, wodurch APIs für Schwachstellen in dieser anfällig werden. Selbst wenn eine API über korrekte Authentifizierungs- und Autorisierungsmechanismen verfügt, können Implementierungsfehler Angreifern die Möglichkeit bieten, sie auszunutzen. Mit dem Einsatz von Bots können diese Schwachstellen effektiv ausgenutzt werden.

So kann beispielsweise eine Such-API von Bad Bots zum Sammeln von Daten genutzt werden, oder eine Anmelde-API angegriffen werden, um unbefugten Zugriff auf Benutzerkonten zu erhalten. Im speziellen Fall der Anmeldefunktionalität verlassen sich APIs auf die Verwendung eines Tokens als Form der Authentifizierung. Es ist also kein Parsing (das Zerlegen und Umwandeln einer Eingabe in ein für die Weiterverarbeitung geeigneteres Format) erforderlich. Stattdessen können diese Tokens und andere Formen der Authentifizierung von Angreifern abgefangen oder gestohlen und letztlich verwendet werden, um unbefugten Zugriff auf die API und das zugehörige Konto oder die Daten zu erhalten.

Selbst wenn Entwickler versuchen, den Bot-Verkehr einzudämmen, verwenden sie häufig herkömmliche Sicherheitstools und -techniken. Dazu gehören Ratenbegrenzung, signaturbasierte Erkennung, Sperrprotokolle etc. Doch solche Techniken sind heutzutage oft wirkungslos gegen hochentwickelte Bot-Angriffe, die es auf APIs abgezielt haben.

Scraping – das Extrahieren und Speichern von Website-Daten – und Account Takeover sind zwei Beispiele für Bot-Angriffe, die die Geschäftslogik einer API ausnutzen können. Doch es gibt auch eine Vielzahl weiterer Möglichkeiten, wie Bots APIs ins Visier nehmen. Ein Beispiel hierfür sind DDoS-Angriffe (Distributed Denial of Service). Mit der Hilfe von Bots können DDoS-Angriffe auf APIs gestartet werden. Sie überfluten diese mit Datenverkehr, wodurch sie für legitime Nutzer nicht mehr verfügbar sind. DDoS-Angriffe sind eine besondere Herausforderung für GraphQL-basierte APIs, da der Nutzer viel flexibler ist, wenn es darum geht, welche Daten er abfragt und wie komplex diese Abfragen sind, was oft zu nicht optimierten Anfragen an die Backend-Datenbank führt.

Bots können auch dazu verwendet werden, um APIs auf Schwachstellen wie SQL-Injection oder Cross-Site-Scripting zu untersuchen. Dabei handelt es sich nicht um einen direkten Angriff, sondern eher um eine „Erkundungsreise“, die den Angreifern dabei hilft, potenzielle Schwachstellen zu identifizieren, und diese später auszunutzen. Doch das sind nur einige wenige Beispiele dafür, wie Bots APIs Schaden zufügen können.

Viele Schwachstellen auf der Ebene der Geschäftslogik sind spezifisch für einen Implementierungsfehler einer API. Eine typische Schwachstelle im Bereich der exzessiven Datenexposition (kategorisiert als eine der OWASP API Security Top 10) ermöglicht es beispielsweise Bad Bots, Daten zu exfiltrieren, indem sie APIs aufrufen, die übermäßig viele Daten zurückgeben – mehr als für die Funktion erforderlich. Es wurde beobachtet, dass Cyberkriminelle Bots zur Erkundung einsetzen, um diese Art von Schwachstelle in der Geschäftslogik zu lokalisieren.

Fazit: Der richtige Schutz der API vor Bot-Angriffen wird in Zukunft noch wichtiger

Unternehmen sind immer stärker auf APIs angewiesen, was zu einem rasanten Anstieg ihrer Akzeptanz und Nutzung führt. Im Gegenzug ist aber auch die Angriffsfläche, die Unternehmen heutzutage schützen müssen, erheblich gewachsen. Da Bots immer cleverer werden und die Geschäftslogik von APIs immer leichter angreifen können, stellen sie ein erhebliches Risiko dar, welches in Zukunft wahrscheinlich noch zunehmen wird. Es ist für Unternehmen daher unerlässlich vor allem ihre APIs vor Bot-Angriffen und Online-Betrug zu schützen. Advanced Bot Protection- und API Security-Lösungen können den Unternehmen beim Schutz ihrer Geschäftsinteressen helfen, bei der Prävention vor Bot-Angriffen unterstützen und somit Risiken minimieren.

Stephan Dykgers verfügt über langjährige Erfahrung im Bereich Cybersecurity. Seine Hauptgebiete sind dabei das Channel-Ecosystem sowie der direkte als auch indirekte Vertrieb. Seine Karriere in der Cybersicherheit begann im Jahr 2001.

Um einen Kommentar zu hinterlassen müssen sie Autor sein, oder mit Ihrem LinkedIn Account eingeloggt sein.

38101

share

Artikel teilen

Top Artikel

Ähnliche Artikel