Translated ['src/pentesting-cloud/azure-security/az-privilege-escalation

This commit is contained in:
Translator
2025-02-08 13:48:14 +00:00
parent 6714f78ae7
commit c563a34162
@@ -12,7 +12,7 @@
### Microsoft.Storage/storageAccounts/listkeys/action
具有此权限的主体将能够列出(以及访问密钥的秘密值)存储帐户的**访问密钥**。 这允许主体提升其在存储帐户上的权限。
具有此权限的主体将能够列出(以及访问密钥的秘密值)存储帐户的**访问密钥**。这允许主体提升其在存储帐户上的权限。
```bash
az storage account keys list --account-name <acc-name>
```
@@ -41,7 +41,7 @@ az storage account update --name <acc-name> --add networkRuleSet.ipRules value=<
第一个权限允许**修改容器中的不可变性策略**,第二个权限允许删除它们。
> [!NOTE]
> 请注意,如果不可变性策略处于锁定状态,无法执行这两项操作。
> 请注意,如果不可变性策略处于锁定状态,无法执行这两项操作。
```bash
az storage container immutability-policy delete \
--account-name <STORAGE_ACCOUNT_NAME> \
@@ -70,7 +70,7 @@ az storage container immutability-policy update \
### Microsoft.Storage/storageAccounts/localusers/write (Microsoft.Storage/storageAccounts/localusers/read)
拥有此权限的攻击者可以为 Azure 存储帐户(配置为层次命名空间)创建和更新新本地用户(如果拥有 `Microsoft.Storage/storageAccounts/localusers/read` 权限),包括指定用户的权限和主目录。此权限非常重要,因为它允许攻击者授予自己特定权限的存储帐户,例如读取(r)、写入(w)、删除(d)和列出(l)等。此外,使用的身份验证方法可以是 Azure 生成的密码和 SSH 密钥对。没有检查用户是否已存在,因此您可以覆盖已经存在的其他用户。攻击者可以提升他们的权限并获得对存储帐户的 SSH 访问权限,可能会暴露或危害敏感数据。
拥有此权限的攻击者可以为 Azure 存储帐户(配置了分层命名空间)创建和更新(如果拥有 `Microsoft.Storage/storageAccounts/localusers/read` 权限)新的本地用户,包括指定用户的权限和主目录。此权限非常重要,因为它允许攻击者以特定权限(如读取(r)、写入(w)、删除(d)和列出(l)等)授予自己对存储帐户的访问。此外,使用的身份验证方法可以是 Azure 生成的密码和 SSH 密钥对。没有检查用户是否已存在,因此您可以覆盖已经存在的其他用户。攻击者可以提升他们的权限并获得对存储帐户的 SSH 访问权限,可能会暴露或危害敏感数据。
```bash
az storage account local-user create \
--account-name <STORAGE_ACCOUNT_NAME> \
@@ -82,16 +82,16 @@ az storage account local-user create \
```
### Microsoft.Storage/storageAccounts/localusers/regeneratePassword/action
通过此权限,攻击者可以 Azure Storage 账户中本地用户重新生成密码。这使攻击者能够获取该用户的新身份验证凭据(例如 SSH 或 SFTP 密码)。通过利用这些凭据,攻击者可能会获得对存储户的未经授权访问,执行文件传输或操纵存储容器中的数据。这可能导致数据泄露、损坏或恶意修改存储户内容。
通过此权限,攻击者可以重新生成 Azure 存储帐户中本地用户密码。这使攻击者能够获取该用户的新身份验证凭据(例如 SSH 或 SFTP 密码)。通过利用这些凭据,攻击者可能会获得对存储户的未经授权访问,执行文件传输或操纵存储容器中的数据。这可能导致数据泄露、损坏或恶意修改存储户内容。
```bash
az storage account local-user regenerate-password \
--account-name <STORAGE_ACCOUNT_NAME> \
--resource-group <RESOURCE_GROUP_NAME> \
--name <LOCAL_USER_NAME>
```
要通过 SFTP 使用本地用户访问 Azure Blob Storage,您可以(您也可以使用 ssh 密钥进行连接):
要通过 SFTP 访问 Azure Blob Storageis_hns_enabled 应为 true),您可以使用本地用户通过 SFTP 进行连接(您也可以使用 ssh 密钥进行连接):
```bash
sftp <local-user-name>@<storage-account-name>.blob.core.windows.net
sftp <storage-account-name>.<local-user-name>@<storage-account-name>.blob.core.windows.net
#regenerated-password
```
### Microsoft.Storage/storageAccounts/restoreBlobRanges/action, Microsoft.Storage/storageAccounts/blobServices/containers/read, Microsoft.Storage/storageAccounts/read && Microsoft.Storage/storageAccounts/listKeys/action
@@ -112,7 +112,7 @@ az storage blob undelete \
```
### Microsoft.Storage/storageAccounts/fileServices/shares/restore/action && Microsoft.Storage/storageAccounts/read
通过这些权限,攻击者可以通过指定已删除版本 ID 来恢复已删除的 Azure 文件共享。这种权限提升可能允许攻击者恢复本应永久删除的敏感数据,从而可能导致未经授权的访问。
通过这些权限,攻击者可以通过指定已删除版本 ID 来恢复已删除的 Azure 文件共享。权限提升可能允许攻击者恢复本应永久删除的敏感数据,从而可能导致未经授权的访问。
```bash
az storage share-rm restore \
--storage-account <STORAGE_ACCOUNT_NAME> \