OWASP Top 10 der API-Sicherheit – Übersicht und Best Practices

APIs spielen eine entscheidende Rolle in modernen Anwendungsarchitekturen. Dieses OWASP-Projekt konzentriert sich auf die Sensibilisierung für häufige Schwachstellen der API-Sicherheit.

Das Ziel der OWASP-Liste (Open Worldwide Application Security Project) der 10 kritischsten API-Sicherheitsrisiken besteht darin, die an der API-Entwicklung und -Wartung Beteiligten zu schulen und das Bewusstsein für häufige Schwachstellen der API-Sicherheit zu schärfen. APIs sind zunehmend zu einem Ziel für Angreifer geworden, und das API-Sicherheitsprojekt von OWASP konzentriert sich auf Strategien und Lösungen, um die einzigartigen Schwachstellen und Sicherheitsrisiken im Zusammenhang mit APIs zu verstehen und zu mindern.

Was sind APIs?

APIs (Application Programming Interfaces, Anwendungsprogrammierschnittstellen) sind für die Entwicklung moderner Anwendungen von grundlegender Bedeutung, da sie es Anwendungen erleichtern, mit anderen Anwendungen, Diensten oder Plattformen zu kommunizieren und Daten auszutauschen. APIs sind ein wichtiger Bestandteil der Strategie zur Modernisierung von Anwendungen und bilden die Grundlage für mobile Apps. Sie ermöglichen Unternehmen die einfache Integration in externe Plattformen und Dienste von Drittanbietern sowie die Entwicklung umfassender Lösungen durch die Verbindung zahlreicher verschiedener Komponenten. Dies fördert einen modularen Ansatz für die Anwendungsentwicklung, der es Entwicklern ermöglicht, vorhandene Dienste und Funktionen zu nutzen, die Wiederverwendung von Code zu fördern, Entwicklungszyklen zu beschleunigen und die Produktivität zu steigern.

APIs erweitern jedoch auch die Risikooberfläche und bringen aufgrund der Art ihrer Abhängigkeiten über Multi-Cloud-Architekturen hinweg unvorhergesehene Risiken mit sich. Wie Webanwendungen sind APIs anfällig für die Ausnutzung von Schwachstellen, den Missbrauch durch automatisierte Bedrohungen, Denial-of-Service-Angriffe, Fehlkonfigurationen und Angriffe, die Authentifizierungs- und Autorisierungskontrollen umgehen.

APIs legen naturgemäß kritische Geschäftslogiken und vertrauliche Informationen wie Benutzerdaten, Authentifizierungsdaten und Finanztransaktionen offen und sind zunehmend zu einem Ziel für Angreifer geworden, insbesondere Funktionen zum Anmelden, Erstellen eines Benutzerkontos, Hinzufügen zum Warenkorb und Überweisen von Geld. APIs können zu Eintrittspunkten für Angreifer werden, die Schwachstellen ausnutzen oder die zugrunde liegende Infrastruktur sowie die Ressourcen kompromittieren möchten.

Was sind die besten API-Sicherheitspraktiken?

Robuste API-Sicherheitsmaßnahmen sind erforderlich, um Daten vor unberechtigtem Zugriff, Manipulation oder Offenlegung zu schützen, den Datenschutz zu gewährleisten, das Vertrauen von Benutzern und Interessengruppen zu wahren sowie die Vertraulichkeit, Integrität und Verfügbarkeit von APIs zu gewährleisten. Die besten API-Sicherheitspraktiken umfassen unter anderem Folgendes:

  • Implementieren Sie starke Authentifizierungs- und Autorisierungsmaßnahmen. Setzen Sie angemessenen Autorisierungsprüfungen durch, um sicherzustellen, dass authentifizierte Clients über die erforderlichen Berechtigungen verfügen, um auf bestimmte Ressourcen zuzugreifen oder bestimmte Aktionen auszuführen. Verwenden Sie granulare Zugriffskontrollen, um den Zugriff auf sensible API-Endpunkte oder -Daten sowie relevante Objekte und Funktionen zu beschränken.
  • Validieren Sie die Verschlüsselung von Eingabe und Ausgabe. Validieren und bereinigen Sie alle von API-Clients erhaltenen Eingaben, um Einschleusungen zu verhindern, und verschlüsseln Sie die Ausgabe entsprechend, um die Ausführung schädlicher Skripte zu verhindern.
  • Setzen Sie sichere Kommunikation ein. Verwenden Sie sichere Protokolle für die Übertragung von Daten zwischen API-Clients und Servern und verschlüsseln Sie vertrauliche Daten bei der Übertragung und im Ruhezustand, um die Vertraulichkeit und Integrität der Daten zu gewährleisten.
  • Implementieren Sie eine Ratenbegrenzung und -drosselung. Begrenzen Sie die Anzahl an Anfragen, die API-Clients innerhalb eines bestimmten Zeitraums stellen können, um eine übermäßige Nutzung oder unberechtigte Zugriffsversuche wie bei Distributed Denial-of-Service (DDoS)- und Brute-Force-Angriffen zu verhindern.
  • Führen Sie regelmäßige Sicherheitstests und -audits durch. Führen Sie regelmäßige Sicherheitsbewertungen, Penetrationstests und Codeprüfungen durch, um potenzielle Schwachstellen in Ihren APIs zu identifizieren und zu beheben. Führen Sie außerdem Sicherheitsaudits durch, um Schwachstellen zu erkennen und die Einhaltung von branchenweiten Standards und Anforderungen sicherzustellen. Dies ist aufgrund der Abhängigkeiten von APIs sowie den zugrunde liegenden Frameworks und Bibliotheken besonders wichtig.
  • Erzwingen Sie die Einhaltung von Schemas und Protokollen. Die automatische Erstellung und Durchsetzung eines positiven Sicherheitsmodells mit OpenAPI-Spezifikationen ist ein wertvolles Tool, um eine konsistente Sicherheitsrichtlinie zu gewährleisten.
  • Stellen Sie eine dynamische Erkennung und kontinuierliche Bewertung von APIs sicher. Die Verbreitung von APIs hat dazu geführt, dass manche APIs nicht mehr berücksichtigt oder gepflegt werden, wie dies z. B. bei Schatten-APIs der Fall ist. Sicherheitskontrollen müssen APIs ständig mit Zero-Trust- und „Least Privilege“-Zugriffsparadigmen inventarisieren und schützen, um das unvorhergesehene Risiko durch Abhängigkeiten von Drittanbietern zu minimieren.
  • Umfassende Bedrohungserkennung. APIs unterliegen einer Vielzahl von Bedrohungen wie Ausnutzen von Schwachstellen, Fehlkonfigurationen, Bots, Betrug sowie missbräuchliche Nutzung und müssen vor diesen geschützt werden.

OWASP Top 10 der API-Sicherheit – 2023

Die OWASP Top 10 der API-Sicherheit – 2023 wurde formuliert, um das Bewusstsein für häufige Schwachstellen der API-Sicherheit zu schärfen und Entwicklern, Designern, Architekten, Managern und allen anderen Personen, die an der API-Entwicklung und -Wartung beteiligt sind, zu helfen, einen proaktiven Ansatz für die API-Sicherheit zu gewährleisten.

Die OWASP Top 10 der API-Sicherheitsrisiken für 2023 umfassen Folgendes:  

  1. Fehlerhafte Autorisierung auf Objektebene. Diese Sicherheitslücke tritt auf, wenn eine Anwendung die Zugriffskontrollen auf Objekt- oder Datenebene nicht ordnungsgemäß durchsetzt, wodurch ein Angreifer Autorisierungsprüfungen manipulieren oder umgehen kann und so unberechtigten Zugriff auf bestimmte Objekte oder Daten innerhalb einer Anwendung erhält. Dies kann durch die unsachgemäße Durchführung von Autorisierungsprüfungen, einen Mangel an ordnungsgemäßer Validierung oder die Umgehung von Zugriffskontrollen geschehen. Jeder API-Endpunkt, der eine ID eines Objekts empfängt und eine Aktion für das Objekt ausführt, sollte Autorisierungsprüfungen auf Objektebene durchführen. So wird sichergestellt, dass der angemeldete Benutzer über die Berechtigungen zum Ausführen der angeforderten Aktion für das angeforderte Objekt verfügt.
  2. Fehler in der Authentifizierung. Authentifizierungsmechanismen werden in einer API häufig falsch implementiert, sodass Angreifer unberechtigten Zugriff auf Benutzerkonten oder vertrauliche Daten erhalten oder nicht autorisierte Aktionen ausführen können. Diese Fehler entstehen in der Regel durch eine unsachgemäße Implementierung oder Konfiguration von Authentifizierungsprozessen, schwache Passwortrichtlinien, Fehler bei der Sitzungsverwaltung oder andere Schwachstellen im Authentifizierungs-Workflow.
  3. Fehlerhafte Autorisierung auf der Objekteigenschaftsebene. Diese Bedrohung tritt auf, wenn eine API Zugriffskontrollen und Autorisierungsprüfungen auf Objekteigenschaftsebene nicht ordnungsgemäß durchsetzt. Ein API-Endpunkt ist anfällig für diese Angriffe, wenn er die Eigenschaften eines Objekts offenlegt, die als vertraulich gelten und vom Benutzer nicht gelesen werden sollten. Diese Art des Exploits wird manchmal als übermäßiger Datenzugang bezeichnet. Ein API-Endpunkt ist auch anfällig für diese Angriffe, wenn er es einem Benutzer ermöglicht, den Wert der Eigenschaft eines sensiblen Objekts zu ändern, zu erweitern oder zu löschen. Diese Art des Exploits wird manchmal als Massenzuweisung bezeichnet.
  4. Unbeschränkter Ressourcenverbrauch. Bei diesem Angriff, der auch als Ressourcenerschöpfung bezeichnet wird, werden Schwachstellen in der API-Implementierung ausgenutzt, um absichtlich eine übermäßige Menge an Ressourcen wie CPU, Speicher, Bandbreite oder andere Systemressourcen zu verbrauchen. Dieser DoS-Angriff (Denial of Service) beeinträchtigt die Leistung oder Verfügbarkeit der API oder des zugrunde liegenden Systems und kann zu Ausfallzeiten führen.
  5. Fehlerhafte Autorisierung auf Funktionsebene. Diese Bedrohung tritt auf, wenn eine API Autorisierungsprüfungen auf Funktions- oder Betriebsebene nicht ordnungsgemäß durchsetzt, sodass Angreifer auf nicht autorisierte Funktionen zugreifen können. Die Implementierung ordnungsgemäßer Autorisierungsprüfungen kann zu Verwirrung führen, da moderne Anwendungen viele Arten von funktionalen Rollen und Gruppen definieren und komplexe Benutzerhierarchien beinhalten können, die von Angreifern manipuliert werden können.
  6. Uneingeschränkter Zugriff auf vertrauliche Geschäftsabläufe. Dieser Angriff tritt auf, wenn eine API keine ordnungsgemäßen Zugriffskontrollen oder Autorisierungsprüfungen aufweist, sodass Angreifer den Zugriff auf vertrauliche, von der API gestützte Geschäftsabläufe automatisieren können. Diese Geschäftsabläufe könnten beispielsweise den Masseneinkauf von hochwertigen Produkten mit niedrigem Lagerbestand wie Tickets oder Sneakern beinhalten, die mit einem Preisaufschlag auf Sekundärmärkten weiterverkauft werden können. Angreifer rüsten ihre Angriffe häufig mit ausgeklügelten Automatisierungs-Toolkits um und können sich auf die Geschäftslogik hinter APIs konzentrieren, wenn die Webanwendungen des Ziels ausreichend durch Abwehrmaßnahmen gegen die Automatisierung geschützt sind.
  7. Serverseitige Anfragenfälschung (SSRF, Server-Side Request Forgery). Diese Schwachstelle entsteht, wenn ein Angreifer einen anfälligen API-Endpunkt identifiziert, der vom Benutzer bereitgestellte URLs akzeptiert oder serverseitige Anfragen an externe Ressourcen ausführt. Der Angreifer erstellt schädliche Anfragen, die URLs interner Ressourcen oder Systeme angeben, auf die es der Angreifer abgesehen hat. Ungeachtet der dahinter liegenden, böswilligen Absicht führt der Server die serverseitige Anfrage an die angegebene URL aus, wodurch möglicherweise vertrauliche Daten oder Dienste kompromittiert werden.
  8. Sicherheitsrelevante Fehlkonfiguration. Angreifer versuchen, nicht gepatchte Fehler, gemeinsame Endpunkte, Dienste mit unsicheren Standardkonfigurationen oder ungeschützte Dateien und Verzeichnisse zu finden, um so unberechtigten Zugriff auf die API zu erhalten. Diese Schwachstelle kann entstehen, wenn keine angemessene Sicherheitshärtung auf jeder Ebene des API-Stacks – vom Netzwerk bis zur Anwendungsebene – vorhanden ist oder wenn fehlkonfigurierte Berechtigungen für Cloud-Dienste vorliegen. Fehlkonfigurationen wirken sich auf Webanwendungen und APIs aus und stellen ein zunehmendes Risiko dar, da die Architektur weiterhin dezentralisiert und über Multi-Cloud-Umgebungen verteilt wird.
  9. Unsachgemäße Bestandsverwaltung. APIs unterliegen im Laufe der Zeit Änderungen und Aktualisierungen. Veraltete oder unsichere API-Versionen können jedoch in der Produktion verbleiben und ältere Endpunkte können ungepatcht bleiben oder schwächere Sicherheitsanforderungen verwenden, was das Risiko von Sicherheitsverletzungen erhöht. Das Fehlen einer ordnungsgemäßen Bestandsverwaltung erschwert die Übersicht darüber, welche Versionen verwendet werden, welche veraltet oder überholt sind und welche Schwachstellen behoben wurden. Schatten- und Zombie-APIs stellen erhebliche Risiken dar und unterstreichen die Bedeutung der kontinuierlichen Entdeckung und des automatisierten Schutzes. 
  10. Unsicherer Verbrauch von APIs. Entwickler neigen dazu, den von Drittanbieter-APIs erhaltenen Daten zu vertrauen, insbesondere im Falle von APIs, die von bekannten Unternehmen angeboten werden. Dadurch nehmen sie schwächere Sicherheitsanforderungen für diese Daten in Bezug auf die Eingabevalidierung und -bereinigung oder Transportsicherheit an. Ein unsicherer Verbrauch kann auch auftreten, wenn über unsichere Protokolle auf APIs zugegriffen wird oder keine geeigneten Verschlüsselungsmechanismen verwendet werden, was zum Abhören, zu abgefangenen Daten und zu unberechtigtem Zugriff auf vertrauliche Informationen führen kann.

Der Fall für integrierte Sicherheitskontrollen

F5 geht die OWASP-Sicherheitsrisiken an

F5 unterstützt die OWASP Foundation und ihr Bestreben zur Verbesserung der Softwaresicherheit sowie zur Sensibilisierung für Sicherheitsrisiken und Schwachstellen von Webanwendungen auf mehreren Ebenen. Es gibt nämlich Sicherheitsrisiken, die sowohl Anwendungen als auch APIs gemeinsam sind und bei der Implementierung von Sicherheitslösungen berücksichtigt werden sollten. Zum Beispiel:

  • Schwache Authentifizierungs-/Autorisierungskontrollen
  • Fehlkonfiguration
  • Missbräuchliche Nutzung der Geschäftslogik (Credential Stuffing, Account Takeover)
  • Serverseitige Anfragenfälschung (SSRF, Server-Side Request Forgery).

F5 geht die in den OWASP Top 10 der API-Sicherheit identifizierten Risiken mit Lösungen an, welche Schutz vor der wachsenden Angriffsfläche und neuen Bedrohungen bieten, während sich die Anwendungen weiterentwickeln und die API-Bereitstellungen zunehmen. F5 Web Application and API Protection (WAAP)-Lösungen schützen die gesamte Angriffsfläche moderner Anwendungen mit umfassenden Schutzmaßnahmen, darunter WAF, API-Sicherheit, DDoS-Abwehr auf L3–L7 und Bot-Abwehr gegen automatisierte Bedrohungen und Betrug. Die verteilte Plattform erleichtert die Bereitstellung konsistenter Richtlinien sowie die Skalierung der Sicherheit für Ihre gesamte Palette von Anwendungen und APIs, unabhängig davon, wo diese gehostet werden, und integriert Schutzmaßnahmen in den API-Lebenszyklus und in breitere Sicherheitsökosysteme.

F5 bietet hybride Sicherheitsarchitekturen, die Anwendungen und APIs konsistent und kontinuierlich vom Kern über die Cloud bis zum Rand schützen. Die Lösungen von F5 erkennen und schützen die kritische Geschäftslogik hinter APIs auf dynamische Weise mithilfe von Bedrohungsanalysen, ML-basierter Sicherheit und Zero-Trust-Prinzipien. Außerdem bieten die Lösungen die Widerstandsfähigkeit und Agilität, welche für den Wettbewerb in der API-gesteuerten digitalen Wirtschaft von heute erforderlich sind.

F5 Web Application Firewall-Lösungen blockieren und mindern zudem ein breites Spektrum von Risiken, die in den OWASP Top 10 identifiziert wurden. Dabei handelt es sich um eine weithin anerkannte Liste der kritischsten Sicherheitsrisiken für Webanwendungen. APIs sind ebenso wie Webanwendungen anfällig für Fehlkonfigurationen und automatisierte Bedrohungen. Sie können Ziel von Ausnutzungen von Schwachstellen, SSRF und anderen Angriffen sein, die versuchen, die Authentifizierungs- und Autorisierungskontrollen zu umgehen. F5 WAF-Lösungen kombinieren Signatur- und Verhaltensschutz, einschließlich Bedrohungsdaten von F5 Labs und ML-basierter Sicherheit, um mit aufkommenden Bedrohungen Schritt zu halten. Diese Lösungen können auch in spezielle Bot-Abwehrkontrollen integriert werden.

Diese Lösungen erleichtern die Last und die Komplexität der konsistenten Sicherung von Anwendungen in der Cloud, vor Ort sowie an Edge-Standorten bei gleichzeitiger Vereinfachung der Verwaltung über eine zentralisierte SaaS-Infrastruktur. F5 WAFs optimieren zudem die Anwendungssicherheit, indem sie Schutzmaßnahmen in Entwicklungs-Frameworks und CI/CD-Pipelines mit grundlegenden Sicherheitsfunktionen, zentraler Orchestrierung und einem einzigen Dashboard samt umfassender Übersicht über Anwendungsleistung und Sicherheitsereignisse in verteilten Anwendungen integrieren.

Darüber hinaus bietet F5 Lösungen zur Bewältigung der im OWASP-Projekt zu automatisierten Bedrohungen für Webanwendungen beschriebenen Risiken. F5 Distributed Cloud Bot Defense verhindert eine betrügerische und missbräuchliche Nutzung, welche bestehende Bot-Management-Lösungen umgehen kann, und bietet Echtzeitüberwachung, Bedrohungsdaten sowie ML-basierte retrospektive Analysen, um Unternehmen vor automatisierten Angriffen zu schützen, ohne dass es zu Reibungspunkten für Benutzer kommt oder das Kundenerlebnis gestört wird. Distributed Cloud Bot Defense behält seine Wirksamkeit bei, unabhängig davon, auf welche Weise Umrüstungen vorgenommen werden, ob die Angriffe von Webanwendungen zu APIs wechseln oder die Angreifer versuchen, Abwehrmaßnahmen gegen die Automatisierung durch Spoofing von Telemetrie oder den Einsatz von menschlichen CAPTCHA-Lösern zu umgehen.

F5 bietet auch einen mehrstufigen DDoS-Schutz für erweiterte Online-Sicherheit in Form eines verwalteten, aus der Cloud bereitgestellten Schutzdienstes an, der groß angelegte Angriffe auf Netzwerke, Protokolle und Anwendungen in Echtzeit erkennt und abwehrt. Die gleichen Schutzmaßnahmen sind auch für lokale Hardware-, Software- und Hybridlösungen verfügbar. F5 Distributed Cloud DDoS Mitigation bietet Schutz vor volumetrischen und anwendungsspezifischen Angriffen auf Ebene 3–4 sowie vor fortgeschrittenen Angriffen auf Ebene 7, bevor diese Ihre Netzwerkinfrastruktur und Anwendungen erreichen.