API-Sicherheit: Best Practices für den Schutz sensibler Daten

finAPI
von Karol Stec, Chief Information Security Officer (CISO) und Jörg Flade, Senior Java Engineer & Solution Architect, finAPI
Fehlkonfigurationen oder unsichere Implementierungen können gravierende Folgen haben: von Datenschutzverletzungen bis hin zu finanziellen Verlusten. Entwickler sollten daher folgende Schlüsselaspekte berücksichtigen.API-Guidelines definieren
Jedes Unternehmen sollte klare API-Richtlinien festlegen, um eine einheitliche und sichere Entwicklung zu gewährleisten. Diese sollten sicherheitsrelevante Best Practices enthalten:
- Vermeidung sensibler Daten in URLs: Such-Endpunkte sollten als POST-Requests implementiert werden, um personenbezogene Daten wie Namen oder IBANs zu schützen.
- Keine erratbaren Objektreferenzen: Interne numerische IDs sollten nicht direkt in der API ausgegeben werden. Stattdessen ist die Nutzung von zufälligen UUIDs sinnvoll.

Verschlüsselung und sichere Authentifizierung als Grundprinzip
Für fast jede API bedarf es einer sicheren Authentifizierung und oft auch einer Verschlüsselung. Auch hier gilt „Never build your own Security“ – es sollten erprobte (idealerweise Open-Source) Standards implementiert werden:
- OAuth als Standard: OAuth 2.0 mit sicheren Implementierungen gewährleistet eine robuste Authentifizierung (hierbei müssen die Berechtigungsprüfungen umfassend implementiert sein).
- HTTPS als Minimum: API-Aufrufe müssen gegen Angriffe (Integrität und Vertraulichkeit) gesichert werden. Hierfür sollte im Minimum immer HTTPS benutzt werden.
Shadow APIs absichern
Wenn Systeme Verwaltungs-APIs benötigen, die nicht öffentlich einsehbar sind, bedeutet das nicht, dass sie weniger schützenswert sind. Diese Schnittstellen enthalten oft besonders kritische Funktionen und Daten.
- Keine trügerische Sicherheit durch versteckte URLs: Eine kryptische URL oder das Fehlen in der Dokumentation ist kein ausreichender Schutz.
- Separate Implementierung oder Port-Trennung: Besonders kritische APIs sollten auf separaten Ports laufen, die nicht öffentlich erreichbar sind.
- Firewall-Konfiguration genau prüfen: Eine fehlerhafte Firewall-Einstellung kann dazu führen, dass unberechtigte Zugriffe auf interne APIs möglich werden. Regelmäßige Tests und Security Audits sind daher essenziell.

API-Sicherheit regelmäßig testen
Tests sind nicht gleich Tests. Es gibt funktionale Tests, welche die fachliche Logik und ggf. sogar bestimmte Zugriffsberechtigungen testen.
- Automatisierte Security-Tests: Alle geschützten Endpunkte sollten überprüft werden, um sicherzustellen, dass nur gültige Tokens Zugang gewähren.
- Manipulationsversuche simulieren: Es sollte getestet werden, ob durch Änderungen in der URL auf fremde Ressourcen zugegriffen werden kann.
- ACL- und Datenbank-Validierung sicherstellen: Datenleaks entstehen häufig, wenn eine API eine ACL-Prüfung (Access Control List) nicht durchführt oder eine fehlerhafte Datenbank-Query unbefugten Zugriff auf Nutzerdaten ermöglicht.
- DAST-Tools nutzen: Tools wie der Burp-Scanner können APIs auf gängige Angriffsmuster testen und Schwachstellen frühzeitig identifizieren.
Fazit: Proaktive Sicherheitsstrategien sind unerlässlich
API-Sicherheit ist kein einmaliges Projekt, sondern ein fortlaufender Prozess. Unternehmen sollten Best Practices implementieren, regelmäßige Sicherheitsüberprüfungen durchführen und ihre Entwickler für API-Sicherheitsrisiken sensibilisieren. Eine konsequente Umsetzung dieser Maßnahmen minimiert potenzielle Angriffe und schützt sensible Kundendaten nachhaltig.
Als Open-Banking-Spezialist setzt finAPI auf höchste Sicherheitsstandards und kontinuierliche Überprüfung der eigenen API-Sicherheit. Die hier beschriebenen Best Practices sind ein essenzieller Bestandteil der Sicherheitsstrategie moderner Finanz-APIs.Karol Stec, und Jörg Flade, finAPI/dk
Sie finden diesen Artikel im Internet auf der Website:
https://itfm.link/224852

Schreiben Sie einen Kommentar