API Scanning: Damit aus Schnittstellen keine Schwachstellen werden

Immer mehr Apps und Software bedeutet auch immer mehr Programmierschnittstellen (APIs). Werden diese nicht ausgiebig getestet und richtig abgesichert, könnten sie sich in Zukunft zu einer der größten Quellen von Datenlecks entwickeln.

Julian Trotzek-Hallhuber, Senior Principal Solutions Architect bei Veracode, zeigt die Relevanz des Problems und mögliche Gegenmaßnahmen auf. 

Anzeige

Den IT-Sicherheitsaktivisten von „zerforschung“ ist es im Herbst gelungen, persönliche Daten aus der Schul-App „scoolio“ auszulesen. Ihr Zugriffspunkt war dabei eine schlecht gesicherte Programmierschnittstelle (Application Programming Interface – API). Die Daten, die darüber abrufbar waren, waren äußerst sensibel: Die App bietet unter anderem die Möglichkeit, Chatgruppen zu verschiedenen Themen anzulegen. Über die Schwachstelle konnten die Aktivisten nun auch in Erfahrungen bringen, welchen Gruppen einzelne Schülerinnen und Schüler beigetreten sind. Das erlaubte wiederrum Rückschlüsse auf politische, religiöse oder sexuelle Orientierung der Nutzer. Auch wenn die Schul-App ein besonders drastisches und plakatives Beispiel ist, ist sie kein Einzelfall. Das Potenzial für API-bezogene Datenlecks ist enorm. 

APIs sind überall 

Die Programmierschnittstellen sind ein ganz elementarer Bestandteil der IT und Telekommunikation von heute. Dazu tragen wiederum viele Aspekte bei, vor allem aber die flächendeckende Verbreitung von Smartphones und der Siegeszug von As-a-Service-Angeboten. Bei den allermeisten Smartphone-Apps passiert eigentlich gar nichts mehr lokal, sie sind mehr oder weniger auf eine Benutzeroberfläche reduziert und Daten werden im Bedarfsfall über APIs bezogen. Mittlerweile werden auch sensible Bereiche des Alltags über das Smartphone abgewickelt, man denke nur an Banking, Trading, oder Krypto Apps. Gesundheit ist ebenfalls ein Wachstumsmarkt was Apps anbelangt. Überall sind APIs in die Kommunikation der Anwendungen involviert. Ganz ähnlich sieht es auch bei Web-Anwendungen aus. Bis zu 90 Prozent aller Web-Anwendungen nutzen laut Gartner* öffentliche APIs und sind dadurch potenziell über diesen Angriffsvektor verwundbar. Die Marktforscher gehen außerdem davon aus, dass sich APIs bis 2022 zum häufigsten Angriffsvektor entwickeln werden. 

Nicht ohne Grund, denn defekte oder schlecht gesicherte APIs sind ein besonders dankbarer Angriffsvektor für Kriminelle, da sie speziell dafür geschaffen wurden, Daten weiterzugeben. Das heißt Cyber-Kriminelle müssen sich nicht mit komplexen Prozessen in Systemen vertraut machen und Daten zusammensuchen, sie bekommen sie praktisch auf dem Silbertablett serviert. Daher sind nicht ausreichend gesicherte Schnittstellen ein so großes Problem. 

Wie kommt es überhaupt dazu? Die Fragmentierung und immer schnellere Release-Zyklen zwingen Software-Unternehmen dazu, auch immer mehr APIs immer schneller zu bauen. Dabei handelt es sich letztendlich auch nur um Code, in den sich Fehler einschleichen können. Wird Geschwindigkeit höher bewertet als Sicherheit, kann es schnell zu Problemen kommen. 

Ob eine API öffentlich ist oder nicht, spielt in der Praxis der Kriminellen übrigens keine so große Rolle, wie man vielleicht denken könnte. Es ist vergleichsweise leicht, über das Dark Net an geleakte interne Adressen zu kommen. Unternehmen sollten sich also bei privaten APIs nicht in falscher Sicherheit wiegen. Diese sollten genauso behandelt, getestet und geschützt werden wie öffentliche Schnittstellen. 

Maßnahmen gegen den API-Missbrauch 

Auch bei den Programmierschnittstellen handelt es sich letztlich nur um Code. Daher sollten sie genauso wie andere Code-Bestandteile getestet werden. Am besten sollte die Kombination von statischer und dynamischer Analyse erfolgen. Die statische Analyse sucht hier wie gewöhnlich nach formalen Fehlern im nicht-produktiven Code. Sobald die APIs dann laufen sollte noch eine ergänzende dynamische Analyse durchgeführt werden. 

Hier empfiehlt es sich, auf spezielle Werkzeuge für API-Scanning zu setzen. Derartige Tools ermöglichen es Sicherheitsfachleuten, ihre APIs zu analysieren, sobald sie in einer über das Netzwerk zugänglichen Laufzeitumgebung verfügbar sind, und bevor sie in größere Anwendungen integriert werden. Die Ergebnisse von API-Scans werden nach Kritikalität gruppiert und bieten detaillierte Anleitungen zur Behebung von Schwachstellen in einem einzigen Dashboard zusammen mit anderen Dynamic Analysis-Scans.

Dies erleichtert den Sicherheitsteams die Priorisierung von Schwachstellen und den Zugriff auf die Details, die Entwickler benötigen, um unsicheren Code schnell zu beheben, was eine reibungslose Zusammenarbeit zwischen Sicherheits- und Entwicklungsteams ermöglicht.

Eine ergänzende Maßnahme kann die Analyse der API-Dokumentation darstellen. Daraus wird ersichtlich, welche Zugriffsmöglichkeiten eine Schnittstelle bietet. Anschließend kann eine Whitelist erstellt werden, um den Zugriff auf notwendige Datentypen zu beschränken. Ein Ersatz für umfangreiches Testing sind solche Maßnahmen allerdings nicht, denn hier wird nur vordergründig geprüft und mangelhafter Code kann nicht erkannt und gefixt werden. 

NL Icon 1
Jetzt die smarten News aus der IT-Welt abonnieren! 💌

Mit Klick auf den Button “Zum Newsletter anmelden” stimme ich der Datenschutzerklärung zu.

Fazit 

Das Wachstum von As-A-Service-Angeboten und Mobile Apps bedingt immer mehr automatisierten Datenaustausch. Das wird heute in fast allen Fällen über APIs gelöst, sodass ein enormer Bedarf nach den Programmierschnittstellen besteht. Unternehmen und Entwickler sollten dabei aber nicht vergessen, dass auch APIs letztlich nur aus Code bestehen, in den sich Fehler einschleichen können. Daher ist es essentiell, APIs umfangreich zu testen, um Cyber-Kriminellen über diesen Weg nicht Tür und Tor zu öffnen. 

*Gartner’s API Strategy Maturity Model, Saniye Alaybeyi, Mark O’Neill, 27 April 2021.

Julian Totzek-Hallhuber

Veracode -

Senior Principal Solutions Architect

(Bildquelle: Veracode)Julian Totzek-Hallhuber ist Senior Principal Solutions Architect bei Veracode. Als Spezialist für Anwendungssicherheit mit mehr als 15 Jahren Erfahrung im IT-Sicherheitsumfeld, verfügt er über Expertise in den Bereichen Anwendungsentwicklung, Penetrationstests sowie Sicherheit von Webanwendungen. Zudem ist er Autor zahlreicher Artikel, regelmäßig als Sprecher auf Messen anzutreffen und hat
Anzeige

Artikel zu diesem Thema

Weitere Artikel

Jetzt die smarten News aus der IT-Welt abonnieren! 💌

Mit Klick auf den Button “Zum Newsletter anmelden” stimme ich der Datenschutzerklärung zu.