SCW-Symbole
Held-Hintergrund ohne Trennlinie
Blog

Programmierer erobern Sicherheit: Share & Learn-Serie — Broken Access Control

Jaap Karan Singh
Veröffentlicht Mai 09, 2019
Zuletzt aktualisiert am 09. März 2026

Wenn Sie eine Geschäftsanwendung erstellen, sei es für den internen oder externen Gebrauch durch Ihre Kunden, lassen Sie wahrscheinlich nicht jeden Benutzer jede einzelne Funktion ausführen. Wenn Sie dies tun, sind Sie möglicherweise anfällig für eine unterbrochene Zugriffskontrolle.

Schauen wir uns an, was eine kaputte Zugangskontrolle ist, warum sie so gefährlich ist und wie sie behoben werden kann.

Verstehe kaputte Zugriffskontrolle

Eine fehlerhafte Zugriffskontrolle liegt vor, wenn der Anwendungscode nicht über die richtigen Sicherheits- oder Zugriffskontrollen verfügt. Es kann auch auftreten, wenn eine Anwendung in irgendeiner Weise falsch konfiguriert ist und den Zugriff auf Funktionen oder Seiten ermöglicht, auf die der Benutzer keinen Zugriff haben sollte.

Wenn Sie sich um die Finanzen Ihres Unternehmens kümmern, haben Sie möglicherweise die Möglichkeit, Geld auf bestimmte Konten einzuzahlen oder Geld zwischen den Konten Ihres Unternehmens zu überweisen. Sie sollten jedoch keinen Zugriff darauf haben, Bargeld von diesen Konten abzuheben oder Geld auf andere Konten zu überweisen. Wenn die richtigen Zugriffskontrollen nicht vorhanden sind, können Ihre Mitarbeiter möglicherweise mehr Funktionen als nötig ausführen.

Diese Prüfungen können entweder innerhalb des Codes oder in Konfigurationsdateien durchgeführt werden. Beispielsweise kann es XML-Konfigurationsdateien geben, die dem Web Application Framework mitteilen, welche Benutzer auf welche Seiten zugreifen dürfen. Dadurch wird sichergestellt, dass Benutzer nur auf die Funktionen zugreifen können, zu deren Nutzung sie berechtigt sind.

Warum eine kaputte Zugangskontrolle gefährlich ist

Sehen Sie sich dieses Beispiel an: Ein Angreifer hat erkannt, dass der Code zur Erstellung Ihres Benutzerkontos manipuliert werden kann, sodass der Angreifer mit einer einfachen Postanfrage einen Admin-Benutzer erstellen kann. Er kann eine Anfrage mit dem Benutzernamen und dem Passwort senden und diese dann unterwegs so ändern, dass die Rolle des Administrators in der URL als Parameter oder im Hauptteil der Anfrage enthalten ist. Der Angreifer meldet sich bei der Anwendung an und erhält sofort Administratorrechte.

Es muss nicht immer ein böswilliger Angreifer sein, der in ein System eindringt. Ohne angemessene Zugriffskontrollen können vertrauliche Informationen, die nicht zwischen Abteilungen ausgetauscht werden sollten, durchsickern. Stellen Sie sich vor, jeder Mitarbeiter des Unternehmens könnte Personaldaten oder Finanzdaten einsehen. Was würde passieren, wenn ein Mitarbeiter sehen könnte, dass aufgrund der schlechten finanziellen Situation des Unternehmens Entlassungen bevorstehen? Dies könnte Ihrer Moral und dem Ruf Ihres Unternehmens schaden.

Vertrauliche Kundeninformationen könnten ebenfalls verloren gehen. Unternehmen speichern häufig persönliche Daten von Kunden, die ihre Dienste nutzen. Achten Sie darauf, dass Sie dies nicht versehentlich aufgrund mangelnder Zugriffskontrolle preisgeben. Wenn Ihr System beispielsweise Benutzern die Möglichkeit gibt, ihre Gesundheitsdaten anzufordern, haben sie dann auch die Möglichkeit, die Gesundheitsinformationen anderer Benutzer anzufordern und einzusehen? Wenn die URL eine Kundennummer enthält, könnten Angreifer diese Kundennummer immer wieder erhöhen, bis sie eine finden, die mit einem anderen Kunden übereinstimmt, wodurch ihre persönlichen Daten preisgegeben werden.

Besiege Broken Access Control

Die rollenbasierte Zugriffskontrolle (RBAC) ist ein sehr effektives Tool zur Implementierung einer soliden Zugriffskontrolle. Diejenigen, die Active Directory verwenden, kennen möglicherweise die Idee von Gruppen erstellen und den Zugriff auf bestimmte Elemente in der gesamten Gruppe statt auf die Einzelperson zu gewähren. Anwendungen funktionieren auf die gleiche Weise und definieren mithilfe von Rollen, wer was sehen darf.

Das hat zwei Vorteile. Erstens muss eine Funktion nicht geändert werden, wenn jemand die Administratorrolle verlässt. Wenn jemand zuvor Administrator war und es jetzt nicht mehr sein sollte, dann setzt man einfach eine neue Person in die Administratorrolle und entfernt die vorherige Person aus der Rolle. Der Code überprüft, ob der Benutzer die Administratorrolle hat, anstatt zu überprüfen, ob jeder einzelne Benutzer Zugriff auf eine bestimmte Seite oder Funktion hat.

Der zweite Vorteil besteht darin, einen Wartungsalbtraum zu vermeiden. Eine Zugriffskontrolle, die so detailliert ist, dass jede Person mit jeder einzelnen möglichen Funktion oder Seite in Verbindung steht, wird im Laufe der Zeit unmöglich zu verwalten sein. Rollen erleichtern die Arbeit erheblich, da einer Rolle mehrere Personen hinzugefügt werden können. Eine Rolle kann das gesamte Unternehmen umfassen, während eine andere nur fünf Personen umfassen kann. Dadurch wird die Verwaltung der Rollen effizienter, da weniger Rollen verwaltet werden müssen. Ein Unternehmen mit 10.000 Mitarbeitern könnte nur 100 Rollen haben, anstatt die 10.000-fache Anzahl der Funktionen in Ihrer Anwendung. Informieren Sie sich über das von Ihnen gewählte Anwendungsframework, um festzustellen, welche Optionen für eine robuste Zugriffskontrolle existieren.

Es ist auch wichtig, eine Zugriffskontrolle auf Funktionsebene zu verwenden. Schützen Sie den Zugriff auf alle Funktionen, indem Sie von Benutzern verlangen, dass sie bestimmte Zugriffskontrollen bestehen. Verwenden Sie das Prinzip der geringsten Rechte, indem Sie den Zugriff standardmäßig verweigern und den Zugriff nur nach Bedarf öffnen. Es kann schwierig sein, sich daran zu erinnern, für jede Funktion eine Zugriffskontrolle zu implementieren. Verwenden Sie eine zentrale Komponente, um die Zugriffskontrolle zu verwalten und durchzusetzen.

Schützen Sie Ihre sensiblen Funktionen

Eine unterbrochene Zugriffskontrolle kann Ihre Daten und Ihre Anwendung anfällig für Angriffe und Ausnutzung machen. Kundendaten, die nicht ordnungsgemäß geschützt sind, können zu einer massiven Datenschutzverletzung führen, die Ihrem Ruf und Ihrem Umsatz schadet.

Eine unterbrochene Zugriffskontrolle kann auch zur Kontoübernahme führen, wenn Angreifer auf Funktionen zugreifen können, auf die sie nicht zugreifen sollten. Verwenden Sie eine angemessene Zugriffskontrolle auf Funktionsebene, um Ihre Anwendung vor böswilligen Angreifern und sogar vor zufälligen Insidern zu schützen.

Denken Sie, dass Sie alle Fragen rund um den Zugriff auf Funktionsebene haben? Sie können sich jetzt selbst herausfordern, eine defekte Zutrittskontrolle zu reparieren: [Fangen Sie hier an]

Ressource anzeigen
Ressource anzeigen

Wenn Sie eine Geschäftsanwendung erstellen, sei es für den internen oder externen Gebrauch durch Ihre Kunden, lassen Sie wahrscheinlich nicht jeden Benutzer jede einzelne Funktion ausführen. Wenn Sie dies tun, sind Sie möglicherweise anfällig für eine unterbrochene Zugriffskontrolle.

Interessiert an mehr?

Jaap Karan Singh ist ein Secure Coding Evangelist, Chief Singh und Mitbegründer von Secure Code Warrior.

mehr erfahren

Secure Code Warrior für Ihr Unternehmen da, um Ihnen zu helfen, Code während des gesamten Softwareentwicklungszyklus zu sichern und eine Kultur zu schaffen, in der Cybersicherheit an erster Stelle steht. Ganz gleich, ob Sie AppSec-Manager, Entwickler, CISO oder jemand anderes sind, der sich mit Sicherheit befasst, wir können Ihrem Unternehmen helfen, die mit unsicherem Code verbundenen Risiken zu reduzieren.

Eine Demo buchen
Teilen auf:
LinkedIn-MarkenSozialx Logo
Autor
Jaap Karan Singh
Veröffentlicht Mai 09, 2019

Jaap Karan Singh ist ein Secure Coding Evangelist, Chief Singh und Mitbegründer von Secure Code Warrior.

Teilen auf:
LinkedIn-MarkenSozialx Logo

Wenn Sie eine Geschäftsanwendung erstellen, sei es für den internen oder externen Gebrauch durch Ihre Kunden, lassen Sie wahrscheinlich nicht jeden Benutzer jede einzelne Funktion ausführen. Wenn Sie dies tun, sind Sie möglicherweise anfällig für eine unterbrochene Zugriffskontrolle.

Schauen wir uns an, was eine kaputte Zugangskontrolle ist, warum sie so gefährlich ist und wie sie behoben werden kann.

Verstehe kaputte Zugriffskontrolle

Eine fehlerhafte Zugriffskontrolle liegt vor, wenn der Anwendungscode nicht über die richtigen Sicherheits- oder Zugriffskontrollen verfügt. Es kann auch auftreten, wenn eine Anwendung in irgendeiner Weise falsch konfiguriert ist und den Zugriff auf Funktionen oder Seiten ermöglicht, auf die der Benutzer keinen Zugriff haben sollte.

Wenn Sie sich um die Finanzen Ihres Unternehmens kümmern, haben Sie möglicherweise die Möglichkeit, Geld auf bestimmte Konten einzuzahlen oder Geld zwischen den Konten Ihres Unternehmens zu überweisen. Sie sollten jedoch keinen Zugriff darauf haben, Bargeld von diesen Konten abzuheben oder Geld auf andere Konten zu überweisen. Wenn die richtigen Zugriffskontrollen nicht vorhanden sind, können Ihre Mitarbeiter möglicherweise mehr Funktionen als nötig ausführen.

Diese Prüfungen können entweder innerhalb des Codes oder in Konfigurationsdateien durchgeführt werden. Beispielsweise kann es XML-Konfigurationsdateien geben, die dem Web Application Framework mitteilen, welche Benutzer auf welche Seiten zugreifen dürfen. Dadurch wird sichergestellt, dass Benutzer nur auf die Funktionen zugreifen können, zu deren Nutzung sie berechtigt sind.

Warum eine kaputte Zugangskontrolle gefährlich ist

Sehen Sie sich dieses Beispiel an: Ein Angreifer hat erkannt, dass der Code zur Erstellung Ihres Benutzerkontos manipuliert werden kann, sodass der Angreifer mit einer einfachen Postanfrage einen Admin-Benutzer erstellen kann. Er kann eine Anfrage mit dem Benutzernamen und dem Passwort senden und diese dann unterwegs so ändern, dass die Rolle des Administrators in der URL als Parameter oder im Hauptteil der Anfrage enthalten ist. Der Angreifer meldet sich bei der Anwendung an und erhält sofort Administratorrechte.

Es muss nicht immer ein böswilliger Angreifer sein, der in ein System eindringt. Ohne angemessene Zugriffskontrollen können vertrauliche Informationen, die nicht zwischen Abteilungen ausgetauscht werden sollten, durchsickern. Stellen Sie sich vor, jeder Mitarbeiter des Unternehmens könnte Personaldaten oder Finanzdaten einsehen. Was würde passieren, wenn ein Mitarbeiter sehen könnte, dass aufgrund der schlechten finanziellen Situation des Unternehmens Entlassungen bevorstehen? Dies könnte Ihrer Moral und dem Ruf Ihres Unternehmens schaden.

Vertrauliche Kundeninformationen könnten ebenfalls verloren gehen. Unternehmen speichern häufig persönliche Daten von Kunden, die ihre Dienste nutzen. Achten Sie darauf, dass Sie dies nicht versehentlich aufgrund mangelnder Zugriffskontrolle preisgeben. Wenn Ihr System beispielsweise Benutzern die Möglichkeit gibt, ihre Gesundheitsdaten anzufordern, haben sie dann auch die Möglichkeit, die Gesundheitsinformationen anderer Benutzer anzufordern und einzusehen? Wenn die URL eine Kundennummer enthält, könnten Angreifer diese Kundennummer immer wieder erhöhen, bis sie eine finden, die mit einem anderen Kunden übereinstimmt, wodurch ihre persönlichen Daten preisgegeben werden.

Besiege Broken Access Control

Die rollenbasierte Zugriffskontrolle (RBAC) ist ein sehr effektives Tool zur Implementierung einer soliden Zugriffskontrolle. Diejenigen, die Active Directory verwenden, kennen möglicherweise die Idee von Gruppen erstellen und den Zugriff auf bestimmte Elemente in der gesamten Gruppe statt auf die Einzelperson zu gewähren. Anwendungen funktionieren auf die gleiche Weise und definieren mithilfe von Rollen, wer was sehen darf.

Das hat zwei Vorteile. Erstens muss eine Funktion nicht geändert werden, wenn jemand die Administratorrolle verlässt. Wenn jemand zuvor Administrator war und es jetzt nicht mehr sein sollte, dann setzt man einfach eine neue Person in die Administratorrolle und entfernt die vorherige Person aus der Rolle. Der Code überprüft, ob der Benutzer die Administratorrolle hat, anstatt zu überprüfen, ob jeder einzelne Benutzer Zugriff auf eine bestimmte Seite oder Funktion hat.

Der zweite Vorteil besteht darin, einen Wartungsalbtraum zu vermeiden. Eine Zugriffskontrolle, die so detailliert ist, dass jede Person mit jeder einzelnen möglichen Funktion oder Seite in Verbindung steht, wird im Laufe der Zeit unmöglich zu verwalten sein. Rollen erleichtern die Arbeit erheblich, da einer Rolle mehrere Personen hinzugefügt werden können. Eine Rolle kann das gesamte Unternehmen umfassen, während eine andere nur fünf Personen umfassen kann. Dadurch wird die Verwaltung der Rollen effizienter, da weniger Rollen verwaltet werden müssen. Ein Unternehmen mit 10.000 Mitarbeitern könnte nur 100 Rollen haben, anstatt die 10.000-fache Anzahl der Funktionen in Ihrer Anwendung. Informieren Sie sich über das von Ihnen gewählte Anwendungsframework, um festzustellen, welche Optionen für eine robuste Zugriffskontrolle existieren.

Es ist auch wichtig, eine Zugriffskontrolle auf Funktionsebene zu verwenden. Schützen Sie den Zugriff auf alle Funktionen, indem Sie von Benutzern verlangen, dass sie bestimmte Zugriffskontrollen bestehen. Verwenden Sie das Prinzip der geringsten Rechte, indem Sie den Zugriff standardmäßig verweigern und den Zugriff nur nach Bedarf öffnen. Es kann schwierig sein, sich daran zu erinnern, für jede Funktion eine Zugriffskontrolle zu implementieren. Verwenden Sie eine zentrale Komponente, um die Zugriffskontrolle zu verwalten und durchzusetzen.

Schützen Sie Ihre sensiblen Funktionen

Eine unterbrochene Zugriffskontrolle kann Ihre Daten und Ihre Anwendung anfällig für Angriffe und Ausnutzung machen. Kundendaten, die nicht ordnungsgemäß geschützt sind, können zu einer massiven Datenschutzverletzung führen, die Ihrem Ruf und Ihrem Umsatz schadet.

Eine unterbrochene Zugriffskontrolle kann auch zur Kontoübernahme führen, wenn Angreifer auf Funktionen zugreifen können, auf die sie nicht zugreifen sollten. Verwenden Sie eine angemessene Zugriffskontrolle auf Funktionsebene, um Ihre Anwendung vor böswilligen Angreifern und sogar vor zufälligen Insidern zu schützen.

Denken Sie, dass Sie alle Fragen rund um den Zugriff auf Funktionsebene haben? Sie können sich jetzt selbst herausfordern, eine defekte Zutrittskontrolle zu reparieren: [Fangen Sie hier an]

Ressource anzeigen
Ressource anzeigen

Füllen Sie das unten stehende Formular aus, um den Bericht herunterzuladen.

Wir bitten um Ihre Erlaubnis, Ihnen Informationen zu unseren Produkten und/oder verwandten Themen rund um sichere Codierung zuzusenden. Wir behandeln Ihre persönlichen Daten stets mit größter Sorgfalt und verkaufen sie niemals zu Marketingzwecken an andere Unternehmen.

Einreichen
scw Erfolgssymbol
scw-Fehlersymbol
Um das Formular abzusenden, aktivieren Sie bitte „Analytics“-Cookies. Wenn Sie fertig sind, können Sie sie jederzeit wieder deaktivieren.

Wenn Sie eine Geschäftsanwendung erstellen, sei es für den internen oder externen Gebrauch durch Ihre Kunden, lassen Sie wahrscheinlich nicht jeden Benutzer jede einzelne Funktion ausführen. Wenn Sie dies tun, sind Sie möglicherweise anfällig für eine unterbrochene Zugriffskontrolle.

Schauen wir uns an, was eine kaputte Zugangskontrolle ist, warum sie so gefährlich ist und wie sie behoben werden kann.

Verstehe kaputte Zugriffskontrolle

Eine fehlerhafte Zugriffskontrolle liegt vor, wenn der Anwendungscode nicht über die richtigen Sicherheits- oder Zugriffskontrollen verfügt. Es kann auch auftreten, wenn eine Anwendung in irgendeiner Weise falsch konfiguriert ist und den Zugriff auf Funktionen oder Seiten ermöglicht, auf die der Benutzer keinen Zugriff haben sollte.

Wenn Sie sich um die Finanzen Ihres Unternehmens kümmern, haben Sie möglicherweise die Möglichkeit, Geld auf bestimmte Konten einzuzahlen oder Geld zwischen den Konten Ihres Unternehmens zu überweisen. Sie sollten jedoch keinen Zugriff darauf haben, Bargeld von diesen Konten abzuheben oder Geld auf andere Konten zu überweisen. Wenn die richtigen Zugriffskontrollen nicht vorhanden sind, können Ihre Mitarbeiter möglicherweise mehr Funktionen als nötig ausführen.

Diese Prüfungen können entweder innerhalb des Codes oder in Konfigurationsdateien durchgeführt werden. Beispielsweise kann es XML-Konfigurationsdateien geben, die dem Web Application Framework mitteilen, welche Benutzer auf welche Seiten zugreifen dürfen. Dadurch wird sichergestellt, dass Benutzer nur auf die Funktionen zugreifen können, zu deren Nutzung sie berechtigt sind.

Warum eine kaputte Zugangskontrolle gefährlich ist

Sehen Sie sich dieses Beispiel an: Ein Angreifer hat erkannt, dass der Code zur Erstellung Ihres Benutzerkontos manipuliert werden kann, sodass der Angreifer mit einer einfachen Postanfrage einen Admin-Benutzer erstellen kann. Er kann eine Anfrage mit dem Benutzernamen und dem Passwort senden und diese dann unterwegs so ändern, dass die Rolle des Administrators in der URL als Parameter oder im Hauptteil der Anfrage enthalten ist. Der Angreifer meldet sich bei der Anwendung an und erhält sofort Administratorrechte.

Es muss nicht immer ein böswilliger Angreifer sein, der in ein System eindringt. Ohne angemessene Zugriffskontrollen können vertrauliche Informationen, die nicht zwischen Abteilungen ausgetauscht werden sollten, durchsickern. Stellen Sie sich vor, jeder Mitarbeiter des Unternehmens könnte Personaldaten oder Finanzdaten einsehen. Was würde passieren, wenn ein Mitarbeiter sehen könnte, dass aufgrund der schlechten finanziellen Situation des Unternehmens Entlassungen bevorstehen? Dies könnte Ihrer Moral und dem Ruf Ihres Unternehmens schaden.

Vertrauliche Kundeninformationen könnten ebenfalls verloren gehen. Unternehmen speichern häufig persönliche Daten von Kunden, die ihre Dienste nutzen. Achten Sie darauf, dass Sie dies nicht versehentlich aufgrund mangelnder Zugriffskontrolle preisgeben. Wenn Ihr System beispielsweise Benutzern die Möglichkeit gibt, ihre Gesundheitsdaten anzufordern, haben sie dann auch die Möglichkeit, die Gesundheitsinformationen anderer Benutzer anzufordern und einzusehen? Wenn die URL eine Kundennummer enthält, könnten Angreifer diese Kundennummer immer wieder erhöhen, bis sie eine finden, die mit einem anderen Kunden übereinstimmt, wodurch ihre persönlichen Daten preisgegeben werden.

Besiege Broken Access Control

Die rollenbasierte Zugriffskontrolle (RBAC) ist ein sehr effektives Tool zur Implementierung einer soliden Zugriffskontrolle. Diejenigen, die Active Directory verwenden, kennen möglicherweise die Idee von Gruppen erstellen und den Zugriff auf bestimmte Elemente in der gesamten Gruppe statt auf die Einzelperson zu gewähren. Anwendungen funktionieren auf die gleiche Weise und definieren mithilfe von Rollen, wer was sehen darf.

Das hat zwei Vorteile. Erstens muss eine Funktion nicht geändert werden, wenn jemand die Administratorrolle verlässt. Wenn jemand zuvor Administrator war und es jetzt nicht mehr sein sollte, dann setzt man einfach eine neue Person in die Administratorrolle und entfernt die vorherige Person aus der Rolle. Der Code überprüft, ob der Benutzer die Administratorrolle hat, anstatt zu überprüfen, ob jeder einzelne Benutzer Zugriff auf eine bestimmte Seite oder Funktion hat.

Der zweite Vorteil besteht darin, einen Wartungsalbtraum zu vermeiden. Eine Zugriffskontrolle, die so detailliert ist, dass jede Person mit jeder einzelnen möglichen Funktion oder Seite in Verbindung steht, wird im Laufe der Zeit unmöglich zu verwalten sein. Rollen erleichtern die Arbeit erheblich, da einer Rolle mehrere Personen hinzugefügt werden können. Eine Rolle kann das gesamte Unternehmen umfassen, während eine andere nur fünf Personen umfassen kann. Dadurch wird die Verwaltung der Rollen effizienter, da weniger Rollen verwaltet werden müssen. Ein Unternehmen mit 10.000 Mitarbeitern könnte nur 100 Rollen haben, anstatt die 10.000-fache Anzahl der Funktionen in Ihrer Anwendung. Informieren Sie sich über das von Ihnen gewählte Anwendungsframework, um festzustellen, welche Optionen für eine robuste Zugriffskontrolle existieren.

Es ist auch wichtig, eine Zugriffskontrolle auf Funktionsebene zu verwenden. Schützen Sie den Zugriff auf alle Funktionen, indem Sie von Benutzern verlangen, dass sie bestimmte Zugriffskontrollen bestehen. Verwenden Sie das Prinzip der geringsten Rechte, indem Sie den Zugriff standardmäßig verweigern und den Zugriff nur nach Bedarf öffnen. Es kann schwierig sein, sich daran zu erinnern, für jede Funktion eine Zugriffskontrolle zu implementieren. Verwenden Sie eine zentrale Komponente, um die Zugriffskontrolle zu verwalten und durchzusetzen.

Schützen Sie Ihre sensiblen Funktionen

Eine unterbrochene Zugriffskontrolle kann Ihre Daten und Ihre Anwendung anfällig für Angriffe und Ausnutzung machen. Kundendaten, die nicht ordnungsgemäß geschützt sind, können zu einer massiven Datenschutzverletzung führen, die Ihrem Ruf und Ihrem Umsatz schadet.

Eine unterbrochene Zugriffskontrolle kann auch zur Kontoübernahme führen, wenn Angreifer auf Funktionen zugreifen können, auf die sie nicht zugreifen sollten. Verwenden Sie eine angemessene Zugriffskontrolle auf Funktionsebene, um Ihre Anwendung vor böswilligen Angreifern und sogar vor zufälligen Insidern zu schützen.

Denken Sie, dass Sie alle Fragen rund um den Zugriff auf Funktionsebene haben? Sie können sich jetzt selbst herausfordern, eine defekte Zutrittskontrolle zu reparieren: [Fangen Sie hier an]

Webinar ansehen
Fangen Sie an
mehr erfahren

Klicken Sie auf den untenstehenden Link und laden Sie das PDF dieser Ressource herunter.

Secure Code Warrior für Ihr Unternehmen da, um Ihnen zu helfen, Code während des gesamten Softwareentwicklungszyklus zu sichern und eine Kultur zu schaffen, in der Cybersicherheit an erster Stelle steht. Ganz gleich, ob Sie AppSec-Manager, Entwickler, CISO oder jemand anderes sind, der sich mit Sicherheit befasst, wir können Ihrem Unternehmen helfen, die mit unsicherem Code verbundenen Risiken zu reduzieren.

Bericht ansehenEine Demo buchen
Ressource anzeigen
Teilen auf:
LinkedIn-MarkenSozialx Logo
Interessiert an mehr?

Teilen auf:
LinkedIn-MarkenSozialx Logo
Autor
Jaap Karan Singh
Veröffentlicht Mai 09, 2019

Jaap Karan Singh ist ein Secure Coding Evangelist, Chief Singh und Mitbegründer von Secure Code Warrior.

Teilen auf:
LinkedIn-MarkenSozialx Logo

Wenn Sie eine Geschäftsanwendung erstellen, sei es für den internen oder externen Gebrauch durch Ihre Kunden, lassen Sie wahrscheinlich nicht jeden Benutzer jede einzelne Funktion ausführen. Wenn Sie dies tun, sind Sie möglicherweise anfällig für eine unterbrochene Zugriffskontrolle.

Schauen wir uns an, was eine kaputte Zugangskontrolle ist, warum sie so gefährlich ist und wie sie behoben werden kann.

Verstehe kaputte Zugriffskontrolle

Eine fehlerhafte Zugriffskontrolle liegt vor, wenn der Anwendungscode nicht über die richtigen Sicherheits- oder Zugriffskontrollen verfügt. Es kann auch auftreten, wenn eine Anwendung in irgendeiner Weise falsch konfiguriert ist und den Zugriff auf Funktionen oder Seiten ermöglicht, auf die der Benutzer keinen Zugriff haben sollte.

Wenn Sie sich um die Finanzen Ihres Unternehmens kümmern, haben Sie möglicherweise die Möglichkeit, Geld auf bestimmte Konten einzuzahlen oder Geld zwischen den Konten Ihres Unternehmens zu überweisen. Sie sollten jedoch keinen Zugriff darauf haben, Bargeld von diesen Konten abzuheben oder Geld auf andere Konten zu überweisen. Wenn die richtigen Zugriffskontrollen nicht vorhanden sind, können Ihre Mitarbeiter möglicherweise mehr Funktionen als nötig ausführen.

Diese Prüfungen können entweder innerhalb des Codes oder in Konfigurationsdateien durchgeführt werden. Beispielsweise kann es XML-Konfigurationsdateien geben, die dem Web Application Framework mitteilen, welche Benutzer auf welche Seiten zugreifen dürfen. Dadurch wird sichergestellt, dass Benutzer nur auf die Funktionen zugreifen können, zu deren Nutzung sie berechtigt sind.

Warum eine kaputte Zugangskontrolle gefährlich ist

Sehen Sie sich dieses Beispiel an: Ein Angreifer hat erkannt, dass der Code zur Erstellung Ihres Benutzerkontos manipuliert werden kann, sodass der Angreifer mit einer einfachen Postanfrage einen Admin-Benutzer erstellen kann. Er kann eine Anfrage mit dem Benutzernamen und dem Passwort senden und diese dann unterwegs so ändern, dass die Rolle des Administrators in der URL als Parameter oder im Hauptteil der Anfrage enthalten ist. Der Angreifer meldet sich bei der Anwendung an und erhält sofort Administratorrechte.

Es muss nicht immer ein böswilliger Angreifer sein, der in ein System eindringt. Ohne angemessene Zugriffskontrollen können vertrauliche Informationen, die nicht zwischen Abteilungen ausgetauscht werden sollten, durchsickern. Stellen Sie sich vor, jeder Mitarbeiter des Unternehmens könnte Personaldaten oder Finanzdaten einsehen. Was würde passieren, wenn ein Mitarbeiter sehen könnte, dass aufgrund der schlechten finanziellen Situation des Unternehmens Entlassungen bevorstehen? Dies könnte Ihrer Moral und dem Ruf Ihres Unternehmens schaden.

Vertrauliche Kundeninformationen könnten ebenfalls verloren gehen. Unternehmen speichern häufig persönliche Daten von Kunden, die ihre Dienste nutzen. Achten Sie darauf, dass Sie dies nicht versehentlich aufgrund mangelnder Zugriffskontrolle preisgeben. Wenn Ihr System beispielsweise Benutzern die Möglichkeit gibt, ihre Gesundheitsdaten anzufordern, haben sie dann auch die Möglichkeit, die Gesundheitsinformationen anderer Benutzer anzufordern und einzusehen? Wenn die URL eine Kundennummer enthält, könnten Angreifer diese Kundennummer immer wieder erhöhen, bis sie eine finden, die mit einem anderen Kunden übereinstimmt, wodurch ihre persönlichen Daten preisgegeben werden.

Besiege Broken Access Control

Die rollenbasierte Zugriffskontrolle (RBAC) ist ein sehr effektives Tool zur Implementierung einer soliden Zugriffskontrolle. Diejenigen, die Active Directory verwenden, kennen möglicherweise die Idee von Gruppen erstellen und den Zugriff auf bestimmte Elemente in der gesamten Gruppe statt auf die Einzelperson zu gewähren. Anwendungen funktionieren auf die gleiche Weise und definieren mithilfe von Rollen, wer was sehen darf.

Das hat zwei Vorteile. Erstens muss eine Funktion nicht geändert werden, wenn jemand die Administratorrolle verlässt. Wenn jemand zuvor Administrator war und es jetzt nicht mehr sein sollte, dann setzt man einfach eine neue Person in die Administratorrolle und entfernt die vorherige Person aus der Rolle. Der Code überprüft, ob der Benutzer die Administratorrolle hat, anstatt zu überprüfen, ob jeder einzelne Benutzer Zugriff auf eine bestimmte Seite oder Funktion hat.

Der zweite Vorteil besteht darin, einen Wartungsalbtraum zu vermeiden. Eine Zugriffskontrolle, die so detailliert ist, dass jede Person mit jeder einzelnen möglichen Funktion oder Seite in Verbindung steht, wird im Laufe der Zeit unmöglich zu verwalten sein. Rollen erleichtern die Arbeit erheblich, da einer Rolle mehrere Personen hinzugefügt werden können. Eine Rolle kann das gesamte Unternehmen umfassen, während eine andere nur fünf Personen umfassen kann. Dadurch wird die Verwaltung der Rollen effizienter, da weniger Rollen verwaltet werden müssen. Ein Unternehmen mit 10.000 Mitarbeitern könnte nur 100 Rollen haben, anstatt die 10.000-fache Anzahl der Funktionen in Ihrer Anwendung. Informieren Sie sich über das von Ihnen gewählte Anwendungsframework, um festzustellen, welche Optionen für eine robuste Zugriffskontrolle existieren.

Es ist auch wichtig, eine Zugriffskontrolle auf Funktionsebene zu verwenden. Schützen Sie den Zugriff auf alle Funktionen, indem Sie von Benutzern verlangen, dass sie bestimmte Zugriffskontrollen bestehen. Verwenden Sie das Prinzip der geringsten Rechte, indem Sie den Zugriff standardmäßig verweigern und den Zugriff nur nach Bedarf öffnen. Es kann schwierig sein, sich daran zu erinnern, für jede Funktion eine Zugriffskontrolle zu implementieren. Verwenden Sie eine zentrale Komponente, um die Zugriffskontrolle zu verwalten und durchzusetzen.

Schützen Sie Ihre sensiblen Funktionen

Eine unterbrochene Zugriffskontrolle kann Ihre Daten und Ihre Anwendung anfällig für Angriffe und Ausnutzung machen. Kundendaten, die nicht ordnungsgemäß geschützt sind, können zu einer massiven Datenschutzverletzung führen, die Ihrem Ruf und Ihrem Umsatz schadet.

Eine unterbrochene Zugriffskontrolle kann auch zur Kontoübernahme führen, wenn Angreifer auf Funktionen zugreifen können, auf die sie nicht zugreifen sollten. Verwenden Sie eine angemessene Zugriffskontrolle auf Funktionsebene, um Ihre Anwendung vor böswilligen Angreifern und sogar vor zufälligen Insidern zu schützen.

Denken Sie, dass Sie alle Fragen rund um den Zugriff auf Funktionsebene haben? Sie können sich jetzt selbst herausfordern, eine defekte Zutrittskontrolle zu reparieren: [Fangen Sie hier an]

Inhaltsverzeichnis

PDF herunterladen
Ressource anzeigen
Interessiert an mehr?

Jaap Karan Singh ist ein Secure Coding Evangelist, Chief Singh und Mitbegründer von Secure Code Warrior.

mehr erfahren

Secure Code Warrior für Ihr Unternehmen da, um Ihnen zu helfen, Code während des gesamten Softwareentwicklungszyklus zu sichern und eine Kultur zu schaffen, in der Cybersicherheit an erster Stelle steht. Ganz gleich, ob Sie AppSec-Manager, Entwickler, CISO oder jemand anderes sind, der sich mit Sicherheit befasst, wir können Ihrem Unternehmen helfen, die mit unsicherem Code verbundenen Risiken zu reduzieren.

Eine Demo buchenHerunterladen
Teilen auf:
LinkedIn-MarkenSozialx Logo
Ressourcen-Hub

Ressourcen für den Einstieg

Weitere Beiträge
Ressourcen-Hub

Ressourcen für den Einstieg

Weitere Beiträge