Az - Automation Account
Last updated
Last updated
Apprenez et pratiquez le hacking AWS :HackTricks Training AWS Red Team Expert (ARTE) Apprenez et pratiquez le hacking GCP : HackTricks Training GCP Red Team Expert (GRTE)
Dans la documentation : Azure Automation fournit un service d'automatisation basé sur le cloud, des mises à jour du système d'exploitation et de configuration qui prend en charge une gestion cohérente dans vos environnements Azure et non-Azure. Il comprend l'automatisation des processus, la gestion de la configuration, la gestion des mises à jour, des capacités partagées et des fonctionnalités hétérogènes.
Ce sont comme des "tâches planifiées" dans Azure qui vous permettront d'exécuter des choses (actions ou même scripts) pour gérer, vérifier et configurer l'environnement Azure.
Lorsque le Compte d'exécution est utilisé, il crée une application Azure AD avec un certificat auto-signé, crée un principal de service et attribue le rôle de Contributeur pour le compte dans la souscription actuelle (beaucoup de privilèges). Microsoft recommande d'utiliser une Identité gérée pour le Compte d'automatisation.
Cela sera supprimé le 30 septembre 2023 et remplacé par des Identités gérées.
Les Runbooks vous permettent d'exécuter du code PowerShell arbitraire. Cela pourrait être abusé par un attaquant pour voler les permissions du principal attaché (le cas échéant). Dans le code des Runbooks, vous pourriez également trouver des informations sensibles (comme des identifiants).
Si vous pouvez lire les jobs, faites-le car ils contiennent la sortie de l'exécution (potentielles informations sensibles).
Allez à Automation Accounts
--> <Select Automation Account>
--> Runbooks/Jobs/Hybrid worker groups/Watcher tasks/credentials/variables/certificates/connections
Un Runbook peut être exécuté dans un conteneur à l'intérieur d'Azure ou dans un Travailleur hybride (machine non-Azure). L'Agent Log Analytics est déployé sur la VM pour l'enregistrer en tant que travailleur hybride. Les jobs de travailleur hybride s'exécutent en tant que SYSTEM sur Windows et en tant que compte nxautomation sur Linux. Chaque Travailleur hybride est enregistré dans un Groupe de travailleurs hybrides.
Par conséquent, si vous pouvez choisir d'exécuter un Runbook dans un Travailleur hybride Windows, vous exécuterez des commandes arbitraires à l'intérieur d'une machine externe en tant que Système (technique de pivotement intéressante).
Dans la documentation : Azure Automation State Configuration est un service de gestion de configuration Azure qui vous permet d'écrire, de gérer et de compiler des configurations PowerShell Desired State Configuration (DSC) configurations pour des nœuds dans n'importe quel cloud ou centre de données sur site. Le service importe également des ressources DSC et attribue des configurations aux nœuds cibles, le tout dans le cloud. Vous pouvez accéder à la configuration d'état Azure Automation dans le portail Azure en sélectionnant Configuration d'état (DSC) sous Gestion de la configuration.
Des informations sensibles pourraient être trouvées dans ces configurations.
Il est possible d'abuser de SC pour exécuter des scripts arbitraires sur les machines gérées.
Vous pourriez faire la même chose en modifiant un Run Book existant, et depuis la console web.
Action Requise : Créer un nouveau Compte d'Automatisation.
Paramètre Spécifique : Assurez-vous que "Créer un compte Azure Run As" est activé.
Source : Téléchargez le runbook d'exemple depuis le Dépôt GitHub MicroBurst.
Actions Requises :
Importez le runbook dans le Compte d'Automatisation.
Publiez le runbook pour le rendre exécutable.
Attachez un webhook au runbook, permettant des déclencheurs externes.
Action Requise : Ajoutez le module AzureAD au Compte d'Automatisation.
Étape Supplémentaire : Assurez-vous que tous les Modules d'Automatisation Azure sont mis à jour vers leurs dernières versions.
Rôles à Attribuer :
Administrateur Utilisateur
Propriétaire de l'Abonnement
Cible : Attribuez ces rôles au Compte d'Automatisation pour les privilèges nécessaires.
Remarque : Soyez conscient que la configuration d'une telle automatisation pourrait entraîner une perte de contrôle sur l'abonnement.
Déclenchez le webhook pour créer un nouvel utilisateur en envoyant une requête POST.
Utilisez le script PowerShell fourni, en veillant à remplacer le $uri
par votre véritable URL de webhook et à mettre à jour le $AccountInfo
avec le nom d'utilisateur et le mot de passe souhaités.
Apprenez et pratiquez le hacking AWS :HackTricks Training AWS Red Team Expert (ARTE) Apprenez et pratiquez le hacking GCP : HackTricks Training GCP Red Team Expert (GRTE)