Zum Inhalt springen

Checkliste

API-Pentest: die Checkliste für SaaS- und Software-Teams

Von Lucas Weber, CyberSec42 · Stand 28.10.2026

CyberSec42

Ein API-Pentest prüft, ob Ihre Schnittstelle nur das herausgibt und nur das ausführt, was dem jeweiligen Konto erlaubt ist. Im Mittelpunkt stehen die Risiken der OWASP API Security Top 10, aktuell in der Fassung 2023: vor allem fehlende Autorisierung auf Objekt-, Eigenschafts- und Funktionsebene, aber auch fehlende Limits, Server-Side Request Forgery und der unkritische Umgang mit fremden APIs. Der wichtigste Prüfschritt lässt sich in einem Satz sagen: Mit zwei Konten aus zwei Mandanten wird jede Objekt-ID des einen gegen das Token des anderen getauscht, und keine einzige Anfrage darf durchgehen.

Kurz gefasst.

Warum APIs das Hauptziel sind

Daten und Logik ohne Umweg über die Oberfläche.

Zum Abschnitt

OWASP API Top 10

Die zehn Risiken der Fassung 2023 im Überblick.

Zum Abschnitt

Scope, Konten, Umgebung

Was vor dem ersten Test geklärt sein muss.

Zum Abschnitt

Die Prüfschritte

Konkret, mit Beispielanfragen.

Zum Abschnitt

Scanner und ihre Grenze

Was automatisch geht und was nicht.

Zum Abschnitt

Der Ergebnisbericht

Was je Befund drinstehen muss.

Zum Abschnitt

Warum APIs das Hauptziel sind

In einer SaaS-Anwendung ist die Oberfläche nur ein Client unter mehreren. Web-Frontend, Mobile-App und Integrationen sprechen mit derselben API, und was die Oberfläche ausblendet, kann die API trotzdem liefern. Ein Angreifer sieht in den Entwicklerwerkzeugen des Browsers die Anfragen samt IDs und Token und schickt sie verändert erneut ab. Eine bekannte Lücke in einer Bibliothek braucht er dafür nicht.

Genau deshalb sind die typischen API-Schwachstellen keine exotischen Programmierfehler, sondern Lücken in der Geschäftslogik:

Für SaaS-Anbieter wiegt der erste Punkt am schwersten. Wenn ein Kunde über die API Daten eines anderen Kunden lesen kann, ist das Vertrauensversprechen der ganzen Plattform gebrochen.

Die OWASP API Security Top 10 (Fassung 2023)

Das Open Worldwide Application Security Project (OWASP) veröffentlicht neben der bekannten Top 10 für Webanwendungen eine eigene Liste für APIs. Die erste Ausgabe erschien 2019, die aktuelle zweite Ausgabe 2023. Eine neuere Fassung ist auf der Projektseite (Stand 28.10.2026) nicht veröffentlicht. Laut den Release Notes wurden für die Fassung 2023 keine Daten eingereicht. Die Liste beruht auf der Erfahrung des Projektteams, der Prüfung durch API-Sicherheitsfachleute und Rückmeldungen der Community. Sie ist damit eine Sensibilisierungsliste und kein Prüfstandard mit Bestehensgrenze.

Nr.RisikoWas im Test geprüft wird
API1Broken Object Level AuthorizationObjekt-IDs zwischen Konten und Mandanten tauschen
API2Broken AuthenticationAnmeldung, Passwort-Reset, Token-Prüfung, Brute-Force-Schutz
API3Broken Object Property Level AuthorizationZu viele Felder in Antworten, schreibbare Felder wie Rolle (Mass Assignment)
API4Unrestricted Resource ConsumptionRate Limits, Seitengrößen, Upload-Grenzen, Kostenlimits bei Drittdiensten
API5Broken Function Level AuthorizationVerwaltungsfunktionen mit normalem Konto, andere HTTP-Methoden
API6Unrestricted Access to Sensitive Business FlowsAutomatisierter Missbrauch von Abläufen wie Bestellung, Reservierung, Einladung
API7Server Side Request ForgeryVom Nutzer angegebene URLs auf interne Ziele lenken
API8Security MisconfigurationTLS, CORS, Fehlermeldungen, unnötige Methoden, fehlende Härtung
API9Improper Inventory ManagementAlte API-Versionen, offene Test- und Staging-Hosts, Dokumentationslücken
API10Unsafe Consumption of APIsPrüfung von Daten, Weiterleitungen und Zeitlimits bei fremden APIs

Gegenüber 2019 hat OWASP „Excessive Data Exposure“ und „Mass Assignment“ zu API3 zusammengefasst, weil beide dieselbe Ursache haben: fehlende Autorisierung auf Ebene einzelner Eigenschaften. API6 und API10 sind 2023 neu hinzugekommen.

Wie ein API-Pentest abläuft

Den allgemeinen Ablauf eines Penetrationstests, von der Freigabe bis zum Nachtest, beschreiben wir in einem eigenen Artikel: Penetrationstest: Ablauf, Dauer und was ihn kostet. Hier geht es um das, was bei APIs anders ist. Drei Dinge entscheiden darüber, wie aussagekräftig der Test wird.

Scope: Spezifikation und Inventar

Grundlage ist eine aktuelle Beschreibung der Schnittstelle, meist als OpenAPI-Spezifikation (früher Swagger), bei GraphQL das Schema. Sie zeigt alle Endpunkte, Parameter und erwarteten Antworten und macht den Test planbar. Genauso wichtig ist die Frage, was nicht in der Spezifikation steht. OWASP nennt unter API9 ausdrücklich alte Versionen, vergessene Hosts und fehlende Dokumentation als Risiko. Legen Sie deshalb schriftlich fest:

Rollen und Testkonten je Mandant

Ein API-Pentest ohne passende Testkonten bleibt an der Oberfläche. Für eine mandantenfähige Anwendung braucht es mindestens zwei getrennte Mandanten, in jedem Mandanten ein Konto je relevanter Rolle und in jedem Konto echte Testdaten, also angelegte Objekte wie Projekte, Rechnungen oder Dokumente. Erst dann lässt sich prüfen, ob Mandant A an die Objekte von Mandant B kommt und ob eine einfache Rolle Funktionen einer höheren erreicht.

KontoMandantRolleZweck im Test
A-AdminAAdministratorlegt Objekte an, Referenz für erlaubte Funktionen
A-UserAeinfache RolleRechteausweitung innerhalb des Mandanten
B-AdminBAdministratorZugriff über die Mandantengrenze hinweg
B-UserBeinfache RolleKombination aus beidem
ohne Anmeldungkeinerkeinewas ohne Token erreichbar ist

Umgebung

Am besten eignet sich eine Staging-Umgebung, die in Code, Konfiguration und vorgeschalteten Komponenten wie API-Gateway und Web Application Firewall der Produktion entspricht. Weicht sie ab, prüft der Test ein anderes System. OWASP rät unter API9, in Nicht-Produktivumgebungen keine Produktionsdaten zu verwenden und sie andernfalls genauso zu schützen wie die Produktion. Zahlungsdienstleister, E-Mail- und SMS-Versand sollten im Testmodus laufen, damit Tests zu API4 und API6 keine echten Kosten oder Nachrichten auslösen.

Wichtig für alle, die selbst testen: Prüfen Sie nur Systeme, für die eine schriftliche Freigabe des Betreibers vorliegt. Das gilt auch für angebundene Fremd-APIs, die Ihnen nicht gehören.

Die Prüfschritte im Einzelnen

Die folgenden Schritte orientieren sich an der OWASP API Security Top 10 und am Kapitel „API Testing“ des OWASP Web Security Testing Guide. Die Beispielpfade sind erfunden und stehen für Muster, die in vielen APIs vorkommen.

1. Objektzugriff: IDs zwischen Mandanten tauschen (API1)

Der wichtigste Einzeltest. Mit Konto A wird ein Objekt angelegt, etwa eine Rechnung. Dann wird dieselbe Anfrage mit dem Token von Konto B geschickt:

GET /api/v2/invoices/8f3c… mit Authorization: Bearer <Token von B-User>

2. Eigenschaften und Mass Assignment (API3)

3. Funktionsebene: Rollen und Methoden (API5)

4. Anmeldung und Token (API2)

5. Limits und sensible Abläufe (API4, API6)

6. Server-Side Request Forgery (API7)

Überall, wo die API eine vom Nutzer angegebene URL abruft, etwa Webhook-Ziele, Import per Link, Bild von URL oder Link-Vorschau:

7. Konfiguration und Inventar (API8, API9)

8. Fremde APIs (API10)

Die Checkliste zum Abhaken

BereichPrüfpunkt
VorbereitungAktuelle OpenAPI-Spezifikation oder GraphQL-Schema, Hosts und Versionen schriftlich im Scope
VorbereitungZwei Mandanten, je ein Konto pro Rolle, Testdaten angelegt, Zahlungs- und Versanddienste im Testmodus
ObjektzugriffJede Objekt-ID mit dem Token des anderen Mandanten getauscht, für alle Methoden
ObjektzugriffListen, Filter und Exporte auf den eigenen Mandanten beschränkt
EigenschaftenAntworten ohne überflüssige Felder, Rolle und Mandant nicht per Anfrage schreibbar
FunktionenVerwaltungsfunktionen mit einfacher Rolle und ohne Token abgelehnt, Methodenwechsel geprüft
AnmeldungToken-Signatur und Ablauf geprüft, Brute-Force-Schutz bei Anmeldung, Reset und Einmalcodes
LimitsRate Limits, maximale Seitengröße, Upload-Grenzen, Ausgabenlimits bei Drittdiensten
AbläufeSensible Geschäftsabläufe gegen automatisierten Missbrauch begrenzt
SSRFAbrufe von Nutzer-URLs auf erlaubte Ziele beschränkt, keine Weiterleitungen, keine rohen Antworten
KonfigurationTLS, CORS, Fehlermeldungen, unnötige Methoden abgeschaltet
InventarAlte Versionen und Test-Hosts abgeschaltet oder gleich geschützt
Fremde APIsEingehende Daten validiert, Webhook-Signaturen geprüft, Zeitlimits gesetzt

Was automatisierte Scanner finden und was nicht

API-Scanner und Fuzzer sind nützlich, und ein guter Test setzt sie ein. Sie arbeiten die Spezifikation ab, schicken veränderte Eingaben und vergleichen Antworten mit bekannten Mustern. Das deckt eine bestimmte Klasse von Fehlern zuverlässig ab. Die Autorisierungslogik gehört nicht dazu.

Findet ein Scanner meistBraucht menschliche Prüfung
Fehlendes TLS, lockere CORS-Regeln, ausführliche FehlermeldungenOb Objekt 8f3c… zu Mandant A gehört und B es nicht sehen darf
Bekannte Schwachstellen in Server-KomponentenOb eine einfache Rolle eine Funktion nicht aufrufen darf, die technisch funktioniert
Offensichtliche Injection-Muster in ParameternWelche Felder einer Antwort sensibel sind und welche schreibbar sein dürfen
Endpunkte ohne Anmeldung, erreichbare DokumentationOb ein Geschäftsablauf missbraucht werden kann, ohne dass ein Fehler auftritt

Der Grund ist einfach: Eine Antwort 200 mit Daten sieht für einen Scanner korrekt aus. Ob diese Daten dem anfragenden Konto zustehen, steht nirgends in der Antwort, sondern in den Geschäftsregeln Ihrer Anwendung. Diese Regeln kennt nur, wer weiß, welches Konto welchem Mandanten gehört, und wer die Anfrage mit zwei Konten gegenprüft. OWASP beschreibt für die Funktionsebene genau das: Fehler findet man am besten durch eine gründliche Analyse des Autorisierungsmechanismus mit Blick auf Rollen und Gruppen. Wie sich eine automatische Schwachstellenanalyse insgesamt vom Penetrationstest abgrenzt, erklärt unser Artikel Schwachstellenanalyse: was sie ist und wann Sie eine brauchen.

Für Ihr Entwicklungsteam heißt das auch: Die Tauschprüfung aus Schritt 1 lässt sich als automatisierter Test in die eigene Pipeline übernehmen. OWASP empfiehlt, Tests für den Autorisierungsmechanismus zu schreiben und Änderungen nicht auszuliefern, wenn sie fehlschlagen. Der Pentest findet die Lücken, der Regressionstest verhindert, dass sie zurückkommen.

Was im Ergebnisbericht stehen sollte

Ein API-Pentest-Bericht ist dann brauchbar, wenn Ihr Entwicklungsteam jeden Befund ohne Rückfrage nachstellen kann. Je Befund gehören dazu:

Dazu kommen eine Management-Zusammenfassung, die Abdeckung (welche Endpunkte und Rollen geprüft wurden, welche nicht) und ein Nachtest der Korrekturen.

API-Pentest oder SaaS-Pentest?

Bei vielen SaaS-Produkten ist die API der größte Teil der Angriffsfläche, aber nicht der einzige. Mandantentrennung betrifft auch Datei-Ablagen, Hintergrundjobs, Suchindizes, Exporte und den Support-Zugang. Wenn Ihr Ziel der Nachweis für einen Enterprise-Kunden ist, dass kein Mandant in die Daten eines anderen sieht, ist ein SaaS-Penetrationstest mit Fokus auf Mandantentrennung der passende Rahmen, und die API-Prüfung ist sein Kern. Geht es um eine öffentliche oder Partner-API ohne eigene Oberfläche, reicht oft der API-Pentest allein.

Hält Ihre API die Mandantengrenze?

Wir prüfen Ihre API im schriftlich vereinbarten Umfang entlang der OWASP API Security Top 10: Objekt- und Funktionsautorisierung mit Testkonten in mehreren Mandanten, Mass Assignment, Anmeldung und Token, Limits, SSRF und die Anbindung fremder Dienste. Jeder Befund kommt mit der nachvollziehbaren Anfrage als Nachweis und einer konkreten Korrektur. Mehr zum Rahmen unter SaaS-Penetrationstest und Penetrationstest.

API-Pentest anfragen

CyberSec42 ist eine unabhängige technische Sicherheitsprüfung, keine akkreditierte Zertifizierungsstelle und keine Rechtsberatung. CyberSec42 steht in keiner Verbindung zur OWASP Foundation.

Häufige Fragen

Was ist ein API-Pentest?

Ein Penetrationstest, der eine Programmierschnittstelle direkt prüft, ohne den Umweg über die Oberfläche. Im Mittelpunkt steht, ob jedes Konto nur die Objekte und Funktionen erreicht, die ihm zustehen. Grundlage sind meist die OWASP API Security Top 10 und eine Spezifikation wie OpenAPI.

Welche Fassung der OWASP API Security Top 10 ist aktuell?

Die Fassung 2023. Sie ist die zweite Ausgabe nach der ersten von 2019. Eine neuere Fassung ist auf der Projektseite von OWASP mit Stand 28.10.2026 nicht veröffentlicht.

Was ist BOLA?

Broken Object Level Authorization: Die API prüft nicht, ob das angefragte Objekt dem anfragenden Konto gehört. Wer die ID in der Anfrage austauscht, bekommt fremde Daten. OWASP führt BOLA als Risiko Nummer eins der API-Liste.

Reicht ein automatischer API-Scanner?

Für Konfigurationsfehler und bekannte Muster ist ein Scanner hilfreich. Ob ein Objekt einem anderen Mandanten gehört oder eine Rolle eine Funktion nicht nutzen darf, kann er nicht beurteilen. Dafür braucht es eine Prüfung mit mehreren Testkonten und Kenntnis der Geschäftsregeln.

Testen wir besser in Produktion oder in Staging?

In der Regel in einer Staging-Umgebung, die der Produktion in Code und Konfiguration entspricht, mit Testdaten statt Kundendaten und mit Zahlungs- und Versanddiensten im Testmodus. Abweichungen zur Produktion sollten vorher bekannt und im Bericht vermerkt sein.

Was brauchen Sie von uns für einen API-Pentest?

Eine aktuelle Spezifikation der Schnittstelle, Testkonten je Rolle in mindestens zwei Mandanten mit angelegten Testdaten, Zugang zur Testumgebung, eine schriftliche Freigabe mit Scope und eine Ansprechperson für die Testzeit.

Weiterlesen

Quellen