Coders Conquer Security OWASP Top 10 API Series - Deaktivierte Sicherheitsfunktionen/Debug-Funktionen aktiviert/unzulässige Berechtigungen
Während die meisten Schwachstellen in dieser Liste ziemlich spezifisch für APIs sind, ist das Problem der deaktivierten Sicherheitsfunktionen/aktivierten Debug-Funktionen/unzulässigen Berechtigungen eines, das überall auftreten kann. Es ist wahrscheinlich etwas häufiger in APIs anzutreffen, aber Angreifer werden oft versuchen, ungepatchte Schwachstellen und ungeschützte Dateien oder Verzeichnisse irgendwo in einem Netzwerk zu finden. Wenn sie auf eine API stoßen, bei der das Debugging aktiviert oder die Sicherheitsfunktionen deaktiviert sind, macht das ihre schändliche Arbeit nur ein wenig einfacher. Schlimmer noch, es gibt automatisierte Tools, um Sicherheitsfehlkonfigurationen zu erkennen und auszunutzen. Wenn Sie diese also in Ihrer Umgebung haben, besteht eine gute Chance, dass sie ausgenutzt werden, weshalb diese Schwachstelle es auf die OWASP-Liste der gefährlichen API-Schwachstellen geschafft hat.
Bevor wir mit dem Spaß beginnen, sehen Sie, ob Sie diese Debug-Herausforderung lösen können:
Wie schleicht sich der Fehler deaktivierte Sicherheitsfunktionen/aktivierte Debug-Funktionen/unzulässige Berechtigungen in eine API ein?
Um zu sehen, wie dieser mehrdimensionale API-Fehler in die Netzwerke gelangt, müssen wir ihn in seine Bestandteile zerlegen. Beginnen wir mit dem Problem der aktivierten Debugging-Funktionen. Debugging ist ein nützliches Werkzeug, das Entwicklern hilft, herauszufinden, warum Anwendungen nicht richtig funktionieren oder Fehler machen. Wenn Debugging aktiviert ist, werden bei Fehlern und Ausnahmen detaillierte Fehlerseiten generiert, so dass Entwickler sehen können, was schief gelaufen ist und Probleme beheben können. Es ist völlig in Ordnung, diese Funktion zu aktivieren, während sich eine Anwendung noch in der Entwicklung befindet.
Es gibt jedoch einen Grund, warum die meisten Frameworks mit Warnungen über die Ausführung des Debug-Modus in einer Produktionsumgebung kommen, wahrscheinlich direkt im Code, wo das Debugging aktiviert ist. Zum Beispiel:
# SICHERHEITSWARNUNG: nicht mit eingeschaltetem Debug in der Produktion ausführen!
DEBUG = True
In diesem Beispiel wurde das Debugging aktiviert. Die Django-Anwendung generiert detaillierte Fehlerseiten, wenn eine Ausnahme ausgelöst wird. Wenn dies in einer Produktionsumgebung geschieht, hätte ein Angreifer Zugriff auf diese Fehlerseiten, die Metadateninformationen über die Umgebung enthalten. Obwohl bei den meisten Frameworks das Debugging standardmäßig ausgeschaltet ist, vergisst man leicht, es wieder auszuschalten, wenn es während eines langen Entwicklungsprozesses aktiviert wurde. Wenn die Anwendung dann in eine Produktionsumgebung übergeht, bietet sie Angreifern viele Informationen darüber, wie sie eine Anwendung oder sogar einen ganzen Server oder ein Netzwerk kompromittieren können.
Während das Aktivieren des Debug-Modus meist ein eigenständiges Problem darstellt, wirken die Schwachstellen mit falschen Berechtigungen und deaktivierten Sicherheitsfunktionen oft zusammen. In einem realen Szenario, das von OWASP zur Verfügung gestellt wurde, verwendete ein Angreifer beispielsweise eine Suchmaschine, um eine Datenbank zu finden, die versehentlich mit dem Internet verbunden war. Da das beliebte Datenbankmanagementsystem seine Standardkonfiguration verwendete, war die Authentifizierung deaktiviert. Durch die Kombination der falschen Berechtigungen und der deaktivierten Sicherheitsfunktionen erlangte der Angreifer somit Zugriff auf Millionen von Datensätzen mit PII, persönlichen Einstellungen und Authentifizierungsdaten.
Beseitigung der deaktivierten Sicherheitsfunktionen/aktivierten Debug-Funktionen/unzulässigen Berechtigungsschwachstellen
Wahrscheinlich müssen Sie bei der Beseitigung dieser Schwachstelle einen zweigleisigen Ansatz wählen. Um den aktivierten Debug-Teil des Problems zu beseitigen, fügen Sie einfach eine Prüfung in den Entwicklungsprozess ein, um sicherzustellen, dass das Debugging deaktiviert wird, bevor eine API oder Anwendung in die Produktionsumgebung verschoben wird. In unserem Beispiel würde der richtige Befehl dazu folgendermaßen lauten:
# SICHERHEITSWARNUNG: nicht mit eingeschaltetem Debug in der Produktion ausführen!
DEBUG = False
Jetzt werden die Debug-Funktionen in der Django-Anwendung deaktiviert, indem das DEBUG-Flag auf False konfiguriert wird. Als Reaktion auf Fehler werden keine Fehlerseiten generiert. Wenn ein Angreifer dennoch Zugriff auf Fehlerseiten erhält, enthalten diese keine nützlichen Metadaten und stellen kein Risiko für die Anwendung dar.
Die Beseitigung von deaktivierten Sicherheitsfunktionen und Schwachstellen durch falsche Berechtigungen ist etwas schwieriger, da sie eine Vielzahl von spezifischen Schwachstellen umfassen können. Der beste Weg, sie zu stoppen, ist die Entwicklung eines standardisierten und wiederholbaren Prozesses, der eine schnelle und einfache Bereitstellung von gesperrten Assets in der Produktionsumgebung ermöglicht.
Selbst dann sollten Sie einen Prozess erstellen, bei dem Orchestrierungsdateien, API-Komponenten und Cloud-Dienste wie Amazon S3-Bucket-Berechtigungen ständig überprüft und aktualisiert werden. Bei dieser Überprüfung sollte auch die Gesamtwirksamkeit der Sicherheitseinstellungen in der gesamten Umgebung im Laufe der Zeit bewertet werden, um sicherzustellen, dass das Unternehmen seine API-Sicherheit stets verbessert.
Schauen Sie sich die Secure Code Warrior Blog-Seiten, um mehr über diese Schwachstelle zu erfahren 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.


Bei APIs ist das wahrscheinlich etwas häufiger der Fall, aber Angreifer versuchen oft, ungepatchte Schwachstellen und ungeschützte Dateien oder Verzeichnisse irgendwo in einem Netzwerk zu finden. Wenn sie auf eine API stoßen, bei der das Debugging aktiviert oder die Sicherheitsfunktionen deaktiviert sind, macht das ihre ruchlose Arbeit nur ein wenig einfacher.
Matias Madou, Ph.D., ist Sicherheitsexperte, Forscher, CTO und Mitbegründer von Secure Code Warrior. Matias promovierte an der Universität Gent im Bereich Anwendungssicherheit und konzentrierte sich dabei auf statische Analyselösungen. Später wechselte er zu Fortify in den USA, wo er erkannte, dass es nicht ausreicht, nur Codeprobleme zu erkennen, ohne den Entwicklern beim Schreiben von sicherem Code zu helfen. Dies inspirierte ihn dazu, Produkte zu entwickeln, die Entwickler unterstützen, den Aufwand für die Sicherheit verringern und die Erwartungen der Kunden übertreffen. Wenn er nicht an seinem Schreibtisch im Team Awesome sitzt, steht er gerne auf der Bühne und hält Vorträge auf Konferenzen wie der RSA Conference, BlackHat und DefCon.

Secure Code Warrior ist für Ihr Unternehmen da, um Sie dabei zu unterstützen, Ihren Code über den gesamten Lebenszyklus der Softwareentwicklung hinweg zu sichern und eine Kultur zu schaffen, in der Cybersicherheit an erster Stelle steht. Ganz gleich, ob Sie AppSec-Manager, Entwickler, CISO oder ein anderer Sicherheitsverantwortlicher sind, wir können Ihrem Unternehmen helfen, die mit unsicherem Code verbundenen Risiken zu reduzieren.
Demo buchenMatias Madou, Ph.D., ist Sicherheitsexperte, Forscher, CTO und Mitbegründer von Secure Code Warrior. Matias promovierte an der Universität Gent im Bereich Anwendungssicherheit und konzentrierte sich dabei auf statische Analyselösungen. Später wechselte er zu Fortify in den USA, wo er erkannte, dass es nicht ausreicht, nur Codeprobleme zu erkennen, ohne den Entwicklern beim Schreiben von sicherem Code zu helfen. Dies inspirierte ihn dazu, Produkte zu entwickeln, die Entwickler unterstützen, den Aufwand für die Sicherheit verringern und die Erwartungen der Kunden übertreffen. Wenn er nicht an seinem Schreibtisch im Team Awesome sitzt, steht er gerne auf der Bühne und hält Vorträge auf Konferenzen wie der RSA Conference, BlackHat und DefCon.
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.


Während die meisten Schwachstellen in dieser Liste ziemlich spezifisch für APIs sind, ist das Problem der deaktivierten Sicherheitsfunktionen/aktivierten Debug-Funktionen/unzulässigen Berechtigungen eines, das überall auftreten kann. Es ist wahrscheinlich etwas häufiger in APIs anzutreffen, aber Angreifer werden oft versuchen, ungepatchte Schwachstellen und ungeschützte Dateien oder Verzeichnisse irgendwo in einem Netzwerk zu finden. Wenn sie auf eine API stoßen, bei der das Debugging aktiviert oder die Sicherheitsfunktionen deaktiviert sind, macht das ihre schändliche Arbeit nur ein wenig einfacher. Schlimmer noch, es gibt automatisierte Tools, um Sicherheitsfehlkonfigurationen zu erkennen und auszunutzen. Wenn Sie diese also in Ihrer Umgebung haben, besteht eine gute Chance, dass sie ausgenutzt werden, weshalb diese Schwachstelle es auf die OWASP-Liste der gefährlichen API-Schwachstellen geschafft hat.
Bevor wir mit dem Spaß beginnen, sehen Sie, ob Sie diese Debug-Herausforderung lösen können:
Wie schleicht sich der Fehler deaktivierte Sicherheitsfunktionen/aktivierte Debug-Funktionen/unzulässige Berechtigungen in eine API ein?
Um zu sehen, wie dieser mehrdimensionale API-Fehler in die Netzwerke gelangt, müssen wir ihn in seine Bestandteile zerlegen. Beginnen wir mit dem Problem der aktivierten Debugging-Funktionen. Debugging ist ein nützliches Werkzeug, das Entwicklern hilft, herauszufinden, warum Anwendungen nicht richtig funktionieren oder Fehler machen. Wenn Debugging aktiviert ist, werden bei Fehlern und Ausnahmen detaillierte Fehlerseiten generiert, so dass Entwickler sehen können, was schief gelaufen ist und Probleme beheben können. Es ist völlig in Ordnung, diese Funktion zu aktivieren, während sich eine Anwendung noch in der Entwicklung befindet.
Es gibt jedoch einen Grund, warum die meisten Frameworks mit Warnungen über die Ausführung des Debug-Modus in einer Produktionsumgebung kommen, wahrscheinlich direkt im Code, wo das Debugging aktiviert ist. Zum Beispiel:
# SICHERHEITSWARNUNG: nicht mit eingeschaltetem Debug in der Produktion ausführen!
DEBUG = True
In diesem Beispiel wurde das Debugging aktiviert. Die Django-Anwendung generiert detaillierte Fehlerseiten, wenn eine Ausnahme ausgelöst wird. Wenn dies in einer Produktionsumgebung geschieht, hätte ein Angreifer Zugriff auf diese Fehlerseiten, die Metadateninformationen über die Umgebung enthalten. Obwohl bei den meisten Frameworks das Debugging standardmäßig ausgeschaltet ist, vergisst man leicht, es wieder auszuschalten, wenn es während eines langen Entwicklungsprozesses aktiviert wurde. Wenn die Anwendung dann in eine Produktionsumgebung übergeht, bietet sie Angreifern viele Informationen darüber, wie sie eine Anwendung oder sogar einen ganzen Server oder ein Netzwerk kompromittieren können.
Während das Aktivieren des Debug-Modus meist ein eigenständiges Problem darstellt, wirken die Schwachstellen mit falschen Berechtigungen und deaktivierten Sicherheitsfunktionen oft zusammen. In einem realen Szenario, das von OWASP zur Verfügung gestellt wurde, verwendete ein Angreifer beispielsweise eine Suchmaschine, um eine Datenbank zu finden, die versehentlich mit dem Internet verbunden war. Da das beliebte Datenbankmanagementsystem seine Standardkonfiguration verwendete, war die Authentifizierung deaktiviert. Durch die Kombination der falschen Berechtigungen und der deaktivierten Sicherheitsfunktionen erlangte der Angreifer somit Zugriff auf Millionen von Datensätzen mit PII, persönlichen Einstellungen und Authentifizierungsdaten.
Beseitigung der deaktivierten Sicherheitsfunktionen/aktivierten Debug-Funktionen/unzulässigen Berechtigungsschwachstellen
Wahrscheinlich müssen Sie bei der Beseitigung dieser Schwachstelle einen zweigleisigen Ansatz wählen. Um den aktivierten Debug-Teil des Problems zu beseitigen, fügen Sie einfach eine Prüfung in den Entwicklungsprozess ein, um sicherzustellen, dass das Debugging deaktiviert wird, bevor eine API oder Anwendung in die Produktionsumgebung verschoben wird. In unserem Beispiel würde der richtige Befehl dazu folgendermaßen lauten:
# SICHERHEITSWARNUNG: nicht mit eingeschaltetem Debug in der Produktion ausführen!
DEBUG = False
Jetzt werden die Debug-Funktionen in der Django-Anwendung deaktiviert, indem das DEBUG-Flag auf False konfiguriert wird. Als Reaktion auf Fehler werden keine Fehlerseiten generiert. Wenn ein Angreifer dennoch Zugriff auf Fehlerseiten erhält, enthalten diese keine nützlichen Metadaten und stellen kein Risiko für die Anwendung dar.
Die Beseitigung von deaktivierten Sicherheitsfunktionen und Schwachstellen durch falsche Berechtigungen ist etwas schwieriger, da sie eine Vielzahl von spezifischen Schwachstellen umfassen können. Der beste Weg, sie zu stoppen, ist die Entwicklung eines standardisierten und wiederholbaren Prozesses, der eine schnelle und einfache Bereitstellung von gesperrten Assets in der Produktionsumgebung ermöglicht.
Selbst dann sollten Sie einen Prozess erstellen, bei dem Orchestrierungsdateien, API-Komponenten und Cloud-Dienste wie Amazon S3-Bucket-Berechtigungen ständig überprüft und aktualisiert werden. Bei dieser Überprüfung sollte auch die Gesamtwirksamkeit der Sicherheitseinstellungen in der gesamten Umgebung im Laufe der Zeit bewertet werden, um sicherzustellen, dass das Unternehmen seine API-Sicherheit stets verbessert.
Schauen Sie sich die Secure Code Warrior Blog-Seiten, um mehr über diese Schwachstelle zu erfahren 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.

Während die meisten Schwachstellen in dieser Liste ziemlich spezifisch für APIs sind, ist das Problem der deaktivierten Sicherheitsfunktionen/aktivierten Debug-Funktionen/unzulässigen Berechtigungen eines, das überall auftreten kann. Es ist wahrscheinlich etwas häufiger in APIs anzutreffen, aber Angreifer werden oft versuchen, ungepatchte Schwachstellen und ungeschützte Dateien oder Verzeichnisse irgendwo in einem Netzwerk zu finden. Wenn sie auf eine API stoßen, bei der das Debugging aktiviert oder die Sicherheitsfunktionen deaktiviert sind, macht das ihre schändliche Arbeit nur ein wenig einfacher. Schlimmer noch, es gibt automatisierte Tools, um Sicherheitsfehlkonfigurationen zu erkennen und auszunutzen. Wenn Sie diese also in Ihrer Umgebung haben, besteht eine gute Chance, dass sie ausgenutzt werden, weshalb diese Schwachstelle es auf die OWASP-Liste der gefährlichen API-Schwachstellen geschafft hat.
Bevor wir mit dem Spaß beginnen, sehen Sie, ob Sie diese Debug-Herausforderung lösen können:
Wie schleicht sich der Fehler deaktivierte Sicherheitsfunktionen/aktivierte Debug-Funktionen/unzulässige Berechtigungen in eine API ein?
Um zu sehen, wie dieser mehrdimensionale API-Fehler in die Netzwerke gelangt, müssen wir ihn in seine Bestandteile zerlegen. Beginnen wir mit dem Problem der aktivierten Debugging-Funktionen. Debugging ist ein nützliches Werkzeug, das Entwicklern hilft, herauszufinden, warum Anwendungen nicht richtig funktionieren oder Fehler machen. Wenn Debugging aktiviert ist, werden bei Fehlern und Ausnahmen detaillierte Fehlerseiten generiert, so dass Entwickler sehen können, was schief gelaufen ist und Probleme beheben können. Es ist völlig in Ordnung, diese Funktion zu aktivieren, während sich eine Anwendung noch in der Entwicklung befindet.
Es gibt jedoch einen Grund, warum die meisten Frameworks mit Warnungen über die Ausführung des Debug-Modus in einer Produktionsumgebung kommen, wahrscheinlich direkt im Code, wo das Debugging aktiviert ist. Zum Beispiel:
# SICHERHEITSWARNUNG: nicht mit eingeschaltetem Debug in der Produktion ausführen!
DEBUG = True
In diesem Beispiel wurde das Debugging aktiviert. Die Django-Anwendung generiert detaillierte Fehlerseiten, wenn eine Ausnahme ausgelöst wird. Wenn dies in einer Produktionsumgebung geschieht, hätte ein Angreifer Zugriff auf diese Fehlerseiten, die Metadateninformationen über die Umgebung enthalten. Obwohl bei den meisten Frameworks das Debugging standardmäßig ausgeschaltet ist, vergisst man leicht, es wieder auszuschalten, wenn es während eines langen Entwicklungsprozesses aktiviert wurde. Wenn die Anwendung dann in eine Produktionsumgebung übergeht, bietet sie Angreifern viele Informationen darüber, wie sie eine Anwendung oder sogar einen ganzen Server oder ein Netzwerk kompromittieren können.
Während das Aktivieren des Debug-Modus meist ein eigenständiges Problem darstellt, wirken die Schwachstellen mit falschen Berechtigungen und deaktivierten Sicherheitsfunktionen oft zusammen. In einem realen Szenario, das von OWASP zur Verfügung gestellt wurde, verwendete ein Angreifer beispielsweise eine Suchmaschine, um eine Datenbank zu finden, die versehentlich mit dem Internet verbunden war. Da das beliebte Datenbankmanagementsystem seine Standardkonfiguration verwendete, war die Authentifizierung deaktiviert. Durch die Kombination der falschen Berechtigungen und der deaktivierten Sicherheitsfunktionen erlangte der Angreifer somit Zugriff auf Millionen von Datensätzen mit PII, persönlichen Einstellungen und Authentifizierungsdaten.
Beseitigung der deaktivierten Sicherheitsfunktionen/aktivierten Debug-Funktionen/unzulässigen Berechtigungsschwachstellen
Wahrscheinlich müssen Sie bei der Beseitigung dieser Schwachstelle einen zweigleisigen Ansatz wählen. Um den aktivierten Debug-Teil des Problems zu beseitigen, fügen Sie einfach eine Prüfung in den Entwicklungsprozess ein, um sicherzustellen, dass das Debugging deaktiviert wird, bevor eine API oder Anwendung in die Produktionsumgebung verschoben wird. In unserem Beispiel würde der richtige Befehl dazu folgendermaßen lauten:
# SICHERHEITSWARNUNG: nicht mit eingeschaltetem Debug in der Produktion ausführen!
DEBUG = False
Jetzt werden die Debug-Funktionen in der Django-Anwendung deaktiviert, indem das DEBUG-Flag auf False konfiguriert wird. Als Reaktion auf Fehler werden keine Fehlerseiten generiert. Wenn ein Angreifer dennoch Zugriff auf Fehlerseiten erhält, enthalten diese keine nützlichen Metadaten und stellen kein Risiko für die Anwendung dar.
Die Beseitigung von deaktivierten Sicherheitsfunktionen und Schwachstellen durch falsche Berechtigungen ist etwas schwieriger, da sie eine Vielzahl von spezifischen Schwachstellen umfassen können. Der beste Weg, sie zu stoppen, ist die Entwicklung eines standardisierten und wiederholbaren Prozesses, der eine schnelle und einfache Bereitstellung von gesperrten Assets in der Produktionsumgebung ermöglicht.
Selbst dann sollten Sie einen Prozess erstellen, bei dem Orchestrierungsdateien, API-Komponenten und Cloud-Dienste wie Amazon S3-Bucket-Berechtigungen ständig überprüft und aktualisiert werden. Bei dieser Überprüfung sollte auch die Gesamtwirksamkeit der Sicherheitseinstellungen in der gesamten Umgebung im Laufe der Zeit bewertet werden, um sicherzustellen, dass das Unternehmen seine API-Sicherheit stets verbessert.
Schauen Sie sich die Secure Code Warrior Blog-Seiten, um mehr über diese Schwachstelle zu erfahren 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.

Klicken Sie auf den unten stehenden Link und laden Sie die PDF-Datei dieser Ressource herunter.
Secure Code Warrior ist für Ihr Unternehmen da, um Sie dabei zu unterstützen, Ihren Code über den gesamten Lebenszyklus der Softwareentwicklung hinweg zu sichern und eine Kultur zu schaffen, in der Cybersicherheit an erster Stelle steht. Ganz gleich, ob Sie AppSec-Manager, Entwickler, CISO oder ein anderer Sicherheitsverantwortlicher sind, wir können Ihrem Unternehmen helfen, die mit unsicherem Code verbundenen Risiken zu reduzieren.
Bericht ansehenDemo buchenMatias Madou, Ph.D., ist Sicherheitsexperte, Forscher, CTO und Mitbegründer von Secure Code Warrior. Matias promovierte an der Universität Gent im Bereich Anwendungssicherheit und konzentrierte sich dabei auf statische Analyselösungen. Später wechselte er zu Fortify in den USA, wo er erkannte, dass es nicht ausreicht, nur Codeprobleme zu erkennen, ohne den Entwicklern beim Schreiben von sicherem Code zu helfen. Dies inspirierte ihn dazu, Produkte zu entwickeln, die Entwickler unterstützen, den Aufwand für die Sicherheit verringern und die Erwartungen der Kunden übertreffen. Wenn er nicht an seinem Schreibtisch im Team Awesome sitzt, steht er gerne auf der Bühne und hält Vorträge auf Konferenzen wie der RSA Conference, BlackHat und DefCon.
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.
Während die meisten Schwachstellen in dieser Liste ziemlich spezifisch für APIs sind, ist das Problem der deaktivierten Sicherheitsfunktionen/aktivierten Debug-Funktionen/unzulässigen Berechtigungen eines, das überall auftreten kann. Es ist wahrscheinlich etwas häufiger in APIs anzutreffen, aber Angreifer werden oft versuchen, ungepatchte Schwachstellen und ungeschützte Dateien oder Verzeichnisse irgendwo in einem Netzwerk zu finden. Wenn sie auf eine API stoßen, bei der das Debugging aktiviert oder die Sicherheitsfunktionen deaktiviert sind, macht das ihre schändliche Arbeit nur ein wenig einfacher. Schlimmer noch, es gibt automatisierte Tools, um Sicherheitsfehlkonfigurationen zu erkennen und auszunutzen. Wenn Sie diese also in Ihrer Umgebung haben, besteht eine gute Chance, dass sie ausgenutzt werden, weshalb diese Schwachstelle es auf die OWASP-Liste der gefährlichen API-Schwachstellen geschafft hat.
Bevor wir mit dem Spaß beginnen, sehen Sie, ob Sie diese Debug-Herausforderung lösen können:
Wie schleicht sich der Fehler deaktivierte Sicherheitsfunktionen/aktivierte Debug-Funktionen/unzulässige Berechtigungen in eine API ein?
Um zu sehen, wie dieser mehrdimensionale API-Fehler in die Netzwerke gelangt, müssen wir ihn in seine Bestandteile zerlegen. Beginnen wir mit dem Problem der aktivierten Debugging-Funktionen. Debugging ist ein nützliches Werkzeug, das Entwicklern hilft, herauszufinden, warum Anwendungen nicht richtig funktionieren oder Fehler machen. Wenn Debugging aktiviert ist, werden bei Fehlern und Ausnahmen detaillierte Fehlerseiten generiert, so dass Entwickler sehen können, was schief gelaufen ist und Probleme beheben können. Es ist völlig in Ordnung, diese Funktion zu aktivieren, während sich eine Anwendung noch in der Entwicklung befindet.
Es gibt jedoch einen Grund, warum die meisten Frameworks mit Warnungen über die Ausführung des Debug-Modus in einer Produktionsumgebung kommen, wahrscheinlich direkt im Code, wo das Debugging aktiviert ist. Zum Beispiel:
# SICHERHEITSWARNUNG: nicht mit eingeschaltetem Debug in der Produktion ausführen!
DEBUG = True
In diesem Beispiel wurde das Debugging aktiviert. Die Django-Anwendung generiert detaillierte Fehlerseiten, wenn eine Ausnahme ausgelöst wird. Wenn dies in einer Produktionsumgebung geschieht, hätte ein Angreifer Zugriff auf diese Fehlerseiten, die Metadateninformationen über die Umgebung enthalten. Obwohl bei den meisten Frameworks das Debugging standardmäßig ausgeschaltet ist, vergisst man leicht, es wieder auszuschalten, wenn es während eines langen Entwicklungsprozesses aktiviert wurde. Wenn die Anwendung dann in eine Produktionsumgebung übergeht, bietet sie Angreifern viele Informationen darüber, wie sie eine Anwendung oder sogar einen ganzen Server oder ein Netzwerk kompromittieren können.
Während das Aktivieren des Debug-Modus meist ein eigenständiges Problem darstellt, wirken die Schwachstellen mit falschen Berechtigungen und deaktivierten Sicherheitsfunktionen oft zusammen. In einem realen Szenario, das von OWASP zur Verfügung gestellt wurde, verwendete ein Angreifer beispielsweise eine Suchmaschine, um eine Datenbank zu finden, die versehentlich mit dem Internet verbunden war. Da das beliebte Datenbankmanagementsystem seine Standardkonfiguration verwendete, war die Authentifizierung deaktiviert. Durch die Kombination der falschen Berechtigungen und der deaktivierten Sicherheitsfunktionen erlangte der Angreifer somit Zugriff auf Millionen von Datensätzen mit PII, persönlichen Einstellungen und Authentifizierungsdaten.
Beseitigung der deaktivierten Sicherheitsfunktionen/aktivierten Debug-Funktionen/unzulässigen Berechtigungsschwachstellen
Wahrscheinlich müssen Sie bei der Beseitigung dieser Schwachstelle einen zweigleisigen Ansatz wählen. Um den aktivierten Debug-Teil des Problems zu beseitigen, fügen Sie einfach eine Prüfung in den Entwicklungsprozess ein, um sicherzustellen, dass das Debugging deaktiviert wird, bevor eine API oder Anwendung in die Produktionsumgebung verschoben wird. In unserem Beispiel würde der richtige Befehl dazu folgendermaßen lauten:
# SICHERHEITSWARNUNG: nicht mit eingeschaltetem Debug in der Produktion ausführen!
DEBUG = False
Jetzt werden die Debug-Funktionen in der Django-Anwendung deaktiviert, indem das DEBUG-Flag auf False konfiguriert wird. Als Reaktion auf Fehler werden keine Fehlerseiten generiert. Wenn ein Angreifer dennoch Zugriff auf Fehlerseiten erhält, enthalten diese keine nützlichen Metadaten und stellen kein Risiko für die Anwendung dar.
Die Beseitigung von deaktivierten Sicherheitsfunktionen und Schwachstellen durch falsche Berechtigungen ist etwas schwieriger, da sie eine Vielzahl von spezifischen Schwachstellen umfassen können. Der beste Weg, sie zu stoppen, ist die Entwicklung eines standardisierten und wiederholbaren Prozesses, der eine schnelle und einfache Bereitstellung von gesperrten Assets in der Produktionsumgebung ermöglicht.
Selbst dann sollten Sie einen Prozess erstellen, bei dem Orchestrierungsdateien, API-Komponenten und Cloud-Dienste wie Amazon S3-Bucket-Berechtigungen ständig überprüft und aktualisiert werden. Bei dieser Überprüfung sollte auch die Gesamtwirksamkeit der Sicherheitseinstellungen in der gesamten Umgebung im Laufe der Zeit bewertet werden, um sicherzustellen, dass das Unternehmen seine API-Sicherheit stets verbessert.
Schauen Sie sich die Secure Code Warrior Blog-Seiten, um mehr über diese Schwachstelle zu erfahren 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.
Inhaltsübersicht
Matias Madou, Ph.D., ist Sicherheitsexperte, Forscher, CTO und Mitbegründer von Secure Code Warrior. Matias promovierte an der Universität Gent im Bereich Anwendungssicherheit und konzentrierte sich dabei auf statische Analyselösungen. Später wechselte er zu Fortify in den USA, wo er erkannte, dass es nicht ausreicht, nur Codeprobleme zu erkennen, ohne den Entwicklern beim Schreiben von sicherem Code zu helfen. Dies inspirierte ihn dazu, Produkte zu entwickeln, die Entwickler unterstützen, den Aufwand für die Sicherheit verringern und die Erwartungen der Kunden übertreffen. Wenn er nicht an seinem Schreibtisch im Team Awesome sitzt, steht er gerne auf der Bühne und hält Vorträge auf Konferenzen wie der RSA Conference, BlackHat und DefCon.

Secure Code Warrior ist für Ihr Unternehmen da, um Sie dabei zu unterstützen, Ihren Code über den gesamten Lebenszyklus der Softwareentwicklung hinweg zu sichern und eine Kultur zu schaffen, in der Cybersicherheit an erster Stelle steht. Ganz gleich, ob Sie AppSec-Manager, Entwickler, CISO oder ein anderer Sicherheitsverantwortlicher sind, wir können Ihrem Unternehmen helfen, die mit unsicherem Code verbundenen Risiken zu reduzieren.
Demo buchenHerunterladenRessourcen für den Einstieg
Sicher durch Design: Definition von Best Practices, Befähigung von Entwicklern und Benchmarking von präventiven Sicherheitsergebnissen
In diesem Forschungspapier werden die Mitbegründer von Secure Code Warrior , Pieter Danhieux und Dr. Matias Madou, Ph.D., zusammen mit den Experten Chris Inglis, ehemaliger US National Cyber Director (jetzt strategischer Berater der Paladin Capital Group), und Devin Lynch, Senior Director, Paladin Global Institute, die wichtigsten Erkenntnisse aus mehr als zwanzig ausführlichen Interviews mit Sicherheitsverantwortlichen in Unternehmen, darunter CISOs, ein VP of Application Security und Software-Sicherheitsexperten, offenlegen.
Benchmarking von Sicherheitskompetenzen: Optimierung von Secure-by-Design im Unternehmen
Aussagekräftige Daten über den Erfolg von Secure-by-Design-Initiativen zu finden, ist bekanntermaßen schwierig. CISOs stehen oft vor der Herausforderung, den Return on Investment (ROI) und den Geschäftswert von Sicherheitsprogrammen sowohl auf Mitarbeiter- als auch auf Unternehmensebene nachzuweisen. Ganz zu schweigen davon, dass es für Unternehmen besonders schwierig ist, Erkenntnisse darüber zu gewinnen, wie ihre Organisation im Vergleich zu aktuellen Branchenstandards abschneidet. Die Nationale Cybersicherheitsstrategie des Präsidenten forderte die Beteiligten auf, "Sicherheit und Widerstandsfähigkeit durch Design" zu erreichen. Der Schlüssel zum Erfolg von Secure-by-Design-Initiativen liegt nicht nur darin, Entwicklern die nötigen Fähigkeiten zu vermitteln, um sicheren Code zu gewährleisten, sondern auch darin, den Aufsichtsbehörden zu versichern, dass diese Fähigkeiten vorhanden sind. In dieser Präsentation stellen wir eine Vielzahl von qualitativen und quantitativen Daten vor, die aus verschiedenen Primärquellen stammen, darunter interne Daten von über 250.000 Entwicklern, datengestützte Kundeneinblicke und öffentliche Studien. Auf der Grundlage dieser gesammelten Daten wollen wir eine Vision des aktuellen Stands von Secure-by-Design-Initiativen in verschiedenen Branchen vermitteln. Der Bericht zeigt auf, warum dieser Bereich derzeit nicht ausreichend genutzt wird, welche erheblichen Auswirkungen ein erfolgreiches Schulungsprogramm auf die Minderung von Cybersecurity-Risiken haben kann und welches Potenzial zur Beseitigung von Schwachstellen in einer Codebasis besteht.
Professionelle Dienstleistungen - Beschleunigen Sie mit Fachwissen
Das PSS-Team (Program Strategy Services) von Secure Code Warriorunterstützt Sie beim Aufbau, der Verbesserung und der Optimierung Ihres Programms für sichere Codierung. Ganz gleich, ob Sie neu anfangen oder Ihren Ansatz verfeinern möchten, unsere Experten bieten Ihnen maßgeschneiderte Beratung.
Themen und Inhalte der Schulung zu sicherem Code
Unsere branchenführenden Inhalte werden ständig weiterentwickelt, um sie an die sich ständig verändernde Softwareentwicklungslandschaft anzupassen und Ihre Rolle zu berücksichtigen. Die Themen reichen von KI bis XQuery Injection und werden für eine Vielzahl von Rollen angeboten, von Architekten und Ingenieuren bis hin zu Produktmanagern und QA. Verschaffen Sie sich einen kleinen Überblick über die Inhalte, die unser Katalog nach Thema und Rolle bietet.
Ressourcen für den Einstieg
Aufgedeckt: Wie die Cyber-Industrie "Secure by Design" definiert
In unserem neuesten Whitepaper haben sich unsere Mitbegründer Pieter Danhieux und Dr. Matias Madou, Ph.D., mit über zwanzig Sicherheitsverantwortlichen in Unternehmen, darunter CISOs, AppSec-Leiter und Sicherheitsexperten, zusammengesetzt, um die wichtigsten Teile dieses Puzzles herauszufinden und die Realität hinter der Secure by Design-Bewegung aufzudecken. Die Sicherheitsteams haben ein gemeinsames Ziel, aber kein gemeinsames Regelwerk.
Wird Vibe Coding Ihre Codebasis in eine Verbindungsparty verwandeln?
Vibe Coding ist wie eine College-Verbindungsparty, und AI ist das Herzstück aller Festivitäten, das Fass. Es macht eine Menge Spaß, sich auszutoben, kreativ zu werden und zu sehen, wohin die eigene Fantasie einen führen kann, aber nach ein paar Bierfässern ist das Trinken (oder die Verwendung von KI) in Maßen zweifellos die sicherere langfristige Lösung.