APIs sind die Schnittstellen für den Austausch relevanter Daten zwischen verschiedenen Systemen, was sie zu einem attraktiven Ziel für Cyberkriminelle macht. Ein Zero-Trust-Ansatz, bei dem alle Anfragen zunächst überprüft werden, bevor sie zugelassen werden, bildet die Grundlage für die Abwehr von API-Angriffen.
Auf Grund ihrer Beschaffenheit ist das Sichern von APIs für Unternehmen jedoch mit verschiedenen Herausforderungen verbunden, die ein Umdenken in ihrer Herangehensweise erfordern. Worauf Unternehmen bei der Sicherung von APIs gegen Angriffe von außen achten sollten, zeigt im nachfolgenden Beitrag Markus Pentzek, Manager Presales Consulting bei Axway, auf.
In der digitalen Ökonomie, in der Datenströme und Kundenzentrierung die Geschäftsprozesse von Unternehmen bestimmen, nehmen APIs eine entscheidende Position ein. Sie bieten Zugriff auf relevante Daten, Systeme sowie Softwarekomponenten und erlauben Unternehmen, digitale Services und Geschäftsmodelle zu entwickeln und zu gestalten.
Dies macht sie zu einem interessanten Ziel für Hacker: Sie versuchen durch Attacken auf APIs und den API-Traffic Daten wie Namen, Kontonummern, E-Mail- und physische Adressen zu stehlen. Das Sichern von APIs und die Integration in eine Zero-Trust-Strategie ist auf Grund ihrer Beschaffenheit für Unternehmen jedoch mit verschiedenen Herausforderungen verbunden, die ein Umdenken in ihrem Sicherheitsansatz erfordern.
„Es ist erstaunlich, wie viele Fahrer, selbst in der Formel 1, denken, dass die Bremsen dazu da sind, das Auto zu verlangsamen.“ Mit diesem Bonmot zielte Rennfahrer Mario Andretti einst auf die Tatsache ab, dass Bremsen jenseits ihres offensichtlichen Zwecks auch dazu da sind, Neigung und Gewicht eines Autos zu kontrollieren und somit die Kurvenlage zu optimieren.
Ähnlich verhält es sich mit der Durchsetzung von IT-Sicherheitsrichtlinien: Sie sollten idealerweise die zu Grunde liegenden Prozesse vervollkommnen, anstatt sie komplizierter und somit frustrierender für die Nutzer zu machen.
APIs gibt es überall dort, wo die User Journey zu beschleunigen, zu vereinfachen oder zu verbessern ist: Unter anderem beispielsweise, um die Kreditkartenzahlung in digitalen Bestellprozessen zu vollziehen, oder die Fernwartung und Aktualisierung von Geräten vorzunehmen.
Dem Anspruch nach sollte Sicherheit in Anwendungsszenarien wie diesen von vornherein „mit an Bord“ sein, jedoch zeigt die Realität, dass Hacker APIs für ihre Zwecke missbrauchen. Dies geschieht immer wieder durch unzulängliche Authentifizierungs- und Autorisierungsprozesse.
Zum Beispiel entdeckten die API-Sicherheitsexperten von Salt Security im Frühjahr vergangenen Jahres beim unter anderem für seine Traktoren bekannten Unternehmen John Deere eine API, die Hacker aufrufen konnten, um festzustellen, ob ein bestimmter Benutzername vergeben war.
Die Experten automatisierten eine Anfrageroutine, mit der sie innerhalb von zwei Minuten ermitteln konnten, welche der Fortune-1000-Unternehmen John-Deere-Konten hatten, da die API weder eine Authentifizierung erforderte, noch die Zahl der Anfragen begrenzte. Rund 20 Prozent der Unternehmen hatten einen Account.
Ein weiterer API-Endpunkt ermöglichte es, eine Fahrzeugidentifikationsnummer (VIN) zu übermitteln und eine große Menge an Metadaten über das Gerät, den Eigentümer und den Standort abzurufen. VINs können die Hacker ohne weiteres von allgemeinen Auktionsseiten beziehen. Die API erforderte zwar eine Authentifizierung, aber es mangelte daran, die API-Anfragesender ordnungsgemäß zu autorisieren.
Zero Trust entlang des API-Lebenszyklus
Offenbar ist „Security by Design“ als Grundlage für Datenschutz in der IT bei APIs nur schwierig umsetzbar. Dies kann mitunter daran liegen, dass die Entwicklungsprozesse von APIs sich vorwiegend an Geschäftsvorgaben orientieren und organisatorisch von den Abläufen in IT-Security abgekoppelt sind.
Verschiedene Akteure in Unternehmen entwickeln und stellen die APIs bereit, die sie für ihren Zweck brauchen. Oder sie übernehmen die Schnittstellen von anderen Unternehmen. Die Annahme, dass diese APIs an die Netzwerkinfrastruktur und somit die sie umgebende Sicherheitsstruktur angebunden seien, wiegt die Nutzer in falsche Sicherheit.
Das genügt aber meistens nicht, um die Datenströme über APIs sowohl außerhalb als auch innerhalb eines Unternehmens zu schützen. Gerade letzteres erfordert eigene Sicherheitsmaßnahmen. Denn nicht jeder Zugriff, der aus der eigenen Infrastruktur kommt, ist automatisch ein berechtigter. Um Anfragen wirklich und effizient zu kontrollieren, müssen die Sicherheitstechnologien auch Menschen, Abläufe und Zugriffsmuster einbeziehen.
Darüber hinaus gilt aber immer auch der Grundsatz: Vertrauen ist gut, Kontrolle ist besser. Zero Trust verlangt daher, dass jedes Gerät und jede Verbindung bei jeder neuen Kontaktaufnahme sich authentifizieren muss, um den autorisierten Zugriff zu erhalten. Damit dies auch bei APIs zuverlässig gelingt, bedarf es Sicherheitsmaßnahmen entlang des gesamten Lebenszyklus der Schnittstellen.
Damit APIs sich nicht zu Sicherheitslücken entwickeln, sollten Unternehmen die folgenden fünf Grundregeln befolgen:
- Durchgehende Authentifizierung und Autorisierung
Die damit verbundenen Prozesse dürfen nicht nur unmittelbar an der API oder dem Gateway erfolgen. In den zugrundeliegenden Anwendungen haben sie erneut zu erfolgen.
- Continuos Integration/Continuos Delivery-Prozesse nutzen
Entwickler sollten prüfen, wie sie Sicherheitsrichtlinien in ihre Produktionszyklen integrieren können welche Validierungsprozesse sie im Zuge dessen mit CI/CD automatisiert abwickeln können.
- Automatisierte Sicherheitsmaßnahmen implementieren
Security-Ops-Teams sollten dafür sorgen, dass der Datenaustausch in der API-Kommunikation sowohl innerhalb der Infrastruktur als auch mit anderen Systemen während der ganzen Übertragung geschützt erfolgt. Dazu sollten die Abläufe automatisch Richtlinien durchsetzen, um etwa Daten vor dem Zugriff schützen, wo immer sie sich befinden.
- Alles zentral erfassen
Um IT-Sicherheit und Applikationsentwicklung besser miteinander zu verzahnen, ist es unverzichtbar, alle Prozesse zu protokollieren, zu analysieren und falls erforderlich, auf Risiken zu überprüfen. Der geeignete Ort dafür ist eine zentrale Repository, in der die Verantwortlichen alle Prozesse zu jedem Zeitpunkt nachvollziehen können.
- Zusammenarbeit mit der IT-Sicherheit
API-Entwicklerteams müssen mit IT-Sicherheitsverantwortlichen zusammenarbeiten. Gemeinsam können sie ermitteln, wie wirksam die bestehenden Maßnahmen bei möglichen API-Sicherheitsproblemen sind und diese gegebenenfalls erweitern.
Zudem sollten sie verschiedene Datenverlustszenarien durchspielen und einen Notfallplan entwickeln. Unter allem Umständen ist eine Schatten-API zu verhindern, von der nur die sie verwendenden Abteilungen etwas wissen.
Transparenz schaffen und Kontrolle ausüben
Sicherheit und Datenaustausch können einen Widerspruch darstellen, und das gilt auch und gerade für APIs: Einerseits nutzen Unternehmen sie, um Prozesse aufzubrechen, ihre Strukturen zu öffnen, Abläufe für Benutzer zu vereinfachen und ihr Geschäftsmodell zu erweitern. Andererseits dürfen sie gerade dann die Kontrolle über den Datenverkehr nicht verlieren.
Um beides miteinander in Einklang zu bringen, benötigen Unternehmen Transparenz. Alle Beteiligten müssen sicher sein, dass sie alle von ihnen genutzten APIs kennen und zuverlässig verwalten. API-Gateways können sie dabei unterstützen, automatisiert alle APIs im Unternehmen zu ermitteln und Sicherheitsrichtlinien anzuwenden.
Eine effektive API-Management-Lösung überwacht, wer welche APIs nutzt und warnt auch den Manager vor ungewöhnlichen oder verdächtigen Verhaltensweisen, die darauf hindeuten könnten, dass ein Unberechtigter am Werk ist. So sind auch die jeweiligen Abteilungen in die Sicherheit involviert.
In Kombination mit einer zentralisierten API-Governance können Unternehmen Sicherheit in den gesamten Lebenszyklus einer APIs integrieren und sie gegen das unberechtigte Eingreifen in die Kommunikation absichern, ohne die Benutzererfahrung zu beeinträchtigen.