Was sind API-Angriffe?

API-Angriffe missbrauchen eine API, um Daten zu stehlen oder Dienste zu stören. Risiken der OWASP API Security Top 10 (2023) und wirksame Gegenmaßnahmen.

Was sind API-Angriffe?

API-Angriffe sind Versuche, eine Programmierschnittstelle zu missbrauchen: um Daten zu lesen, die der Aufrufer nicht sehen darf, Daten zu verändern, die er nicht anfassen darf, oder den Dienst so zu überlasten, dass echte Nutzer ihn nicht mehr verwenden können. Sie zielen direkt auf die Endpunkte hinter Web- und Mobil-Apps, sodass eine Schwachstelle, die ein Frontend verbirgt, mit einer einfachen HTTP-Anfrage trotzdem erreichbar bleibt. Sie zu verstehen ist der erste Schritt zur API-Sicherheit. Diese Seite ist defensiver Hintergrund.

Warum Angreifer APIs ins Visier nehmen

  • Direkter Datenzugriff: Antworten sind strukturiert und kommen oft direkt aus der Datenbank.
  • Vorhersehbare Form: dokumentierte Routen und fortlaufende IDs lassen sich leicht automatisiert abfragen.
  • Viele Einstiegspunkte: öffentliche, Partner- und interne APIs vergrößern die Angriffsfläche, und vergessene bleiben bestehen (siehe API-Discovery).
  • Kein Browser dazwischen: Bots rufen Endpunkte ohne CAPTCHA oder sichtbare Seiten auf.

Die OWASP API Security Top 10 (2023)

Die maßgebliche Referenz ist die OWASP API Security Top 10, Ausgabe 2023. Die zehn Risiken (Originalbezeichnungen) mit dem jeweiligen Abwehrgedanken:

RisikoWas schiefgehtKernmaßnahme
API1:2023 Broken Object Level AuthorizationEin Endpunkt liefert ein Objekt per ID, ohne zu prüfen, ob der Aufrufer darauf zugreifen darfEigentumsprüfung bei jedem Objektzugriff
API2:2023 Broken AuthenticationSchwache Anmeldung oder Token-Behandlung erlaubt es, sich als Nutzer auszugebenStrenge Token-Prüfung, gedrosselte Anmeldung, MFA
API3:2023 Broken Object Property Level AuthorizationAufrufer lesen oder schreiben Felder, die sie nicht dürfen, auch durch zu freigiebige AntwortenExplizite Antwortschemas, erlaubte Schreibfelder per Allowlist
API4:2023 Unrestricted Resource ConsumptionAnfragen verbrauchen CPU, Speicher, Bandbreite oder kostenpflichtige DiensteRatenbegrenzung, Kontingente, Größen- und Seitenlimits
API5:2023 Broken Function Level AuthorizationNormale Nutzer erreichen Admin- oder privilegierte FunktionenStandardmäßig verweigern, Rollenprüfung je Funktion
API6:2023 Unrestricted Access to Sensitive Business FlowsAutomatisierung missbraucht einen legitimen Ablauf, etwa Massenkäufe oder RegistrierungenLimits pro Ablauf und Bot-Erkennung
API7:2023 Server Side Request ForgeryDie API ruft eine vom Angreifer vorgegebene URL ab und erreicht interne RessourcenAllowlists für ausgehende Ziele, URL-Prüfung
API8:2023 Security MisconfigurationFehlende Härtung, ausführliche Fehlermeldungen, offenes CORS, unnötige FunktionenWiederholbare gehärtete Konfiguration, regelmäßige Prüfung
API9:2023 Improper Inventory ManagementAlte Versionen und undokumentierte Endpunkte bleiben offenInventar führen, alte Versionen abschalten
API10:2023 Unsafe Consumption of APIsDer eigene Dienst vertraut Daten von Drittanbieter-APIs zu sehrUpstream-Daten validieren, Timeouts setzen

Eine allgemeinverständliche Einführung zu den wichtigsten Punkten bietet die größten API-Sicherheitsrisiken.

Ein konkretes Beispiel

Nehmen wir BOLA (API1). Ein angemeldeter Nutzer öffnet /api/orders/1001 und sieht seine eigene Bestellung. Prüft der Server nur, ob der Nutzer angemeldet ist, kann die Zahl 1002 die Bestellung einer anderen Person liefern. Ein Skript probiert Tausende IDs in Minuten durch. Die Lösung ist nicht, IDs zu verstecken, sondern bei jeder Anfrage zu prüfen, ob dieser Aufrufer diese Bestellung besitzt.

Häufige Fehler bei der Abwehr

  • Sich auf das Frontend verlassen. Einen Button auszublenden schützt den Endpunkt dahinter nicht.
  • Authentifizierung ohne Autorisierung. Zu wissen, wer jemand ist, entscheidet nicht, was er anfassen darf.
  • Ratenbegrenzung als einzige Maßnahme. Sie bremst Missbrauch (API-Missbrauch), hilft aber nicht gegen BOLA oder Injection.
  • Vergessene Versionen. Ein altes /v1 ohne die neuen Prüfungen ist ein häufiger Einstieg.
  • Partner-APIs vertrauen. Deren Antworten als nicht vertrauenswürdige Eingabe behandeln.

Angriffe erkennen und eindämmen

Maßnahmen schichten: jede Anfrage auf Objekt- und Funktionsebene authentifizieren und autorisieren, Eingaben gegen ein Schema validieren, nur nötige Felder zurückgeben, Raten und Größen je Client begrenzen, ein Inventar aller Endpunkte und Versionen führen und genug protokollieren, um nachzuforschen. Alarmwürdig sind Häufungen von 401- und 403-Antworten, ein Client, der fortlaufende IDs durchläuft, und plötzliche Fehler- oder Latenzspitzen. Zu Überflutung siehe DDoS-Angriffe stoppen und den Leitfaden zur API-Ratenbegrenzung.

Wo Monitoring und Lasttests passen

LoadFocus ist kein Sicherheitsscanner und findet keine Schwachstellen wie Injection oder BOLA. Es hilft bei der Verfügbarkeit. API Monitoring prüft Endpunkte nach Zeitplan (kostenlose Checks laufen alle 5 Minuten) und alarmiert, wenn Statuscodes, Antworten oder Antwortzeiten abweichen, was ein frühes Zeichen sein kann, dass etwas die API belastet. Lasttests zeigen, wie sich die eigene API unter hohem gleichzeitigem Verkehr verhält, sodass Sie prüfen können, ob Ratenlimits greifen und der Dienst geordnet degradiert. Testen Sie nur Systeme, die Ihnen gehören oder für die Sie eine Erlaubnis haben.

Häufige Fragen: API-Angriffe

Was ist der häufigste API-Angriff?

OWASP führt Broken Object Level Authorization als API1:2023, das erste Risiko der Top 10. Es tritt häufig auf, weil es überall entsteht, wo ein Endpunkt einer ID ohne Eigentumsprüfung vertraut.

Wie unterscheiden sich API-Angriffe von Angriffen auf Webanwendungen?

API-Angriffe zielen auf Maschine-zu-Maschine-Endpunkte, die strukturierte Daten liefern, ohne Seite oder CAPTCHA dazwischen. Dadurch lassen sich Autorisierungs- und Eingabefehler leichter finden und automatisieren.

Können WAF oder Ratenbegrenzer sie stoppen?

Sie helfen bei Überflutung, bekannten Angriffsmustern und Brute Force, aber nicht bei Logikfehlern wie BOLA oder Missbrauch von Geschäftsabläufen. Am besten wirken sie zusammen mit Autorisierungsprüfungen und Eingabevalidierung.

Woran erkenne ich, dass meine API angegriffen wird?

Vergleichen Sie mit einer Basislinie: plötzlicher Verkehr einzelner Clients, steigende 401- oder 403-Raten, Durchlaufen fortlaufender IDs und Latenzspitzen. Dauerhaftes Monitoring mit Alarmen macht das schnell sichtbar.

Findet ein Lasttest Sicherheitslücken?

Nein. Er misst Leistung und Stabilität unter Last. Er kann bestätigen, dass Ratenlimits und Kapazität halten, aber Schwachstellen finden eine Sicherheitsprüfung oder ein Scanner.

Wie schnell ist Ihre Website?

Steigern Sie ihre Geschwindigkeit und SEO nahtlos mit unserem kostenlosen Geschwindigkeitstest.

Kostenloser Websitespeed-Test

Analysieren Sie die Ladegeschwindigkeit Ihrer Website und verbessern Sie ihre Leistung mit unserem kostenlosen Seitengeschwindigkeits-Checker.