Az - Logic Apps Post Exploitation
Reading time: 6 minutes
tip
Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Вивчайте та практикуйте Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Підтримка HackTricks
- Перевірте плани підписки!
- Приєднуйтесь до 💬 групи Discord або групи Telegram або слідкуйте за нами в Twitter 🐦 @hacktricks_live.
- Діліться хакерськими трюками, надсилаючи PR до HackTricks та HackTricks Cloud репозиторіїв на GitHub.
Logic Apps Database Post Exploitation
Для отримання додаткової інформації про логічні програми, перегляньте:
Microsoft.Logic/workflows/read
, Microsoft.Logic/workflows/write
&& Microsoft.ManagedIdentity/userAssignedIdentities/assign/action
З цими дозволами ви можете змінювати робочі процеси Logic App і керувати їхніми ідентичностями. Зокрема, ви можете призначати або видаляти системно призначені та призначені користувачем керовані ідентичності для робочих процесів, що дозволяє Logic App автентифікуватися та отримувати доступ до інших ресурсів Azure без явних облікових даних.
az logic workflow identity remove/assign \
--name <workflow_name> \
--resource-group <resource_group_name> \
--system-assigned true \
--user-assigned "/subscriptions/<subscription_id>/resourceGroups/<resource_group>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<identity_name>"
Додатково, з Microsoft.Logic/workflows/write
ви можете змінити деякі налаштування, такі як Дозволені вхідні IP-адреси або Дні зберігання історії виконання:
az rest --method PUT \
--uri "https://management.azure.com/subscriptions/<subscription_id>/resourceGroups/<resource_group>/providers/Microsoft.Logic/workflows/<workflow_name>?api-version=2019-05-01" \
--headers "Content-Type=application/json" \
--body '{
"location": "<location>",
"properties": {
"state": "Enabled",
"definition": {
"$schema": "https://schema.management.azure.com/providers/Microsoft.Logic/schemas/2016-06-01/workflowdefinition.json#",
"contentVersion": "1.0.0.0",
"parameters": {},
"triggers": {
"<trigger_name>": {
"type": "Request",
"kind": "Http"
}
},
"actions": {},
"outputs": {}
},
"runtimeConfiguration": {
"lifetime": {
"unit": "day",
"count": <count>
}
},
"accessControl": {
"triggers": {
"allowedCallerIpAddresses": []
},
"actions": {
"allowedCallerIpAddresses": []
}
}
}
}'
Microsoft.Web/sites/read
, Microsoft.Web/sites/write
З цими дозволами ви можете створювати або оновлювати Logic Apps, розміщені на App Service Plan. Це включає зміну налаштувань, таких як увімкнення або вимкнення примусової перевірки HTTPS.
az logicapp update \
--resource-group <resource_group_name> \
--name <logic_app_name> \
--set httpsOnly=false
Microsoft.Web/sites/stop/action
, Microsoft.Web/sites/start/action
|| Microsoft.Web/sites/restart/action
З цією дозволом ви можете запускати/зупиняти/перезапускати веб-додаток, включаючи Logic Apps, розміщені на App Service Plan. Ця дія забезпечує, що раніше зупинений додаток знову запускається і відновлює свою функціональність. Це може порушити робочі процеси, викликати непередбачені операції або призвести до простою, несподівано запускаючи, зупиняючи або перезапускаючи Logic Apps.
az webapp start/stop/restart \
--name <logic_app_name> \
--resource-group <resource_group_name>
Microsoft.Web/sites/config/list/action
, Microsoft.Web/sites/read
&& Microsoft.Web/sites/config/write
З цією дозволом ви можете налаштовувати або змінювати параметри веб-додатків, включаючи Logic Apps, розміщені на App Service Plan. Це дозволяє вносити зміни в налаштування додатків, рядки підключення, конфігурації автентифікації та інше.
az logicapp config appsettings set \
--name <logic_app_name> \
--resource-group <resource_group_name> \
--settings "<key>=<value>"
Microsoft.Logic/integrationAccounts/write
З цією дозволом ви можете створювати, оновлювати або видаляти облікові записи інтеграції Azure Logic Apps. Це включає управління конфігураціями на рівні облікового запису інтеграції, такими як карти, схеми, партнери, угоди та інше.
az logic integration-account create \
--resource-group <resource_group_name> \
--name <integration_account_name> \
--location <location> \
--sku <Standard|Free> \
--state Enabled
Microsoft.Resources/subscriptions/resourcegroups/read
&& Microsoft.Logic/integrationAccounts/batchConfigurations/write
З цією дозволом ви можете створювати або змінювати конфігурації пакетів у обліковому записі інтеграції Azure Logic Apps. Конфігурації пакетів визначають, як Logic Apps обробляють і групують вхідні повідомлення для пакетної обробки.
az logic integration-account batch-configuration create \
--resource-group <resource_group_name> \
--integration-account-name <integration_account_name> \
--name <batch_configuration_name> \
--release-criteria '{
"messageCount": 100,
"batchSize": 1048576,
}'
Microsoft.Resources/subscriptions/resourcegroups/read
&& Microsoft.Logic/integrationAccounts/maps/write
З цією дозволом ви можете створювати або змінювати карти в обліковому записі інтеграції Azure Logic Apps. Карти використовуються для перетворення даних з одного формату в інший, що забезпечує безперебійну інтеграцію між різними системами та додатками.
az logic integration-account map create \
--resource-group <resource_group_name> \
--integration-account-name <integration_account_name> \
--name <map_name> \
--map-type <Xslt|Xslt20|Xslt30> \
--content-type application/xml \
--map-content map-content.xslt
Microsoft.Resources/subscriptions/resourcegroups/read
&& Microsoft.Logic/integrationAccounts/partners/write
З цією дозволом ви можете створювати або змінювати партнерів у обліковому записі інтеграції Azure Logic Apps. Партнери представляють сутності або системи, які беруть участь у бізнес-до-бізнес (B2B) робочих процесах.
az logic integration-account partner create \
--resource-group <resource_group_name> \
--integration-account-name <integration_account_name> \
--name <partner_name> \
--partner-type <partner-type> \
--content '{
"b2b": {
"businessIdentities": [
{
"qualifier": "ZZ",
"value": "TradingPartner1"
}
]
}
}'
Microsoft.Resources/subscriptions/resourcegroups/read
&& Microsoft.Logic/integrationAccounts/sessions/write
З цією дозволом ви можете створювати або змінювати сесії в обліковому записі інтеграції Azure Logic Apps. Сесії використовуються в B2B робочих процесах для групування повідомлень та відстеження пов'язаних транзакцій протягом визначеного періоду.
az logic integration-account session create \
--resource-group <resource_group_name> \
--integration-account-name <integration_account_name> \
--name <session_name> \
--content '{
"properties": {
"sessionId": "session123",
"data": {
"key1": "value1",
"key2": "value2"
}
}
}'
Microsoft.Logic/workflows/regenerateAccessKey/action
Користувачі з цим дозволом можуть регенерувати ключі доступу до Logic App, і якщо їх неправильно використовувати, це може призвести до збоїв у роботі сервісу.
az rest --method POST \
--uri "https://management.azure.com/subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.Logic/workflows/<workflow-name>/regenerateAccessKey?api-version=<api-version>" \
--body '{"keyType": "<key-type>"}' \
--headers "Content-Type=application/json"
"*/delete"
З цими правами ви можете видаляти ресурси, пов'язані з Azure Logic Apps
tip
Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Вивчайте та практикуйте Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Підтримка HackTricks
- Перевірте плани підписки!
- Приєднуйтесь до 💬 групи Discord або групи Telegram або слідкуйте за нами в Twitter 🐦 @hacktricks_live.
- Діліться хакерськими трюками, надсилаючи PR до HackTricks та HackTricks Cloud репозиторіїв на GitHub.