Erhöhen der Sicherheit nach dem Prinzip der geringsten Rechte
Zur Erhöhung der Informationssicherheit sollte Benutzern und Anwendungen gemäß dem Prinzip der geringsten Rechte nur Zugriff auf Daten und Vorgänge gewährt werden, die sie für die Ausführung ihrer Aufgaben benötigen. Befolgen Sie die folgenden Hinweise, um die Angriffsfläche einer Anwendung und die Auswirkungen einer Sicherheitsverletzung (den Auswirkungsgrad) zu verringern, falls ein solcher in einer in die Microsoft-Identitätsplattform integrierten Anwendung auftritt.
Empfehlungen auf einen Blick
- Vermeiden Sie überprivilegierte Anwendungen, indem Sie nicht verwendete und reduzierbare Berechtigungen aufheben.
- Verwenden Sie das Einwilligungsframework der Identitätsplattform, um zu verlangen, dass ein Mensch der Anforderung der Anwendung zum Zugriff auf geschützte Daten zustimmt.
- Wenden Sie das Prinzip der geringsten Rechte beim Erstellen von Anwendungen in allen Entwicklungsphasen an.
- Überwachen Sie die bereitgestellten Anwendungen in regelmäßigen Abständen, um die überprivilegierten Anwendungen zu identifizieren.
Überprivilegierte Anwendungen
Eine Anwendung wird als „überprivilegiert“ bezeichnet, wenn sie über nicht verwendete oder reduzierbare Berechtigungen verfügt. Durch nicht verwendete und reduzierbare Berechtigungen kann es zu nicht autorisiertem oder unbeabsichtigtem Zugriff auf Daten oder Vorgänge kommen, der für die Ausführung der Aufgaben einer Anwendung oder ihrer Benutzer nicht erforderlich ist. Vermeiden Sie Sicherheitsrisiken, die durch nicht verwendete und reduzierbare Berechtigungen entstehen, indem Sie nur die entsprechenden Berechtigungen erteilen. Die geeigneten Berechtigungen sind diejenigen mit dem Zugriff mit geringsten Rechten, den eine Anwendung oder ein Benutzer benötigt, um erforderliche Aufgaben zu erfüllen.
Nicht verwendete Berechtigungen
Eine nicht verwendete Berechtigung ist eine Berechtigung, die einer Anwendung gewährt wurde, deren API oder Vorgang, die durch diese Berechtigung offengelegt wird, jedoch nicht von der Anwendung aufgerufen wird, wenn sie wie vorgesehen verwendet wird.
Beispiel: Eine Anwendung zeigt eine Liste von Dateien an, die im OneDrive-Speicher des angemeldeten Benutzers gespeichert sind. Dies geschieht durch Aufrufen der Microsoft Graph-API mithilfe der Berechtigung Files.Read. Der Anwendung wurde jedoch auch die Berechtigung Calendars.Read erteilt, obwohl sie keine Kalenderfeatures bereitstellt und die Kalender-API nicht aufruft.
Sicherheitsrisiko: Nicht verwendete Berechtigungen stellen ein Sicherheitsrisiko im Bereich der horizontalen Rechteausweitung dar. Eine Entität, die ein Sicherheitsrisiko in der Anwendung ausnutzt, könnte über eine nicht verwendete Berechtigung Zugriff auf eine API bzw. einen Vorgang erhalten, der bei beabsichtigter Verwendung von der Anwendung weder unterstützt noch zugelassen wird.
Abhilfe: Entfernen Sie alle Berechtigungen, die nicht in API-Aufrufen der Anwendung verwendet werden.
Reduzierbare Berechtigungen
Eine reduzierbare Berechtigung weist eine Entsprechung mit niedrigeren Berechtigungen auf, die der Anwendung und deren Benutzern dennoch den Zugriff bereitstellt, der für die Ausführung der jeweiligen Aufgaben erforderlich ist.
Beispiel: Eine Anwendung zeigt die Profilinformationen des angemeldeten Benutzers durch Aufrufen der Microsoft Graph-API an. Die Profilbearbeitung wird jedoch nicht unterstützt. Der Anwendung wurde jedoch die Berechtigung User.ReadWrite.All erteilt. Hier wird die Berechtigung User.ReadWrite.All als reduzierbar angesehen, da die Berechtigung User.Read.All ausreicht, um schreibgeschützten Zugriff auf die Profildaten des Benutzers zu gewähren.
Sicherheitsrisiko: Reduzierbare Berechtigungen stellen ein Sicherheitsrisiko im Bereich der vertikalen Rechteausweitung dar. Eine Entität, die ein Sicherheitsrisiko in der Anwendung ausnutzt, könnte über eine reduzierbare Berechtigung nicht autorisierten Zugriff auf Daten erhalten bzw. Vorgänge ausführen, die normalerweise nicht Teil der Rolle der Entität sind.
Abhilfe: Ersetzen Sie alle reduzierbaren Berechtigungen in der Anwendung durch die jeweilige Entsprechung mit den geringstmöglichen Berechtigungen, die für die Ausführung der gewünschten Funktionen der Anwendung ausreichen.
Steuern des Datenzugriffs mithilfe von Einwilligung
Die meisten Anwendungen benötigen Zugriff auf geschützte Daten, zu dem der Besitzer der Daten seine Einwilligung zu diesem Zugriff geben muss. Eine Einwilligung kann auf unterschiedliche Weise erteilt werden. Dies kann etwa durch einen Mandantenadministrator erfolgen, der allen Benutzern in einem Microsoft Entra-Mandanten eine Zugriffsberechtigung erteilen kann, oder durch die Benutzer der Anwendung selbst.
Wann immer eine Anwendung, die auf einem Gerät ausgeführt wird, den Zugriff auf geschützte Daten anfordert, sollte die Anwendung die Einwilligung des Benutzers einholen, bevor sie den Zugriff auf die geschützten Daten gewährt. Der Benutzer muss die Einwilligung für die angeforderte Berechtigung erteilen (oder verweigern), bevor die Anwendung fortfahren kann.
Prinzip der geringsten Rechte bei der Anwendungsentwicklung
Die Sicherheit einer Anwendung und der Benutzerdaten, auf die sie zugreift, liegt in der Verantwortung des Entwicklers.
Halten Sie sich bei der Entwicklung von Anwendungen an diese Richtlinien, um zu vermeiden, dass sie überprivilegiert werden:
- Machen Sie sich vollumfänglich mit den Berechtigungen vertraut, die für die API-Aufrufe der Anwendung erforderlich sind.
- Identifizieren Sie mithilfe des Graph-Explorers die jeweils geringstmögliche Berechtigung für einen erforderlichen API-Aufruf der Anwendung.
- Ermitteln Sie die entsprechenden Berechtigungen aufsteigend nach dem Berechtigungsumfang.
- Entfernen Sie alle doppelten Berechtigungen, wenn die Anwendung API-Aufrufe mit überlappenden Berechtigungen ausführt.
- Nutzen Sie für die Anwendung nur die geringsten Berechtigungen, indem Sie in der Berechtigungsliste jeweils die geringstmögliche Berechtigung auswählen.
Prinzip der geringsten Rechte für bereitgestellte Anwendungen
Häufig schrecken Organisationen davor zurück, bereits ausgeführte Anwendungen zu ändern, um Auswirkungen auf den laufenden Geschäftsbetrieb zu vermeiden. Eine Organisation sollte dennoch abwägen, ob das Risiko eines Sicherheitsincidents, der durch die Verwendung überprivilegierter Berechtigungen ermöglicht oder verschlimmert wird, eine geplante Aktualisierung der Anwendung nicht aufwiegt.
Stellen Sie mithilfe der folgenden Standardmethoden sicher, dass bereitgestellte Anwendungen in einer Organisation nicht überprivilegiert sind oder es im Laufe der Zeit werden:
- Werten Sie die von den Anwendungen ausgeführten API-Aufrufe aus.
- Ermitteln Sie mithilfe des Graph-Explorers und der Microsoft Graph-Dokumentation die erforderlichen und geringstmöglichen Berechtigungen.
- Überwachen Sie die Berechtigungen, die Benutzern oder Anwendungen erteilt werden.
- Aktualisieren Sie die Anwendungen, damit diese die geringstmöglichen Berechtigungen aufweisen.
- Überprüfen Sie die Berechtigungen regelmäßig, um sicherzustellen, dass alle autorisierten Berechtigungen weiterhin relevant sind.