Az - Logic Apps Post Exploitation

Tip

Apprenez & pratiquez AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Apprenez & pratiquez GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Apprenez & pratiquez Az Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Soutenez HackTricks

Logic Apps Database Post Exploitation

Pour plus d’informations sur les applications logiques, consultez :

Az - Logic Apps

Microsoft.Logic/workflows/read, Microsoft.Logic/workflows/write && Microsoft.ManagedIdentity/userAssignedIdentities/assign/action

Avec ces autorisations, vous pouvez modifier les workflows des applications logiques et gĂ©rer leurs identitĂ©s. Plus prĂ©cisĂ©ment, vous pouvez attribuer ou supprimer des identitĂ©s gĂ©rĂ©es assignĂ©es par le systĂšme et par l’utilisateur aux workflows, ce qui permet Ă  l’application logique de s’authentifier et d’accĂ©der Ă  d’autres ressources Azure sans identifiants explicites.

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>"

De plus, avec juste Microsoft.Logic/workflows/write, vous pouvez modifier certaines configurations telles que les adresses IP entrantes autorisĂ©es ou les jours de conservation de l’historique d’exĂ©cution :

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

Avec ces autorisations, vous pouvez crĂ©er ou mettre Ă  jour des Logic Apps hĂ©bergĂ©es sur un App Service Plan. Cela inclut la modification des paramĂštres tels que l’activation ou la dĂ©sactivation de l’application de 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

Avec cette autorisation, vous pouvez dĂ©marrer/arrĂȘter/redĂ©marrer une application web, y compris les Logic Apps hĂ©bergĂ©es sur un App Service Plan. Cette action garantit qu’une application prĂ©cĂ©demment arrĂȘtĂ©e est remise en ligne et reprend sa fonctionnalitĂ©. Cela peut perturber les flux de travail, dĂ©clencher des opĂ©rations non intentionnelles ou provoquer des temps d’arrĂȘt en dĂ©marrant, arrĂȘtant ou redĂ©marrant des Logic Apps de maniĂšre inattendue.

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

Avec cette autorisation, vous pouvez configurer ou modifier les paramĂštres des applications web, y compris les Logic Apps hĂ©bergĂ©es sur un App Service Plan. Cela permet de modifier les paramĂštres de l’application, les chaĂźnes de connexion, les configurations d’authentification, et plus encore.

az logicapp config appsettings set \
--name <logic_app_name> \
--resource-group <resource_group_name> \
--settings "<key>=<value>"

Microsoft.Logic/integrationAccounts/write

Avec cette autorisation, vous pouvez crĂ©er, mettre Ă  jour ou supprimer des comptes d’intĂ©gration Azure Logic Apps. Cela inclut la gestion des configurations au niveau du compte d’intĂ©gration telles que les cartes, les schĂ©mas, les partenaires, les accords, et plus encore.

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

Avec cette autorisation, vous pouvez crĂ©er ou modifier des configurations de lot au sein d’un compte d’intĂ©gration Azure Logic Apps. Les configurations de lot dĂ©finissent comment Logic Apps traitent et regroupent les messages entrants pour le traitement par lots.

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

Avec cette autorisation, vous pouvez crĂ©er ou modifier des cartes au sein d’un compte d’intĂ©gration Azure Logic Apps. Les cartes sont utilisĂ©es pour transformer des donnĂ©es d’un format Ă  un autre, permettant une intĂ©gration transparente entre diffĂ©rents systĂšmes et applications.

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

Avec cette autorisation, vous pouvez crĂ©er ou modifier des partenaires dans un compte d’intĂ©gration Azure Logic Apps. Les partenaires reprĂ©sentent des entitĂ©s ou des systĂšmes qui participent Ă  des flux de travail interentreprises (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

Avec cette autorisation, vous pouvez crĂ©er ou modifier des sessions au sein d’un compte d’intĂ©gration Azure Logic Apps. Les sessions sont utilisĂ©es dans les flux de travail B2B pour regrouper les messages et suivre les transactions connexes sur une pĂ©riode dĂ©finie.

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

Les utilisateurs ayant cette autorisation peuvent rĂ©gĂ©nĂ©rer les clĂ©s d’accĂšs de l’application Logic, et en cas de mauvaise utilisation, cela peut entraĂźner des interruptions de service.

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”

Avec ces autorisations, vous pouvez supprimer des ressources liées à Azure Logic Apps

Tip

Apprenez & pratiquez AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Apprenez & pratiquez GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Apprenez & pratiquez Az Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Soutenez HackTricks