Az - Basic Information

Erlernen Sie das Hacken von AWS von Grund auf mit htARTE (HackTricks AWS Red Team Expert)!

Andere Möglichkeiten, HackTricks zu unterstützen:

Organisationshierarchie

Verwaltungsgruppen

Wenn Ihre Organisation viele Azure-Abonnements hat, benötigen Sie möglicherweise eine Möglichkeit, den Zugriff, Richtlinien und die Einhaltung dieser Abonnements effizient zu verwalten. Verwaltungsgruppen bieten einen Governance-Bereich über Abonnements.

Beachten Sie, dass in einem einzigen Verzeichnis 10.000 Verwaltungsgruppen unterstützt werden können und ein Verwaltungsgruppenbaum bis zu sechs Ebenen Tiefe unterstützen kann.

Aus den Dokumenten: Jedes Verzeichnis erhält eine einzige oberste Verwaltungsgruppe namens Root-Verwaltungsgruppe. Die Root-Verwaltungsgruppe ist in die Hierarchie integriert, um alle Verwaltungsgruppen und Abonnements zusammenzufassen. Diese Root-Verwaltungsgruppe ermöglicht die Anwendung von globalen Richtlinien und Azure-Rollenzuweisungen auf Verzeichnisebene. Der Azure AD **Global Administrator muss sich selbst erhöhen zur Benutzerzugriffsadministratorrolle dieser Root-Gruppe zuerst. Nach der Erhöhung des Zugriffs kann der Administrator jedem Azure-Benutzer oder -Gruppe eine Azure-Rolle zuweisen, um die Hierarchie zu verwalten. Als Administrator können Sie Ihr eigenes Konto als Besitzer der Root-Verwaltungsgruppe festlegen.

Die Root-Verwaltungsgruppe kann nicht verschoben oder gelöscht werden, im Gegensatz zu anderen Verwaltungsgruppen.

Verwaltungsgruppen bieten Ihnen ein Management auf Unternehmensebene in großem Maßstab, unabhängig von der Art der Abonnements, die Sie möglicherweise haben. Alle Abonnements innerhalb einer einzigen Verwaltungsgruppe müssen jedoch dem gleichen Azure Active Directory (Azure AD) Mandanten vertrauen.

Azure-Abonnements

In Azure dient ein Abonnement als logischer Container zum Zweck der Bereitstellung von geschäftlichen oder technischen Ressourcen. Dieser Container enthält die Details von Ressourcen wie virtuelle Maschinen (VMs), Datenbanken und andere. Bei der Erstellung einer Azure-Ressource, wie einer VM, wird das damit verbundene Abonnement angegeben. Diese Struktur erleichtert die Delegation von Zugriffen unter Verwendung von rollenbasierten Zugriffskontrollmechanismen.

Ressourcengruppen

Aus den Dokumenten: Eine Ressourcengruppe ist ein Container, der zusammenhängende Ressourcen für eine Azure-Lösung enthält. Die Ressourcengruppe kann alle Ressourcen für die Lösung enthalten oder nur die Ressourcen, die Sie als Gruppe verwalten möchten. Fügen Sie im Allgemeinen Ressourcen, die den gleichen Lebenszyklus teilen, der gleichen Ressourcengruppe hinzu, damit Sie sie leicht als Gruppe bereitstellen, aktualisieren und löschen können.

Alle Ressourcen müssen innerhalb einer Ressourcengruppe liegen und können nur zu einer Gruppe gehören. Wenn eine Ressourcengruppe gelöscht wird, werden auch alle darin enthaltenen Ressourcen gelöscht.

Administrativgruppen

Aus den Dokumenten: Administrativgruppen ermöglichen es Ihnen, Ihre Organisation in beliebige Einheiten zu unterteilen, und dann spezifische Administratoren zuzuweisen, die nur die Mitglieder dieser Einheit verwalten können. Sie könnten beispielsweise Administrativgruppen verwenden, um Berechtigungen an Administratoren jeder Fakultät an einer großen Universität zu delegieren, damit sie den Zugriff steuern, Benutzer verwalten und Richtlinien nur in der Fakultät für Ingenieurwissenschaften festlegen können.

Nur Benutzer, Gruppen und Geräte können Mitglieder einer Administrativgruppe sein.

Daher wird eine Administrativgruppe einige Mitglieder enthalten und anderen Prinzipalen werden Berechtigungen über diese administrativen Einheit zugewiesen, die sie verwenden können, um die Mitglieder der administrativen Einheit zu verwalten.

Azure vs Azure AD vs Azure AD-Domänendienste

Es ist wichtig zu beachten, dass Azure AD ein Dienst innerhalb von Azure ist. Azure ist Microsofts Cloud-Plattform, während Azure AD ein Unternehmens-Identitätsdienst in Azure ist. Darüber hinaus ist Azure AD nicht wie Windows Active Directory, es handelt sich um einen Identitätsdienst, der auf eine völlig andere Weise funktioniert. Wenn Sie einen Domänencontroller in Azure für Ihre Windows Active Directory-Umgebung ausführen möchten, müssen Sie Azure AD-Domänendienste verwenden.

Prinzipale

Azure unterstützt verschiedene Arten von Prinzipalen:

  • Benutzer: Eine reguläre Person mit Anmeldeinformationen zum Zugriff.

  • Gruppe: Eine Gruppe von Prinzipalen, die gemeinsam verwaltet werden. Berechtigungen, die Gruppen erteilt werden, werden von ihren Mitgliedern geerbt.

  • Dienstprinzipal/Unternehmensanwendungen: Es handelt sich um eine Identität, die für die Verwendung mit Anwendungen, gehosteten Diensten und automatisierten Tools zum Zugriff auf Azure-Ressourcen erstellt wurde. Dieser Zugriff ist durch die zugewiesenen Rollen eingeschränkt, wodurch Sie die Kontrolle darüber haben, auf welche Ressourcen zugegriffen werden kann und auf welcher Ebene. Aus Sicherheitsgründen wird immer empfohlen, Dienstprinzipale mit automatisierten Tools zu verwenden, anstatt ihnen das Einloggen mit einer Benutzeridentität zu ermöglichen.

Beim Erstellen eines Dienstprinzips können Sie zwischen Passwortauthentifizierung oder Zertifikatauthentifizierung wählen.

  • Wenn Sie die Passwort-Authentifizierung wählen (standardmäßig), speichern Sie das generierte Passwort, da Sie nicht mehr darauf zugreifen können.

  • Wenn Sie die Zertifikatauthentifizierung wählen, stellen Sie sicher, dass die Anwendung Zugriff auf den privaten Schlüssel hat.

  • Verwaltete Identität (Metadatenanmeldeinformationen): Verwaltete Identitäten in Azure Active Directory bieten eine Lösung für das automatische Verwalten der Identität von Anwendungen. Diese Identitäten werden von Anwendungen genutzt, um eine Verbindung zu Ressourcen herzustellen, die mit der Azure Active Directory (Azure AD) Authentifizierung kompatibel sind. Durch die Verwendung von verwalteten Identitäten können Anwendungen Azure AD-Token sicher speichern, ohne direkt mit Anmeldeinformationen umgehen zu müssen. Es gibt zwei Arten von verwalteten Identitäten:

  • Systemzuweisung. Einige Azure-Dienste ermöglichen es Ihnen, eine verwaltete Identität direkt auf einer Dienstinstanz zu aktivieren. Wenn Sie eine systemzuwiesene verwaltete Identität aktivieren, wird eine Identität in Azure AD erstellt. Die Identität ist an den Lebenszyklus dieser Dienstinstanz gebunden. Wenn die Ressource gelöscht wird, löscht Azure automatisch die Identität für Sie. Nur diese Azure-Ressource kann diese Identität verwenden, um Token von Azure AD anzufordern.

  • Benutzerzuweisung. Sie können auch eine verwaltete Identität als eigenständige Azure-Ressource erstellen. Sie können eine benutzerzuwiesene verwaltete Identität erstellen und sie einer oder mehreren Instanzen eines Azure-Dienstes (mehrere Ressourcen) zuweisen. Für benutzerzuwiesene verwaltete Identitäten wird die Identität separat von den Ressourcen verwaltet, die sie verwenden.

Rollen & Berechtigungen

Rollen werden Prinzipalen auf einem Bereich zugewiesen: Prinzipal -[HAT ROLLE]->(Bereich)

Rollen, die an Gruppen zugewiesen sind, werden von allen Mitgliedern der Gruppe vererbt.

Je nachdem, auf welchem Bereich die Rolle zugewiesen wurde, kann die Rolle auf andere Ressourcen innerhalb des Bereichscontainers vererbt werden. Wenn beispielsweise ein Benutzer A eine Rolle auf das Abonnement hat, wird er diese Rolle auf alle Ressourcengruppen im Abonnement und auf alle Ressourcen innerhalb der Ressourcengruppe haben.

Klassische Rollen

Besitzer

  • Voller Zugriff auf alle Ressourcen

  • Kann den Zugriff für andere Benutzer verwalten

Alle Arten von Ressourcen

Mitwirkender

  • Voller Zugriff auf alle Ressourcen

  • Kann den Zugriff nicht verwalten

Alle Arten von Ressourcen

Leser

• Alle Ressourcen anzeigen

Alle Arten von Ressourcen

Benutzerzugriffsadministrator

  • Alle Ressourcen anzeigen

  • Kann den Zugriff für andere Benutzer verwalten

Alle Arten von Ressourcen

Eingebaute Rollen

Aus den Dokumenten: Azure rollenbasierte Zugriffssteuerung (Azure RBAC) verfügt über mehrere Azure eingebaute Rollen, die Sie Benutzern, Gruppen, Dienstprinzipalen und verwalteten Identitäten zuweisen können. Rollenzuweisungen sind der Weg, wie Sie den Zugriff auf Azure-Ressourcen steuern. Wenn die eingebauten Rollen nicht den spezifischen Anforderungen Ihrer Organisation entsprechen, können Sie Ihre eigenen Azure-Benutzerdefinierten Rollen** erstellen**.

Eingebaute Rollen gelten nur für die Ressourcen, für die sie vorgesehen sind. Überprüfen Sie beispielsweise diese 2 Beispiele von eingebauten Rollen über Compute-Ressourcen:

Ermöglicht die Berechtigung zum Durchführen eines Datenträgerbackups im Backup-Tresor.

3e5e47e6-65f7-47ef-90b5-e5dd4d455f24

Anzeigen von virtuellen Maschinen im Portal und Anmelden als regulärer Benutzer.

fb879df8-f326-4884-b1cf-06f3ad86be52

Diese Rollen können auch über Logikcontainer (wie Verwaltungsgruppen, Abonnements und Ressourcengruppen) zugewiesen werden, und die betroffenen Prinzipale haben sie über die Ressourcen innerhalb dieser Container.

Benutzerdefinierte Rollen

Azure ermöglicht auch die Erstellung von benutzerdefinierten Rollen mit den Berechtigungen, die der Benutzer benötigt.

Berechtigung verweigert

  • Damit ein Prinzipal Zugriff auf eine Ressource hat, benötigt er eine explizite Rolle, die ihm (auf irgendeine Weise) diese Berechtigung gewährt.

  • Eine explizite Verweigerungsrollenzuweisung hat Vorrang vor der Rolle, die die Berechtigung gewährt.

Globaler Administrator

Benutzer mit der Rolle des Globalen Administrators haben die Möglichkeit, sich zum Benutzerzugriffsadministrator der Azure-Rolle in der Stammverwaltungsgruppe 'hochzustufen'. Dies bedeutet, dass ein Globaler Administrator in der Lage sein wird, den Zugriff auf alle Azure-Abonnements und Verwaltungsgruppen zu verwalten. Diese Hochstufung kann am Ende der Seite durchgeführt werden: https://portal.azure.com/#view/Microsoft_AAD_IAM/ActiveDirectoryMenuBlade/~/Properties

Azure-Richtlinien

Azure-Richtlinien sind eine Reihe von Regeln und Vorschriften in Microsoft Azure, einem Cloud-Computing-Dienst, die dabei helfen, organisatorische Standards zu verwalten und durchzusetzen sowie die Einhaltung im großen Maßstab zu bewerten. Diese Richtlinien setzen verschiedene Regeln über Ihre Azure-Ressourcen durch, um sicherzustellen, dass diese Ressourcen mit den Unternehmensstandards und Service Level Agreements konform bleiben.

Azure-Richtlinien sind entscheidend für die Cloud-Governance und Sicherheit, um sicherzustellen, dass Ressourcen ordnungsgemäß und effizient genutzt werden und dass sie externen Vorschriften und internen Richtlinien entsprechen. Einige Beispiele:

  1. Sicherstellung der Einhaltung bestimmter Azure-Regionen: Diese Richtlinie stellt sicher, dass alle Ressourcen in bestimmten Azure-Regionen bereitgestellt werden. Beispielsweise möchte ein Unternehmen sicherstellen, dass alle seine Daten in Europa gespeichert sind, um die DSGVO-Konformität zu gewährleisten.

  2. Durchsetzung von Namensstandards: Richtlinien können Namenskonventionen für Azure-Ressourcen durchsetzen. Dies hilft bei der Organisation und der einfachen Identifizierung von Ressourcen anhand ihrer Namen, was in großen Umgebungen hilfreich ist.

  3. Einschränkung bestimmter Ressourcentypen: Diese Richtlinie kann die Erstellung bestimmter Arten von Ressourcen einschränken. Beispielsweise könnte eine Richtlinie festgelegt werden, um die Erstellung teurer Ressourcentypen wie bestimmter VM-Größen zu verhindern, um die Kosten zu kontrollieren.

  4. Durchsetzung von Tagging-Richtlinien: Tags sind Schlüssel-Wert-Paare, die mit Azure-Ressourcen verbunden sind und für das Ressourcenmanagement verwendet werden. Richtlinien können durchsetzen, dass bestimmte Tags vorhanden sein müssen oder bestimmte Werte für alle Ressourcen haben müssen. Dies ist nützlich für die Kostenverfolgung, Eigentum oder Kategorisierung von Ressourcen.

  5. Beschränkung des öffentlichen Zugriffs auf Ressourcen: Richtlinien können durchsetzen, dass bestimmte Ressourcen wie Speicherkonten oder Datenbanken keine öffentlichen Endpunkte haben, um sicherzustellen, dass sie nur innerhalb des Netzwerks der Organisation zugänglich sind.

  6. Automatische Anwendung von Sicherheitseinstellungen: Richtlinien können verwendet werden, um automatisch Sicherheitseinstellungen auf Ressourcen anzuwenden, z. B. das Anwenden einer bestimmten Netzwerksicherheitsgruppe auf alle VMs oder das Sicherstellen, dass alle Speicherkonten Verschlüsselung verwenden.

Beachten Sie, dass Azure-Richtlinien an jedem Level der Azure-Hierarchie angehängt werden können, aber sie werden üblicherweise in der Stammverwaltungsgruppe oder in anderen Verwaltungsgruppen verwendet.

Berechtigungsbereich

In Azure können Berechtigungen einem beliebigen Teil der Hierarchie zugewiesen werden. Dazu gehören Verwaltungsgruppen, Abonnements, Ressourcengruppen und einzelne Ressourcen. Berechtigungen werden von enthaltenen Ressourcen der Entität, an der sie zugewiesen wurden, vererbt.

Diese hierarchische Struktur ermöglicht eine effiziente und skalierbare Verwaltung von Zugriffsberechtigungen.

Azure RBAC vs ABAC

RBAC (rollenbasierte Zugriffssteuerung) ist das, was wir bereits in den vorherigen Abschnitten gesehen haben: Zuweisen einer Rolle an einen Prinzipal, um ihm Zugriff zu gewähren. In einigen Fällen möchten Sie jedoch eine feiner abgestimmte Zugriffsverwaltung bereitstellen oder die Verwaltung von Hunderten von Rollenzuweisungen vereinfachen.

Azure ABAC (attributbasierte Zugriffssteuerung) baut auf Azure RBAC auf, indem Rollenzuweisungsbedingungen basierend auf Attributen im Kontext spezifischer Aktionen hinzugefügt werden. Eine Rollenzuweisungsbedingung ist eine zusätzliche Überprüfung, die Sie optional zu Ihrer Rollenzuweisung hinzufügen können, um eine feiner abgestimmte Zugriffssteuerung bereitzustellen. Eine Bedingung filtert die gewährten Berechtigungen als Teil der Rollendefinition und Rollenzuweisung herunter. Beispielsweise können Sie eine Bedingung hinzufügen, die erfordert, dass ein Objekt ein bestimmtes Tag haben muss, um das Objekt lesen zu können. Sie können keinen Zugriff auf bestimmte Ressourcen mithilfe von Bedingungen explizit verweigern.

Standardbenutzerberechtigungen

Ein Standardbenutzer hat einige Standardberechtigungen, um einige Teile von AzureAD aufzulisten:

  • Lesen aller Benutzer, Gruppen, Anwendungen, Geräte, Rollen, Abonnements und ihrer öffentlichen Eigenschaften

  • Gäste einladen (kann deaktiviert werden)

  • Sicherheitsgruppen erstellen

  • Lesen von nicht versteckten Gruppenmitgliedschaften

  • Gäste zu eigenen Gruppen hinzufügen

  • Neue Anwendung erstellen (kann deaktiviert werden)

  • Bis zu 50 Geräte zu Azure hinzufügen (kann deaktiviert werden)

Die vollständige Liste der Standardberechtigungen von Benutzern finden Sie in der Dokumentation. Beachten Sie außerdem, dass in dieser Liste auch die Standardberechtigungsliste für Gäste enthalten ist.

Denken Sie daran, dass der Benutzer eine explizite Genehmigung der Berechtigung benötigt, um Azure-Ressourcen aufzulisten.

Privileged Identity Management (PIM)

Privileged Identity Management (PIM) in Azure ist ein Tool, das den privilegierten Zugriff in Azure Active Directory und Azure verwaltet, steuert und überwacht. Es verbessert die Sicherheit, indem es zeitlich begrenzten privilegierten Zugriff bietet, Genehmigungsworkflows durchsetzt und zusätzliche Authentifizierung erfordert. Dieser Ansatz minimiert das Risiko eines unbefugten Zugriffs, indem sichergestellt wird, dass erhöhte Berechtigungen nur gewährt werden, wenn sie erforderlich sind und für eine bestimmte Dauer gelten.

Authentifizierungstoken

Es gibt drei Arten von Tokens, die in OIDC verwendet werden:

  • Zugriffstoken: Der Client präsentiert dieses Token dem Ressourcenserver, um Ressourcen abzurufen. Es kann nur für eine bestimmte Kombination von Benutzer, Client und Ressource verwendet werden und kann nicht widerrufen werden, bis es abläuft - standardmäßig nach 1 Stunde. Die Erkennung ist bei der Verwendung dieses Tokens gering.

  • ID-Token: Der Client erhält dieses Token vom Autorisierungsserver. Es enthält grundlegende Informationen über den Benutzer. Es ist an eine bestimmte Kombination von Benutzer und Client gebunden.

  • Auffrischungstoken: Wird dem Client mit dem Zugriffstoken bereitgestellt. Wird verwendet, um neue Zugriffs- und ID-Tokens zu erhalten. Es ist an eine bestimmte Kombination von Benutzer und Client gebunden und kann widerrufen werden. Die Standardablaufzeit beträgt 90 Tage für inaktive Auffrischungstoken und kein Ablauf für aktive Tokens.

Informationen für bedingten Zugriff werden im JWT gespeichert. Wenn Sie also das Token von einer erlaubten IP-Adresse anfordern, wird diese IP-Adresse im Token gespeichert und Sie können dann dieses Token von einer nicht erlaubten IP-Adresse aus verwenden, um auf die Ressourcen zuzugreifen.

Überprüfen Sie die folgende Seite, um verschiedene Möglichkeiten zu erlernen, Zugriffstoken anzufordern und sich damit anzumelden:

pageAz - AzureAD (AAD)

Die häufigsten API-Endpunkte sind:

  • Azure Resource Manager (ARM): management.azure.com

  • Microsoft Graph: graph.microsoft.com (Azure AD Graph, der veraltet ist, ist graph.windows.net)

Referenzen

Last updated