Was ist eine Sicherheitsfehlkonfiguration?
Platz 8 der OWASP API Top 10 Schwachstellenliste 2023 ist die falsche Sicherheitskonfiguration. Schwachstelle 8 ist ein Sammelbegriff für alle Konstruktionsfehler in einer API, die sie angreifbar machen könnten.
OWASP sagt zu dieser Schwachstelle: "Angreifer versuchen oft, ungepatchte Schwachstellen, gemeinsame Endpunkte, Dienste, die mit unsicheren Standardkonfigurationen laufen, oder ungeschützte Dateien und Verzeichnisse zu finden, um unbefugten Zugriff oder Wissen über das System zu erlangen. Die meisten dieser Schwachstellen sind öffentlich bekannt und können ausgenutzt werden."
Wichtigste Erkenntnisse
- „Falsche Sicherheitskonfiguration“ steht auf Platz 8 der OWASP API Security Top 10 2023 und dient als Sammelbegriff für alle Design- oder Konfigurationsfehler, darunter fehlende Sicherheits-Header, offen zugängliche Admin-Schnittstellen, unsichere Standardeinstellungen und undokumentierte Endpunkte, die eine API anfällig machen.
- Fehlende HTTP-Antwort-Header wie „Cache-Control“ können versehentlich dazu führen, dass private API-Daten von Browsern zwischengespeichert werden, wodurch sensible Inhalte aus dem Dateisystem abgerufen werden können, ohne dass die Anwendungslogik aktiv ausgenutzt werden muss.
- Viele Unternehmen betreiben APIs, die sie nicht selbst entwickelt haben oder über die ihnen das interne Fachwissen fehlt; die Durchführung gründlicher Penetrationstests und die strikte Zulassung bekannter, sicherer Interaktionspfade sind die realistischsten Abwehrmaßnahmen für Alt-Systeme.
- Eine fehlerhafte Sicherheitskonfiguration ist selten ein eigenständiger Angriff; Angreifer nutzen sie in der Regel als ersten Schritt einer mehrphasigen Kampagne und verknüpfen sie mit botnetzgestützter Aufklärung und Angriffen auf Zugangsdaten, um ein Ziel mit größeren Schäden zu erreichen.
- ThreatX von A10 Networks bekämpft die Ausnutzung von Konfigurationsfehlern in Echtzeit, indem der gesamte eingehende API-Datenverkehr über einen Proxy geleitet wird. Dabei kommen Verhaltens-Fingerprinting und Tarpitting zum Einsatz, um Angriffsmuster zu identifizieren und zu blockieren, bevor sie einen konfigurierbaren Risikoschwellenwert überschreiten.
Wie funktionieren Exploits im Zusammenhang mit Sicherheitsfehlkonfigurationen?
OWASP nennt dieses Beispiel:
Eine Website eines sozialen Netzwerks bietet eine "Direktnachrichten"-Funktion, die es den Nutzern ermöglicht, private Unterhaltungen zu führen. Um neue Nachrichten für eine bestimmte Unterhaltung abzurufen, gibt die Website die folgende API-Anfrage aus (eine Benutzerinteraktion ist nicht erforderlich):
GET /dm/user_updates.json?conversation_id=1234567&cursor=GRlFp7LCUAAAA Da die API-Antwort den Cache-Control-HTTP-Response-Header nicht enthält, werden private Konversationen vom Webbrowser zwischengespeichert, so dass böswillige Akteure sie aus den Browser-Cache-Dateien im Dateisystem abrufen können.
Ein Angreifer könnte auch neue Endpunkte für die API finden, die nur vom DevOps-Team verwendet werden und nicht dokumentiert sind.
Ein weiteres Beispiel sind administrative Webschnittstellen, die eigentlich verschlossen sein sollten, aber manchmal offen gelassen werden. phpMyAdmin ist in dieser Hinsicht berüchtigt.
Wie man eine Fehlkonfiguration der Sicherheit verhindert
Ein ausgeprägtes Sicherheitsdenken zu Beginn der Entwicklung kann dabei helfen, die möglichen Vektoren für Sicherheitsfehlkonfigurationen im Vorfeld zu erkennen und Überwachungs-/Warnskripte zu entwickeln, um sicherzustellen, dass diese Fehlkonfigurationen in der Produktion nicht auftreten. Dies setzt voraus, dass Ihr Entwicklungsteam über starke Sicherheitskompetenzen verfügt oder eng und effektiv mit einer Sicherheitsgruppe zusammenarbeitet.
Tatsache ist jedoch, dass viele Unternehmen APIs verwenden, die sie gar nicht erst entwickelt haben. Selbst wenn sie die APIs entwickelt haben, sind die ursprünglichen Entwickler möglicherweise schon lange tot und das Stammeswissen über die Vektoren für Sicherheitsfehlkonfigurationen ist nicht mehr auffindbar. In diesem Fall sollten Sie rigorose Pen-Tests durchführen und die Schnittstelle auf die bekannt guten Interaktionspfade beschränken.
Wie unser Ansatz einzigartig ist
Blockierung in Echtzeit
Einige API-Sicherheitslösungen weisen lediglich auf potenzielle API-Schwachstellen hin und überlassen es den Sicherheitsteams, diese zu untersuchen und Codeänderungen zu empfehlen. Andere API-Lösungen können eine angreifende IP identifizieren, erfordern aber, dass Sicherheitsteams versuchen, das komplexe Verhalten in einer WAF eines Drittanbieters zu modellieren (oder versuchen, eine IP nach der anderen zu blockieren). ThreatX von A10 Networks zeigt nicht nur API-Schwachstellen oder Angriffsversuche an, sondern blockiert auch API-Angriffe in Echtzeit. ThreatX projiziert und scannt den gesamten eingehenden API-Verkehr, identifiziert und blockiert Angriffe.
ThreatX erkennt das Verhalten von Angreifern, das auf einen Versuch zur Ausnutzung von Sicherheitsfehlkonfigurationen hindeutet, und markiert und überwacht dann den betreffenden Benutzer. Dank dieser Echtzeitüberwachung kann ThreatX fortschrittliche Techniken zur Bekämpfung von Bedrohungen wie IP-Abfragen, Fingerprinting und Tarpitting einsetzen. Wenn eine Reihe von Benutzerinteraktionen unseren Standard-Risikogrenzwert (oder den von Ihnen festgelegten) überschreitet, wird der Angriff blockiert.
Schritt eins der N...
In vielen Fällen versuchen die Angreifer nicht nur, eine Sicherheitsfehlkonfiguration auszunutzen, sondern reihen im Laufe der Zeit eine Reihe von Angriffen aneinander, oft unter Verwendung föderierter und ausgeklügelter Botnets. Um diesem Ansatz entgegenzuwirken, muss man in der Lage sein, den Angriffsverkehr über mehrere IPs hinweg zu korrelieren, einen fortschrittlichen Bot-Schutz einzusetzen und Identifikatoren und Techniken zu erkennen, mit denen der Verkehr einem eindeutigen Angreifer zugeordnet werden kann. Anstatt ein einzelnes, besonders riskantes Ereignis oder die Identifizierung einer bekannten Signatur zu verlangen, analysiert ThreatX das Verhalten von mehreren Punkten aus. Dadurch kann die ThreatX-Plattform mehr Bedrohungen identifizieren und blockieren als konkurrierende API-Sicherheitstools.
Weniger False Positives
Wenn das Risiko steigt, blockiert ThreatX sofort einen Angriff. Die Blockiermodi von ThreatX sind so konzipiert, dass sie bösartige Anfragen blockieren und verdächtige Unternehmen davon abhalten, APIs anzugreifen, während sie gutartigen Datenverkehr und echte Benutzer durchlassen. Herkömmliche WAFs haben mit Fehlalarmen zu kämpfen, weil sie Blockierungsentscheidungen nur auf der Grundlage von Regeln treffen, aber Angreifer und legitime Benutzer halten sich nicht immer an die Regeln. Manchmal sieht ein legitimer Benutzer, der sein Passwort vergessen hat, wie ein Angreifer aus, und manchmal sieht ein Angreifer, der Benutzernamen und Passwörter durchgeht, wie ein legitimer Benutzer aus. ThreatX kann den Unterschied erkennen.
Häufig gestellte Fragen
„Tarpitting“ ist eine Abwehrtechnik, bei der Antworten auf verdächtige Anfragen bewusst verlangsamt werden, wodurch sich der Zeit- und Kostenaufwand für Angreifer erhöht, eine API zu sondieren oder auszunutzen, ohne diese jedoch sofort vollständig zu blockieren. Dies gibt der Sicherheitsplattform Zeit, weitere Verhaltensdaten zu sammeln, böswillige Absichten zu bestätigen und den Angreifer zu beschäftigen, während dieser abgelenkt und vom legitimen Datenverkehr ferngehalten wird.
Ein undokumentierter Endpunkt ist ein bekannter API-Endpunkt, für den lediglich keine öffentliche Dokumentation vorliegt. Er existiert absichtlich, wurde jedoch nicht in die API-Spezifikationen aufgenommen. Eine Schatten-API ist ein Endpunkt, der den aktuellen Sicherheits- und Entwicklungsteams völlig unbekannt ist – häufig, weil er von einem anderen Team, einer Drittanbieter-Integration oder einem Altsystem erstellt wurde und nie offiziell erfasst oder gesichert wurde.
Herkömmliche WAFs treffen Blockierungsentscheidungen auf der Grundlage statischer Regeln und bekannter Signaturen. Wenn legitimes Benutzerverhalten zufällig einem Regelmuster ähnelt – beispielsweise wenn ein Benutzer mehrere fehlgeschlagene Anmeldeversuche unternimmt –, blockiert die WAF dies. Verhaltensbasierte Plattformen erstellen im Laufe der Zeit Risikoprofile auf Entitätsebene und unterscheiden echte Benutzer von Angreifern anhand des gesamten Kontexts ihrer Aktivitäten und nicht anhand einzelner Merkmale der Anfragen.
Bei der IP-Abfrage werden verdächtige IP-Adressen aktiv untersucht, um zusätzliche Hinweise auf ihre Beschaffenheit zu gewinnen, beispielsweise ob sie zu bekannten Hosting-Anbietern, VPNs, Tor-Ausgangsknoten oder privaten Netzwerken gehören. In Kombination mit TLS-Fingerprinting und Verhaltensanalysen hilft dies Sicherheitsplattformen dabei, ein umfassenderes Angreiferprofil zu erstellen und die Genauigkeit von Sperrentscheidungen über wechselnde IP-Pools hinweg zu verbessern.
Bei vererbten APIs bestehen die wichtigsten Kontrollmaßnahmen aus intensiven Penetrationstests zur Erfassung undokumentierter Endpunkte und fehlerhafter Konfigurationen, strengen API-Gateway-Richtlinien, die ausschließlich als sicher eingestufte Anforderungsmuster zulassen, sowie einer kontinuierlichen Überwachung des Datenverkehrs zur Erkennung anomaler Zugriffsmuster. Da das Wissen der ursprünglichen Entwickler nicht mehr verfügbar ist, sind externe Tools zur Verhaltenserkennung, die nicht auf einer vorherigen Dokumentation des beabsichtigten Verhaltens der API beruhen, besonders wertvoll.