Az - Logic Apps Post Exploitation

Tip

Μάθετε & εξασκηθείτε στο AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Μάθετε & εξασκηθείτε στο GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Μάθετε & εξασκηθείτε στο Az Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Υποστηρίξτε το HackTricks

Logic Apps Database Post Exploitation

Για περισσότερες πληροφορίες σχετικά με τις λογικές εφαρμογές, ελέγξτε:

Az - Logic Apps

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. Αυτή η ενέργεια διασφαλίζει ότι μια προηγουμένως σταματημένη εφαρμογή επανέρχεται online και επαναλαμβάνει τη λειτουργικότητά της. Αυτό μπορεί να διαταράξει τις ροές εργασίας, να προκαλέσει μη προγραμματισμένες λειτουργίες ή να προκαλέσει διακοπή λειτουργίας ξεκινώντας, σταματώντας ή επανεκκινώντας τις 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)
Μάθετε & εξασκηθείτε στο Az Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Υποστηρίξτε το HackTricks