AzureAD
Permite administrar Azure AD. Los módulos de PowerShell de Azure AD y MSOnline están en desuso a partir del 30 de marzo de 2024. La opción alternativa y actualizada es Microsoft Graph PowerShell.
Instalación
AzureAD
Install-Module AzureAD
Import-Module C:\Pentest\Tools\AzureAD\AzureAD.psd1AzureADPreview
Install-Module AzureADPreviewConexión
Una vez se hayan obtenido credenciales válidas, se podría utilizar la herramienta de AzureAD para conectarse al Tenant y enumerar información haciendo uso de la sesión del usuario.
Popup
Connect-AzureADAccount Environment TenantId TenantDomain AccountType
------- ----------- -------- ------------ -----------
[email protected] AzureCloud 11081700-e4e1-4313-bf78-41fae513bbe6 xtormincorp.com UserLínea de comandos
$passwd = ConvertTo-SecureString "<password>" -AsPlainText -Force
$creds = New-Object System.Management.Automation.PSCredential("<email>", $passwd)
Connect-AzureAD -Credential $credsToken
Conexión con información del access token, tenantId y accountId:
Connect-AzureAD -AadAccessToken <JWT> -TenantId "1d50cb29-5f5b-48a4-87ce-fe75a941adb6" -AccountId "f66e433c-bd01-4b0b-b3b7-7cd749fd45f3"Información general
Sesión actual
Get-AzureADCurrentSessionInfoAccount Environment TenantId TenantDomain AccountType
------- ----------- -------- ------------ -----------
[email protected] AzureCloud 11081700-e4e1-4313-bf78-41fae513bbe6 xtormincorp.com UserTenant
Get-AzureADTenantDetailObjectId DisplayName VerifiedDomain
-------- ----------- --------------
11081700-e4e1-4313-bf78-41fae513bbe6 Xtormin Corp. xtormincorp.comUsuarios
Todos los usuarios:
Get-AzureADUser -All $trueObjectId DisplayName UserPrincipalName UserType
-------- ----------- ----------------- --------
04ee91f2-4cd2-456c-b546-9f6401b08de4 Jennifer Torres [email protected] Member
[...]Un usuario en concreto:
Get-AzureADUser -ObjectId [email protected]Buscar todos los usuarios que contengan la cadena "admin" en el DisplayName:
Get-AzureADUser -All $true | ?{$_.Displayname -match "admin"}Obtener todos los atributos de un usuario:
Get-AzureADUser -ObjectId [email protected] | fl *Listado de atributos del usuario:
Get-AzureADUser -ObjectId [email protected] | %{$_.PSObject.Properties.Name}Buscar los atributos de los usuarios que contengan la cadena "password":
Get-AzureADUser -All $true | %{$Properties = $_;$Properties.PSObject.Properties.Name | % {if ($Properties.$_ -match 'password') {"$($Properties.UserPrincipalName) - $_ - $($Properties.$_)"}}}Todos los usuarios que se han sincronizado desde un AD on-premise: Es útil para obtener la lista de usuarios principales de la organización ya que no muestra los usuarios externos.
Get-AzureADUser -All $true | ?{$_.OnPremisesSecurityIdentifier -ne $null}Todos los usuarios de AzureAD: Es útil para obtener una lista con los usuarios creados en AzureAD y obtener los usuarios externos.
Get-AzureADUser -All $true | ?{$_.OnPremisesSecurityIdentifier -eq $null}Lista de todos los objetos creados por los todos usuarios:
Get-AzureADUser | Get-AzureADUserCreatedObjectLista de todos los objetos creados por un usuario:
Get-AzureADUserOwnedObject -ObjectIdGrupos
Todos los grupos:
Get-AzureADGroup -All $trueDetalles de un grupo en concreto:
Get-AzureADGroup -ObjectId 7c63dd47-91ed-45c4-9081-427ad616347fBuscar grupos que empiecen por una cadena (por ejemplo: admin):
Get-AzureADGroup -SearchString "admin" | fl *Buscar grupos que contengan una cadena (por ejemplo: admin):
Get-AzureADGroup -All $true |?{$_.Displayname -match "admin"}Buscar grupos que permitan "DynamicMembership":
Get-AzureADMSGroup | ?{$_.GroupTypes -eq 'DynamicMembership'}Todos los grupos que se han sincronizado desde on-prem:
Get-AzureADGroup -All $true | ?{$_.OnPremisesSecurityIdentifier -ne $null}Todos los grupos de AzureAD:
Get-AzureADGroup -All $true | ?{$_.OnPremisesSecurityIdentifier -eq $null}Obtener los miembros de un grupo:
Get-AzureADGroupMember -ObjectId 7c63dd47-98ed-45c4-9081-427ad616347fObtener grupos y roles donde el usuario es miembro:
Get-AzureADUser -SearchString 'test' | Get-AzureADUserMembership
Get-AzureADUserMembership -ObjectId [email protected]Roles
Obtener todas las plantillas de roles disponibles:
Get-AzureADDirectoryroleTemplateObtener todos los roles habilitados (han sido asignados al menos a un usuario):
Get-AzureADDirectoryRoleObtener usuarios asignados a un rol:
Get-AzureADDirectoryRole -Filter "DisplayName eq 'Global Administrator'" | Get-AzureADDirectoryRoleMemberDispositivos
Obtener todos los dispositivos registrados y unidos a azure:
Get-AzureADDevice -All $true | fl *Obtener el objeto de configuración de dispositivos:
Get-AzureADDeviceConfiguration | fl *Obtener todos los dispositivos activos:
Get-AzureADDevice -All $true | ?{$_.ApproximateLastLogonTimeStamp -ne $null}Obtener los propietarios registrados:
Get-AzureADDevice -All $true | Get-AzureADDeviceRegisteredOwner
Get-AzureADDevice -All $true | %{if($user=Get-AzureADDeviceRegisteredOwner -ObjectId $_.ObjectID){$_;$user.UserPrincipalName;"`n"}}Obtener los usuarios registrados:
Get-AzureADDevice -All $true | Get-AzureADDeviceRegisteredUser
Get-AzureADDevice -All $true | %{if($user=Get-AzureADDeviceRegisteredUser -ObjectId $_.ObjectID){$_;$user.UserPrincipalName;"`n"}}Dispositivos propiedad de un usuario:
Get-AzureADUserOwnedDevice -ObjectId [email protected]Dispositivos registrados por un usuario:
Get-AzureADUserRegisteredDevice -ObjectId [email protected]Dispositivos administrados por Intune:
Get-AzureADDevice -All $true | ?{$_.IsCompliant -eq "True"}Aplicaciones
Obtener todos los objetos de aplicaciones registradas en el tenant actual:
Get-AzureADApplication -All $trueObtener los detalles de una aplicación:
Get-AzureADApplication -ObjectId fa656d62-b53a-431d-b40c-b0a8757892d2 | fl *Obtener una aplicación según su "Display Name":
Get-AzureADApplication -All $true | ?{$_.DisplayName -match "app"}Obtener las aplicaciones que cuentan con contraseña:
Get-AzureADApplication -All $true | %{if(Get-AzureADApplicationPasswordCredential -ObjectID $_.ObjectID){$_}}Obtener el owner de una aplicación:
Get-AzureADApplication -ObjectId fa656d61-b55a-431d-b44c-b0a8658897d2 | Get-AzureADApplicationOwner |fl *Obtener las aplicaciones donde el usuario tiene un rol asignado:
Get-AzureADUser -ObjectId [email protected] | Get-AzureADUserAppRoleAssignment | fl *Obtener las aplicaciones donde un grupo tiene un rol asignado:
Get-AzureADGroup -ObjectId 54787e13-4374-4b05-85a1-5cfe4b3ddc98 | Get-AzureADGroupAppRoleAssignment | fl *Service Principals
Obtener todos los Service Principals:
Get-AzureADServicePrincipal -All $trueObtener todos los detalles de un Service Principal:
Get-AzureADServicePrincipal -ObjectId ff2612c5-7168-4fed-b571-2f7c5c31b066 | fl *Obtener todos los detalles según su Display Name:
Get-AzureADServicePrincipal -All $true | ?{$_.DisplayName -match "app"}Obtener todos los Service Principals que requieren contraseña:
Get-AzureADServicePrincipal -All $true | %{if(Get-AzureADServicePrincipalKeyCredential -ObjectID $_.ObjectID){$_}}Obtener propietario de un Service Principal:
Get-AzureADServicePrincipal -ObjectId 60a70e2b-c1bd-453b-928e-f7398ebe3660 | Get-AzureADServicePrincipalOwner |fl *Obtener los objetos que son propietarios de un Service Principal:
Get-AzureADServicePrincipal -ObjectId ff1601c6-7368-7fed-b672-2f7c5c31b066 | Get-AzureADServicePrincipalOwnedObjectObjetos creados por un Service Principal:
Get-AzureADServicePrincipal -ObjectId f5ac063d-7ddc-3e7c-aabc-f135b00a972c | Get-AzureADServicePrincipalCreatedObjectObtener grupo y roles de un Service Principal:
Get-AzureADServicePrincipal -ObjectId f4ac083d-7ddc-3e7c-aabc-f231b00a972c | Get-AzureADServicePrincipalMembership |fl *Última actualización
¿Te fue útil?