APIs sind für Hacker sehr attraktiv, sagte Paul Fremantle (Mitbegründer des WSO2) vor ein paar Monaten. Und er hat recht. APIs sind die Schnittstelle zu vielen Produkten und Services deines Unternehmens. Sie sind von Natur aus offen und attraktiv. Die Nutzer deiner APIs sind nämlich oft nicht nur innerhalb des Unternehmens zu finden, sondern zunehmend auch außerhalb.
Das möchte ich noch stärker betonen:
“Eine ungesicherte API ist buchstäblich ein ‚all you can eat Buffet‘ für Hacker.”
Aber niemand, der bei klarem Verstand ist, würde eine ungesicherte API nach außen hin zur Verfügung stellen, oder? Du könntest Recht haben. Ich denke, die meisten Leute sind sich bewusst, dass man Sicherheit braucht, wenn man Dienstleistungen anbietet. Es spielt wirklich keine Rolle, wem du sie anbietest, der Außenwelt oder dem Unternehmen selbst. Ganz zu schweigen davon, dass die Bestimmung einer API einfach ist, es richtig zu machen ist eine Form der Kunst.
Sicherheit kann viele Formen haben
Wir konzentrieren uns auf die Sicherheit aus der API-Perspektive. Es gibt außerdem Firewalls, Virenscanner, Malware-Erkennung und so weiter. Unser Yenlo-Geschäft dreht sich unter anderem um APIs, daher der Fokus. Du könntest sagen, dass du möchtest, dass sich deine API-Benutzer registrieren und mit einem Token arbeiten. Dieser berechtigt den User und kann widerrufen werden. Ohne Token hast du keinen Zugang. Der Token kann in Verbindung mit Benutzername und Passwort verwendet werden, indem man den OAUTH2-Gewährungstyp verwendet. Du brauchst dann eine Client-ID und ein Client-Secret, sowie das Passwort und den Benutzernamen eines Users, um ein Token zu generieren.
Wenn der Token in kurzer Zeit ablaufen muss, gibt er dir ein gewisses Sicherheitsgefühl. Trotzdem ist das Token an sich, für die Dauer der Gültigkeit, so ziemlich so ähnlich wie die Schlüsselkarte des Hotels. Wenn du die Schlüsselkarte hast, bekommst du Zugang zum Zimmer. Keiner wird überprüfen, ob du tatsächlich der rechtmäßige Besitzer des Zimmers bist. Ein Token funktioniert auf die gleiche Art und Weise.
Aber das sind die einfachen Dinge, schauen wir uns doch mal an, warum wir überhaupt Sicherheit brauchen.
Warum brauchen wir Sicherheit?
Warum brauchen wir Sicherheit? Nun, es gibt eine Reihe von Gründen:
1. Gesetze und Weisungen
2. Öffentlichkeitsarbeit
3. Geschäftliche Gründe (zum Beispiel: Datenintegrität)
4. Geschäftskontinuität (DDOS, Ransomware)
GDPR, CCPA und andere
Zur ersten Kategorie gehört natürlich die Tatsache, dass es Datenverwaltungsgesetze wie das europäische GDPR gibt, die beschreiben, was du tun und was du nicht tun solltest. Was den Datenschutz betrifft. In den Vereinigten Staaten gibt es in gleichem Maße Gesetze. Ein Beispiel dafür ist der kalifornische Consumer Privacy Act. Für Europa könnte dies bei mehrfachen Verstößen eine saftige Geldstrafe bedeuten. Dies kann bis zu 20 Millionen Dollar (oder Euro) oder 4% des Umsatzes ausmachen, je nachdem, welcher Betrag höher ist. Bei mehrfachen Verstößen würde das bedeuten, dass du fahrlässig gehandelt hast, weil du dich nicht informiert oder keine Vorsichtsmaßnahmen getroffen hast.
APIs werden auch dazu benutzt, Dienste im Bereich der Client-Daten anzubieten. Beispielsweise die PSD2-Richtlinie, nach der Banken Drittanbietern den Zugriff auf Daten erlauben sollten. Selbstverständlich nur, wenn der Kunde seine Zustimmung zur Nutzung der Daten gibt. Zum Beispiel Daten, die sich auf ihr Bankkonto und ihre Transaktionen beziehen.
Schäm dich
Aber vergiss nicht, dass es auch aus der Perspektive der Öffentlichkeitsarbeit einen starken Schwung gibt. Oft wird über Datenschutzverletzungen in den Medien berichtet. Online findest du Listen von Datenverletzungen, die Millionen von Nutzern bei den seriösen Firmen betreffen. (Ich will keine Namen nennen und mich nicht blamieren, aber wenn du googelst, wirst du sie finden; das Internet vergisst nicht so schnell). Das alles ist auf ungesicherte APIs zurückzuführen? Wahrscheinlich nicht. Aber es zeigt, dass eine Datenschutzverletzung, oder Daten, die von einer API durchgesickert sind, Nachrichten sind, über die die Nachrichtenagenturen gerne berichten. Aber selbst wenn niemand in der Lage sind, Daten von dir zu stehlen, können sie dein Unternehmen oder deine Services stören oder beeinträchtigen.
Integrität der Daten
Stell dir eine API vor, die nicht richtig gesichert ist. Beispielsweise kann jemand dein Inventar manipulieren. Nehmen wir an, sie setzen die Anzahl der zu verkaufenden Artikel deutlich niedriger an. Wurde gerade etwas gestohlen? Nein, davon bekommst du keine Kopfschmerzen. Denn was in der Datenbank steht, ist die Wahrheit. Und wenn man die Wahrheit herausfordern muss, kann es eine mühsame Übung sein, die Anzahl der Artikel im Lager zu erfassen.
Es kann auch sein, dass Hacker die Anzahl der Artikel im Lager erhöhen können. Das bedeutet nicht nur, dass man nachzählen muss, sondern auch, dass die Leute, die den Gegenstand bestellt haben, enttäuscht sind, weil die Anzahl der Bestellungen die Anzahl der vorrätigen Gegenstände übersteigt.
Das ist in beiden Fällen nicht das, was man will.
Du kannst dir noch viele weitere Beispiele vorstellen, wie zum Beispiel die Änderung des Preises. Oder ein Image in etwas Gemeines zu verwandeln. Das würde der Organisation echtes Kopfzerbrechen bereiten. Wie du sehen kannst, sind Änderungen der Daten ein Albtraum.
Und schon die einfache Tatsache, dass jemand Zugang zu Daten bekommt, die er nicht haben sollte, ist ein Albtraum. Es ist ein PR-Alptraum. Eine Datenbank mit der Größe von Menschen, damit die Menschen plötzlich die Größe anderer Menschen sehen können. Sind das persönliche identifizierbare Daten? Ich denke, in manchen Fällen schon.
Das scheint keine große Sache zu sein, denn wenn man eine Person ansieht, kann man die ungefähre Größe abschätzen. Aber die einfache Tatsache, dass diese Personen keinen Zugang zur Datenbank haben sollten, und jetzt haben, das ist das eigentliche Problem.
DDOS und Ransomware
Aber genug davon. Reden wir über einige andere Sicherheitsfälle. Du kannst über den Fall denken, dass DDOS (Distributed Denial of Service) deine APIs mit Anfragen überflutet, die, wenn sie nicht richtig verwaltet werden (was eine große Sache ist), wahrscheinlich deinen Service unbrauchbar machen. Ransomware attackiert doppelt so viel und bereitet den Security-Leuten Kopfschmerzen. Du verlierst Geld, du verlierst dein Gesicht und einige werden ihre Jobs verlieren.
API Security ist oberstes Gebot
Inzwischen hast du verstanden, dass Sicherheit an erster Stelle steht. Also, was kannst du tun? Die Antwort ist ganz einfach. Du brauchst eine API-Management Lösung in Verbindung mit einem Identity Server, mit der du die Identity und den Zugang zu deinen APIs verwalten kannst. Am besten natürlich als Service, denn der Vorteil ist, dass du dann die Arbeit und die Last der Sicherheit / Patches / Betriebszeit / Überwachung auf eine dritte Partei übertragen kannst. Aber wie soll eine solche Plattform heißen und welche Produkte werden Teil der Plattform sein? Nun, die Antwort ist einfach: Die Plattform heißt Yenlo’s Connext-Plattform (verfügbar als Platform-as-a-Service-Konzept) und wurde von Yenlo auf Basis des preisgekrönten Open-Source WSO2-API-Managers, des WSO2 Enterprise Integrators und des WSO2 Identity Servers entwickelt, mit denen du beginnen kannst, deine APIs sicher zu öffnen. In Kombination mit einem voll integrierten ELK-Stack für Überwachung und Dashboarding ist dies die ultimative Plattformlösung für deine APIs und Integrationen. Einschließlich der 42Crunch-API-Untersuchung, die von Yenlo durchgeführt wurde, um zu sehen, ob die Definition (zum Beispiel: Ressourcen, Kontext und http-Verben) auch sicher ist.
So kannst du eine bessere Nachtruhe haben, ohne dir Gedanken über APIs machen zu müssen. Wenn du mehr darüber erfahren möchtest, kannst du uns gerne kontaktieren.
Webinar
Am Donnerstag, den 22. Oktober 2020 um 9:00 Uhr (PDT) / 18:00 Uhr (CET) / 21:30 Uhr (IST) organisiert Yenlo ein Webinar über die Sicherheitsaspekte bei der Offenlegung von APIs, warum wir uns für den WSO2 API Manager entschieden haben, sowie einen allgemeinen Überblick über das Produkt und eine Demo, die anhand der Beispiel-API das Sicherheitsniveau bewertet, Sicherheitslücken aufdeckt und euch zeigt, wie ihr es verbessern könnt.
Nimm am Webinar teil und registriere dich jetzt.
Veröffentlicht am 22. September 2020