iX 7/2022
S. 64
Titel
Sicherheit

Schwachstellen in APIs aufspüren

Injections und Fehlkonfigurationen machen APIs angreifbar. Werkzeuge helfen, die Schwachstellen zu finden.

Von Frank Ully

Während sich der vorige Artikel mit fehlerhafter Authentifizierung und Autorisierung, falscher Inventarisierung und Massenzuweisung beschäftigte, geht es nun um die Gefahren, die von Injections, Fehlkonfigurationen und unzureichendem Überwachen und Protokollieren ausgehen. Passende Werkzeuge helfen, Sicherheitslücken bereits während der Entwicklung aufzuspüren.

Injektionsschwachstellen sind eine der bekanntesten Sicherheitslücken und liegen in den OWASP Web Top 10 regelmäßig auf den ersten Plätzen, bereits 1998 beschrieb ein Hackermagazin SQL Injections. Die Autoren der API Top 10 verwiesen Injections in ihrer Liste auf einen der hinteren Plätze, da diese bei Schnittstellen seltener auftreten. Designmuster wie objektrationale Abbildungen (Object Relational Mapping, ORM) und moderne Frameworks abstrahieren die Gefahr von den Entwicklern. Dennoch sollte ihnen die Grundursache von Injektionsschwachstellen bewusst sein: Übergeben sie Daten an einen Interpreter und der kann nicht klar zwischen Code und Daten unterscheiden, kann ein Angreifer dem Interpreter bösartige Daten so unterjubeln, dass er sie als Code interpretiert. Bei SQL Injections und Injections in NoSQL-Anfragen werden Befehle in die Datenbankabfrage eingeschleust, bei einer Befehlsinjektion Betriebssystemkommandos oder Code der jeweiligen Programmiersprache. Grundlage ist immer fehlender Kontext, der den jeweiligen Interpreter dazu verleitet, einen beabsichtigten Befehl und manipulierte Daten zu vermengen, die ebenfalls als Code bei ihm ankommen.

Kommentieren