Azure AD

Rôles

Azure RBAC: contrôle les accès aux ressources. (machines virtuelles, vaults, BDD...)

Azure AD: Définit les accès au sein de la hiérarchie de l'Active Directory.

Hiérarchie

Azure fournit quatre niveaux de gestion:

  • Les groupes de gestion facilitent l'accès et la gestion des politiques pour les abonnements.

  • Les abonnements peuvent être utilisés pour gérer les coûts, associer un compte utilisateur aux ressources qu'ils ont créées et définir des quotas de ressources.

  • Les groupes de ressources sont des conteneurs logiques dans lesquels nous pouvons déployer et gérer plusieurs ressources Azure telles que des machines virtuelles, des bases de données, etc.

  • Les ressources sont les services sous-jacents que vous pouvez créer (VM, Web Apps, bases de données, etc.)

Les ressources sont gérables grâce à l'Azure Resource Manager.

Principaux de sécurité

Un principal de sécurité est un objet qui représente:

  • un utilisateur

  • ou un groupe

  • ou un service principale

  • ou une identité managé

La cause principale qui conduit à compromettre un environnement Azure est une mauvaise configuration. C'est la raison pour laquelle une compréhension préalable approfondie du fonctionnement d'Azure est une exigence pour tout administrateur ou propriétaire Azure chargé de modifier ou d'attribuer des autorisations, mais également pour les utilisateurs qui peuvent apporter des modifications à des ressources telles que les contributeurs.

Moyens d'interactions

Il y a 5 façons d'interagir avec Azure:

  • Portail Azure.

  • Azure Shell – ligne de commande disponible dans le portail Azure.

  • Azure CLI – outil de ligne de commande disponible pour Windows et Linux pour la gestion des ressources Azure.

  • Modules PowerShell – les modules Az et AzureAD PowerShell offrent un ensemble d'applets de commande pour gérer les ressources Azure directement à partir de PowerShell.

  • API Azure REST - un ensemble de points de terminaison d'API qui peuvent être utilisés pour effectuer des opérations sur les identités et les ressources.

Vérifier si une entreprise utilise un Azure AD

https://login.microsoftonline.com/getuserrealm.srf?login=username@<entreprise>.onmicrosoft.com&xml=1

Si le <NameSpaceType> indique "Managed" l'entreprise utilise probablement Azure AD.

Reconnaissance externe

Offensive-Azure

Collection d'outils offensifs ciblant Microsoft Azure

Ressource: https://github.com/blacklanternsecurity/offensive-azure

vérification des emails internes

  • lister les emails internes avec hunter.io, LinkedInt...

  • Utiliser l'outil o365creeper pour lister les emails valides.

Exemple d'utilisation:

$ o365creeper.py -f emails.txt

ressource: https://github.com/LMGsec/o365creeper

Mots de passe faibles

Tester des mots de passe faible avec MailSniper

PS C:\> Import-Module MailSniper.ps1

PS C:\> Invoke-PasswordSprayEWS -ExchHostname outlook.office365.com -UserList emails.txt -Password <password>

Il convient de noter que les fonctionnalités de sécurité par défaut ou de politiques d'accès conditionnel empêchent de telles attaques. De plus, ils produisent de nombreux journaux "Échec de connexion" dans Azure AD et sont facilement reconnaissables. Les utilisateurs dont le mot de passe a été découvert de cette manière sont très visibles, grâce à ces journaux, disponibles dans le menu de connexion Azure AD

Reconnaissance interne

ROADtools

ROADtools est un framework de reconnaissance d'Azure AD.

Exemple d'utilisation:

$ roadrecon auth -u <email>
Password:
Tokens were written to .roadtools_auth

$ roadrecon dump

$ roadrecon-gui -debug -d ./roadrecon.db
 * Serving Flask app "roadtools.roadrecon.server" (lazy loading)
 * Environment: production
   WARNING: This is a development server. Do not use it in a production deployment.
   Use a production WSGI server instead.
 * Debug mode: off
 * Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)

L'interface utilisateur Web permet de parcourir toutes les données proposées par l'API Microsoft Graph de manière très efficace.

ressource: https://github.com/dirkjanm/ROADtools

Dernière mise à jour