Coders Conquer Security OWASP Top 10 API Series - Unzureichende Protokollierung und Überwachung

Veröffentlicht Nov 25, 2020
von Matias Madou, Ph.D.
FALLSTUDIE

Coders Conquer Security OWASP Top 10 API Series - Unzureichende Protokollierung und Überwachung

Veröffentlicht Nov 25, 2020
von Matias Madou, Ph.D.
Ressource anzeigen
Ressource anzeigen

Der Fehler der unzureichenden Protokollierung und Überwachung tritt meist als Folge eines fehlgeschlagenen Cybersicherheitsplans in Bezug auf die Protokollierung aller fehlgeschlagenen Authentifizierungsversuche, verweigerten Zugriffe und Eingabevalidierungsfehler auf. Er kann auch an anderen Stellen in der Produktionsumgebung auftreten, ist aber meist mit einem Versagen bei der Unterbindung ungültiger Anmeldeversuche verbunden.

Das ist eine gefährliche Schwachstelle, denn sie bedeutet, dass Cybersecurity-Teams nicht auf Angriffe reagieren, weil sie nicht davon wissen. Dies verschafft Angreifern einen großen Vorteil, da sie unbemerkt bleiben können, während sie versuchen, weiter in ein System einzudringen oder ihre Anmeldedaten zu verbessern. Tatsächlich wird es ohne angemessene Protokollierung und Überwachung sehr schwierig oder sogar unmöglich, Angriffe zu erkennen und zu stoppen, bevor sie erheblichen Schaden anrichten können.

Sind Sie bereit, Ihre Fähigkeiten jetzt mit einer Herausforderung zu testen? Sehen Sie sich das an:

Wie nutzen Angreifer die unzureichende Protokollierung und Überwachung aus?

Jede API ist anfällig für unzureichende Protokollierung und Überwachung, wenn die Protokollierungsstufe nicht korrekt eingestellt ist, wenn sie zu niedrig eingestellt ist, wenn die Fehlermeldungen nicht genügend Details enthalten oder wenn überhaupt keine Protokollierungsfunktion vorhanden ist.

Ein interessantes Beispiel wäre, wenn ein Hacker eine große Liste von kompromittierten Benutzernamen für eine Website oder einen Dienst erhalten würde. Durch Experimentieren könnte er herausfinden, dass es drei fehlgeschlagene Anmeldeversuche braucht, bevor er aus dem System ausgesperrt wird und bevor das Cybersecurity-Personal benachrichtigt wird.

Mit diesen Informationen könnten sie, anstatt zu versuchen, einzelne Konten mit Brute-Force zu knacken, ein Skript schreiben, das versucht, sich als jeder Name auf der kompromittierten Liste anzumelden, indem sie gängige Kennwörter wie "123456" oder "password" verwenden. Der Trick besteht darin, dass sie jeden Benutzernamen nur einmal oder vielleicht zweimal ausprobieren, um unter dem Schwellenwert für Sperren und Alarme zu bleiben. Wenn sie Glück haben, kompromittieren sie zumindest ein paar Passwörter auf Anhieb. Danach warten sie einfach einen Tag, bis der Anmeldezähler zurückgesetzt wird, und wiederholen den Vorgang mit anderen Kennwörtern wie "qwerty" oder "god". Wenn die Administratoren nicht bemerken, was sie tun, können die Angreifer die Liste viele Male durchgehen und schließlich die meisten Konten mit schwachen Kennwörtern kompromittieren.

Dies geschah in dem von OWASP gelieferten Beispiel, bei dem eine Video-Sharing-Plattform mit einem Credential-Stuffing-Angriff angegriffen wurde, der die Schwachstelle für unzureichende Protokollierung und Überwachung ausnutzte. Bis das Unternehmen Beschwerden von Benutzern erhielt, hatte es keine Ahnung, dass der Angriff stattfand. Schließlich fand man Beweise in den API-Protokollen und musste eine erzwungene Passwortänderung an alle Benutzer ausgeben sowie den Angriff den Aufsichtsbehörden melden.  

Beseitigung der Schwachstelle für unzureichende Protokollierung und Überwachung

Automatisierung und ständige Überwachung können helfen, dieser Schwachstelle ein Ende zu setzen. Zu Beginn sollten alle fehlgeschlagenen Authentifizierungsversuche protokolliert werden. Und dieses Protokoll sollte in einem maschinenlesbaren Format wie STIX und TAXII gespeichert werden, damit es in ein SIEM-System (Security Information and Event Management) eingespeist werden kann, das darauf trainiert ist, unabhängig von den verwendeten Schwellenwerten nach Angriffen zu suchen.

Sie sollten auch Ihre Protokolldateien schützen. Behandeln Sie sie als sensible Informationen und schützen Sie sie vor dem Löschen oder Verändern durch Angreifer. Eine gute Vorgehensweise ist es, die Protokolldateien sowohl zu sichern als auch zu verschlüsseln.

Erstellen Sie schließlich benutzerdefinierte Dashboards und Warnmeldungen, damit alle verdächtigen Aktivitäten so schnell wie möglich erkannt und darauf reagiert werden kann. Wenn Sie einem Angreifer die Zeit nehmen, die er mit dem System verbringen kann, nehmen Sie ihm die Möglichkeit, niedrige und langsame Angriffstechniken zu verwenden, um unentdeckt zu bleiben.

Besuchen Sie die Secure Code Warrior Blog-Seiten, um weitere Informationen zu dieser Schwachstelle zu erhalten und zu erfahren, wie Sie Ihr Unternehmen und Ihre Kunden vor den Auswirkungen anderer Sicherheitslücken schützen können. Sie können auch eine Demo der Schulungsplattform Secure Code Warrior ausprobieren, um alle Ihre Cybersecurity-Kenntnisse zu schärfen und auf dem neuesten Stand zu halten.

Ressource anzeigen
Ressource anzeigen

Autor

Matias Madou, Ph.D.

Matias ist ein Forscher und Entwickler mit mehr als 15 Jahren praktischer Erfahrung im Bereich der Softwaresicherheit. Er hat Lösungen für Unternehmen wie Fortify Software und sein eigenes Unternehmen Sensei Security entwickelt. Im Laufe seiner Karriere hat Matias mehrere Forschungsprojekte zur Anwendungssicherheit geleitet, die zu kommerziellen Produkten geführt haben, und kann auf über 10 Patente verweisen. Wenn er nicht am Schreibtisch sitzt, ist Matias als Ausbilder für fortgeschrittene Anwendungssicherheitstrainings courses tätig und hält regelmäßig Vorträge auf globalen Konferenzen wie RSA Conference, Black Hat, DefCon, BSIMM, OWASP AppSec und BruCon.

Matias hat einen Doktortitel in Computertechnik von der Universität Gent, wo er die Sicherheit von Anwendungen durch Programmverschleierung untersuchte, um die innere Funktionsweise einer Anwendung zu verbergen.

Sie wollen mehr?

Tauchen Sie ein in unsere neuesten Erkenntnisse über sichere Kodierung im Blog.

Unsere umfangreiche Ressourcenbibliothek zielt darauf ab, die menschliche Herangehensweise an eine sichere Weiterbildung im Bereich der Programmierung zu stärken.

Blog ansehen
Sie wollen mehr?

Holen Sie sich die neuesten Forschungsergebnisse zur entwicklergesteuerten Sicherheit

Unsere umfangreiche Ressourcenbibliothek ist voll von hilfreichen Ressourcen, von Whitepapers bis hin zu Webinaren, die Ihnen den Einstieg in die entwicklungsorientierte sichere Programmierung erleichtern. Erforschen Sie sie jetzt.

Ressourcendrehscheibe

Coders Conquer Security OWASP Top 10 API Series - Unzureichende Protokollierung und Überwachung

Veröffentlicht Nov 25, 2020
Von Matias Madou, Ph.D.

Der Fehler der unzureichenden Protokollierung und Überwachung tritt meist als Folge eines fehlgeschlagenen Cybersicherheitsplans in Bezug auf die Protokollierung aller fehlgeschlagenen Authentifizierungsversuche, verweigerten Zugriffe und Eingabevalidierungsfehler auf. Er kann auch an anderen Stellen in der Produktionsumgebung auftreten, ist aber meist mit einem Versagen bei der Unterbindung ungültiger Anmeldeversuche verbunden.

Das ist eine gefährliche Schwachstelle, denn sie bedeutet, dass Cybersecurity-Teams nicht auf Angriffe reagieren, weil sie nicht davon wissen. Dies verschafft Angreifern einen großen Vorteil, da sie unbemerkt bleiben können, während sie versuchen, weiter in ein System einzudringen oder ihre Anmeldedaten zu verbessern. Tatsächlich wird es ohne angemessene Protokollierung und Überwachung sehr schwierig oder sogar unmöglich, Angriffe zu erkennen und zu stoppen, bevor sie erheblichen Schaden anrichten können.

Sind Sie bereit, Ihre Fähigkeiten jetzt mit einer Herausforderung zu testen? Sehen Sie sich das an:

Wie nutzen Angreifer die unzureichende Protokollierung und Überwachung aus?

Jede API ist anfällig für unzureichende Protokollierung und Überwachung, wenn die Protokollierungsstufe nicht korrekt eingestellt ist, wenn sie zu niedrig eingestellt ist, wenn die Fehlermeldungen nicht genügend Details enthalten oder wenn überhaupt keine Protokollierungsfunktion vorhanden ist.

Ein interessantes Beispiel wäre, wenn ein Hacker eine große Liste von kompromittierten Benutzernamen für eine Website oder einen Dienst erhalten würde. Durch Experimentieren könnte er herausfinden, dass es drei fehlgeschlagene Anmeldeversuche braucht, bevor er aus dem System ausgesperrt wird und bevor das Cybersecurity-Personal benachrichtigt wird.

Mit diesen Informationen könnten sie, anstatt zu versuchen, einzelne Konten mit Brute-Force zu knacken, ein Skript schreiben, das versucht, sich als jeder Name auf der kompromittierten Liste anzumelden, indem sie gängige Kennwörter wie "123456" oder "password" verwenden. Der Trick besteht darin, dass sie jeden Benutzernamen nur einmal oder vielleicht zweimal ausprobieren, um unter dem Schwellenwert für Sperren und Alarme zu bleiben. Wenn sie Glück haben, kompromittieren sie zumindest ein paar Passwörter auf Anhieb. Danach warten sie einfach einen Tag, bis der Anmeldezähler zurückgesetzt wird, und wiederholen den Vorgang mit anderen Kennwörtern wie "qwerty" oder "god". Wenn die Administratoren nicht bemerken, was sie tun, können die Angreifer die Liste viele Male durchgehen und schließlich die meisten Konten mit schwachen Kennwörtern kompromittieren.

Dies geschah in dem von OWASP gelieferten Beispiel, bei dem eine Video-Sharing-Plattform mit einem Credential-Stuffing-Angriff angegriffen wurde, der die Schwachstelle für unzureichende Protokollierung und Überwachung ausnutzte. Bis das Unternehmen Beschwerden von Benutzern erhielt, hatte es keine Ahnung, dass der Angriff stattfand. Schließlich fand man Beweise in den API-Protokollen und musste eine erzwungene Passwortänderung an alle Benutzer ausgeben sowie den Angriff den Aufsichtsbehörden melden.  

Beseitigung der Schwachstelle für unzureichende Protokollierung und Überwachung

Automatisierung und ständige Überwachung können helfen, dieser Schwachstelle ein Ende zu setzen. Zu Beginn sollten alle fehlgeschlagenen Authentifizierungsversuche protokolliert werden. Und dieses Protokoll sollte in einem maschinenlesbaren Format wie STIX und TAXII gespeichert werden, damit es in ein SIEM-System (Security Information and Event Management) eingespeist werden kann, das darauf trainiert ist, unabhängig von den verwendeten Schwellenwerten nach Angriffen zu suchen.

Sie sollten auch Ihre Protokolldateien schützen. Behandeln Sie sie als sensible Informationen und schützen Sie sie vor dem Löschen oder Verändern durch Angreifer. Eine gute Vorgehensweise ist es, die Protokolldateien sowohl zu sichern als auch zu verschlüsseln.

Erstellen Sie schließlich benutzerdefinierte Dashboards und Warnmeldungen, damit alle verdächtigen Aktivitäten so schnell wie möglich erkannt und darauf reagiert werden kann. Wenn Sie einem Angreifer die Zeit nehmen, die er mit dem System verbringen kann, nehmen Sie ihm die Möglichkeit, niedrige und langsame Angriffstechniken zu verwenden, um unentdeckt zu bleiben.

Besuchen Sie die Secure Code Warrior Blog-Seiten, um weitere Informationen zu dieser Schwachstelle zu erhalten und zu erfahren, wie Sie Ihr Unternehmen und Ihre Kunden vor den Auswirkungen anderer Sicherheitslücken schützen können. Sie können auch eine Demo der Schulungsplattform Secure Code Warrior ausprobieren, um alle Ihre Cybersecurity-Kenntnisse zu schärfen und auf dem neuesten Stand zu halten.

Wir bitten Sie um Ihre Erlaubnis, Ihnen Informationen über unsere Produkte und/oder verwandte Themen der sicheren Codierung zuzusenden. Wir werden Ihre persönlichen Daten immer mit äußerster Sorgfalt behandeln und sie niemals zu Marketingzwecken an andere Unternehmen verkaufen.

Um das Formular abzuschicken, aktivieren Sie bitte "Analytics"-Cookies. Sie können die Cookies wieder deaktivieren, sobald Sie fertig sind.