Acceso anónimo
Storage Accounts / Cuentas de almacenamiento
Las cuentas de almacenamiento (Storage Accounts) cuentan con tres niveles de acceso:
Private
Sin acceso público de lectura
Requiere autorización de acceso al contenedor y sus blobs. Es la opción predeterminada de los nuevos contenedores.
Blob
Acceso público de lectura sólo para blobs
Es posible acceder al contenedor de forma anónima, pero no es posible acceder a los datos sin autorización.
Container
Acceso público de lectura para el contenedor y sus blobs
Es posible acceder al contenedor y sus blobs de forma anónima, pero no se puede acceder a la configuración de permisos ni metadatos del contenedor.
Ejemplo de una cuenta de almacenamiento:
http://<storage-account>.blob.core.windows.net/<container-name>/<file-name>
Se pueden enumerar los Blobs disponibles con la herramienta MicroBurst:
. C:\AzAD\Tools\MicroBurst\Misc\Invoke-EnumerateAzureBlobs.ps1
También se pueden enumerar los Blobs con:
BlobHunter: https://github.com/cyberark/BlobHunter
Para enumerar las cuentas de almacenamiento:
az storage account list
Para comprobar si un contenedor cuenta con acceso anónimo:
$rgName = "<resource-group>"
$accountName = "<storage-account>"
$storageAccount = Get-AzStorageAccount -ResourceGroupName $rgName -Name $accountName
$ctx = $storageAccount.Context
Get-AzStorageContainer -Context $ctx | Select Name, PublicAccess
Con la herramienta Azure Storage se puede realizar la conexión de forma cómoda y fiable (vía web no siempre se puede acceder correctamente):

Para configurar el acceso anónimo, se pueden seguir las indicaciones que se encuentran en la página oficial de Microsoft: https://learn.microsoft.com/en-us/azure/storage/blobs/anonymous-read-access-configure?tabs=portal#set-the-public-access-level-for-a-container
Key Vaults / Almacenes de claves
Si el los Key Vaults cuentan con acceso anónimo, podría llegar a accederse a la información confidencial que almacenan, como: secretos, credenciales, etc.
Obtener KeyVault:
Get-AzKeyVault
Mostrar información de un KeyVault:
Get-AzKeyVaultSecret -VaultName ResearchKeyVault
Obtener credenciales en texto plano:
Get-AzKeyVaultSecret -VaultName ResearchKeyVault -Name Reader –AsPlainText
Posteriormente podríamos intentar iniciar sesión en el servicio, cuenta, sistema, etc. del cuál hayamos obtenido credenciales.
Por ejemplo:
Si se trata de una cuenta de Azure:
$password = ConvertTo-SecureString '<contraseña>' -AsPlainText -Force
$creds = New-Object System.Management.Automation.PSCredential('<email>', $password)
Connect-AzAccount -Credential $creds
Última actualización
¿Te fue útil?