Translated ['src/pentesting-cloud/azure-security/README.md', 'src/pentes

This commit is contained in:
Translator
2025-02-07 00:05:07 +00:00
parent b735f8a77d
commit 3eab4df2fe
2 changed files with 74 additions and 49 deletions

View File

@@ -4,7 +4,7 @@
## Basic Information
Μάθετε τα βασικά για το Azure και το Entra ID στην παρακάτω σελίδα:
Μάθετε τα βασικά του Azure και του Entra ID στην παρακάτω σελίδα:
{{#ref}}
az-basic-information/
@@ -36,14 +36,14 @@ az-unauthenticated-enum-and-initial-entry/
- [Phishing με Κωδικό Συσκευής](az-unauthenticated-enum-and-initial-entry/az-device-code-authentication-phishing.md)
- 3rd parties **breached**
- Ευπάθειες σε εφαρμογές που φιλοξενούνται στο Azure
- [**Server Side Request Forgery**](https://book.hacktricks.wiki/en/pentesting-web/ssrf-server-side-request-forgery/cloud-ssrf.html) με πρόσβαση στο metadata endpoint
- **Subdomain takeovers** όπως στο [https://godiego.co/posts/STO-Azure/](https://godiego.co/posts/STO-Azure/)
- [**Server Side Request Forgery**](https://book.hacktricks.wiki/en/pentesting-web/ssrf-server-side-request-forgery/cloud-ssrf.html) με πρόσβαση στο endpoint μεταδεδομένων
- **Αναλήψεις υποτομέων** όπως στο [https://godiego.co/posts/STO-Azure/](https://godiego.co/posts/STO-Azure/)
- **Άλλες κακορυθμίσεις υπηρεσιών Azure**
- Αν κάποιο laptop προγραμματιστή έχει συμβιβαστεί ([WinPEAS και LinPEAS](https://github.com/peass-ng/PEASS-ng) μπορούν να βρουν αυτές τις πληροφορίες):
- Μέσα στο **`<HOME>/.Azure`**
- **`azureProfile.json`** περιέχει πληροφορίες σχετικά με τους συνδεδεμένους χρήστες από το παρελθόν
- **`clouds.config` περιέχει** πληροφορίες σχετικά με τις συνδρομές
- **`service_principal_entries.json`** περιέχει credentials εφαρμογών (tenant id, clients και secret). Μόνο σε Linux & macOS
- **`service_principal_entries.json`** περιέχει τα credentials των εφαρμογών (tenant id, clients και secret). Μόνο σε Linux & macOS
- **`msal_token_cache.json`** περιέχει access tokens και refresh tokens. Μόνο σε Linux & macOS
- **`service_principal_entries.bin`** και msal_token_cache.bin χρησιμοποιούνται σε Windows και είναι κρυπτογραφημένα με DPAPI
- **`msal_http_cache.bin`** είναι μια cache HTTP αιτημάτων
@@ -52,7 +52,7 @@ az-unauthenticated-enum-and-initial-entry/
- Μέσα στο **`C:\Users\<username>\AppData\Local\Microsoft\IdentityCache\*`** υπάρχουν διάφορα αρχεία `.bin` με **access tokens**, ID tokens και πληροφορίες λογαριασμού κρυπτογραφημένα με το DPAPI των χρηστών.
- Είναι δυνατόν να βρείτε περισσότερα **access tokens** στα αρχεία `.tbres` μέσα στο **`C:\Users\<username>\AppData\Local\Microsoft\TokenBroken\Cache\`** που περιέχουν ένα base64 κρυπτογραφημένο με DPAPI με access tokens.
- Σε Linux και macOS μπορείτε να αποκτήσετε **access tokens, refresh tokens και id tokens** από το Az PowerShell (αν χρησιμοποιείται) εκτελώντας `pwsh -Command "Save-AzContext -Path /tmp/az-context.json"`
- Σε Windows αυτό απλώς δημιουργεί id tokens.
- Σε Windows αυτό απλά δημιουργεί id tokens.
- Είναι δυνατόν να δείτε αν χρησιμοποιήθηκε το Az PowerShell σε Linux και macOS ελέγχοντας αν υπάρχει το `$HOME/.local/share/.IdentityService/` (αν και τα περιεχόμενα αρχεία είναι κενά και άχρηστα)
Βρείτε **άλλες κακορυθμίσεις υπηρεσιών Azure** που μπορούν να οδηγήσουν σε ένα foothold στην παρακάτω σελίδα:
@@ -80,7 +80,7 @@ az-enumeration-tools.md
- **IP whitelisting** -- Πρέπει να συμβιβάσετε μια έγκυρη IP
- **Geo restrictions** -- Βρείτε πού ζει ο χρήστης ή πού βρίσκονται τα γραφεία της εταιρείας και αποκτήστε μια IP από την ίδια πόλη (ή τουλάχιστον από τη χώρα)
- **Browser** -- Ίσως μόνο ένας browser από ορισμένα OS (Windows, Linux, Mac, Android, iOS) να επιτρέπεται. Ανακαλύψτε ποιο OS χρησιμοποιεί το θύμα/εταιρεία.
- **Browser** -- Ίσως μόνο ένας browser από ορισμένα OS (Windows, Linux, Mac, Android, iOS) είναι επιτρεπτός. Ανακαλύψτε ποιο OS χρησιμοποιεί το θύμα/εταιρεία.
- Μπορείτε επίσης να προσπαθήσετε να **συμβιβάσετε τα credentials του Service Principal** καθώς συνήθως είναι λιγότερο περιορισμένα και η σύνδεσή τους ελέγχεται λιγότερο
Αφού παρακάμψετε αυτό, μπορεί να είστε σε θέση να επιστρέψετε στην αρχική σας ρύθμιση και θα έχετε ακόμα πρόσβαση.
@@ -143,14 +143,14 @@ Get-AzureADTenantDetail
### Entra ID Enumeration & Privesc
Από προεπιλογή, οποιοσδήποτε χρήστης θα πρέπει να έχει **αρκετές άδειες για να καταγράψει** πράγματα όπως χρήστες, ομάδες, ρόλους, υπηρεσιακούς κύριους... (ελέγξτε [default AzureAD permissions](az-basic-information/index.html#default-user-permissions)).\
Από προεπιλογή, οποιοσδήποτε χρήστης θα πρέπει να έχει **αρκετά δικαιώματα για να καταγράψει** πράγματα όπως χρήστες, ομάδες, ρόλους, υπηρεσιακούς κύριους... (ελέγξτε [default AzureAD permissions](az-basic-information/index.html#default-user-permissions)).\
Μπορείτε να βρείτε εδώ έναν οδηγό:
{{#ref}}
az-services/az-azuread.md
{{#endref}}
Ελέγξτε τα **Post-Exploitation tools** για να βρείτε εργαλεία για την κλιμάκωση των δικαιωμάτων στο Entra ID όπως το **AzureHound:**
Ελέγξτε τα **Post-Exploitation tools** για να βρείτε εργαλεία για την κλιμάκωση δικαιωμάτων στο Entra ID όπως το **AzureHound:**
{{#ref}}
az-enumeration-tools.md#automated-post-exploitation-tools
@@ -161,54 +161,71 @@ az-enumeration-tools.md#automated-post-exploitation-tools
Μόλις γνωρίζετε ποιος είστε, μπορείτε να αρχίσετε να καταγράφετε τις **υπηρεσίες Azure στις οποίες έχετε πρόσβαση**.
Πρέπει να αρχίσετε να ανακαλύπτετε τις **άδειες που έχετε** πάνω στους πόρους. Για αυτό:
Πρέπει να αρχίσετε να ανακαλύπτετε τα **δικαιώματα που έχετε** πάνω στους πόρους. Για αυτό:
1. **Βρείτε τον πόρο στον οποίο έχετε κάποια πρόσβαση**:
Η εντολή Az PowerShell **`Get-AzResource`** σας επιτρέπει να **γνωρίζετε τους πόρους στους οποίους έχει ο τρέχων χρήστης ορατότητα**.
Επιπλέον, μπορείτε να αποκτήσετε τις ίδιες πληροφορίες στην **ιστοσελίδα** πηγαίνοντας στο [https://portal.azure.com/#view/HubsExtension/BrowseAll](https://portal.azure.com/#view/HubsExtension/BrowseAll) ή αναζητώντας "Όλοι οι πόροι" ή εκτελώντας: `az rest --method GET --url "https://management.azure.com/subscriptions/<subscription-id>/resources?api-version=2021-04-01"`
Η εντολή Az PowerShell **`Get-AzResource`** σας επιτρέπει να **γνωρίζετε τους πόρους που έχει ο τρέχων χρήστης σας ορατούς**.
Επιπλέον, μπορείτε να αποκτήσετε τις ίδιες πληροφορίες στην **ιστοσελίδα** πηγαίνοντας στο [https://portal.azure.com/#view/HubsExtension/BrowseAll](https://portal.azure.com/#view/HubsExtension/BrowseAll) ή αναζητώντας "Όλοι οι πόροι" ή εκτελώντας:
```bash
az rest --method GET --url "https://management.azure.com/subscriptions/<subscription-id>/resources?api-version=2021-04-01"
```
2. **Βρείτε τις άδειες που έχετε πάνω στους πόρους στους οποίους έχετε πρόσβαση και βρείτε τους ρόλους που σας έχουν ανατεθεί**:
Σημειώστε ότι χρειάζεστε την άδεια **`Microsoft.Authorization/roleAssignments/read`** για να εκτελέσετε αυτήν την ενέργεια.
Σημειώστε ότι χρειάζεστε την άδεια **`Microsoft.Authorization/roleAssignments/read`** για να εκτελέσετε αυτή την ενέργεια.
Επιπλέον, με αρκετές άδειες, ο ρόλος **`Get-AzRoleAssignment`** μπορεί να χρησιμοποιηθεί για να **καταγράψει όλους τους ρόλους** στην υπογραφή ή την άδεια πάνω σε έναν συγκεκριμένο πόρο υποδεικνύοντάς τον όπως σε: **`Get-AzRoleAssignment -Scope /subscriptions/9291ff6e-6afb-430e-82a4-6f04b2d05c7f/resourceGroups/Resource_Group_1/providers/Microsoft.RecoveryServices/vaults/vault-m3ww8ut4`**.
Είναι επίσης δυνατό να αποκτήσετε αυτές τις πληροφορίες εκτελώντας **`az rest --method GET --uri "https://management.azure.com/<Scope>/providers/Microsoft.Authorization/roleAssignments?api-version=2020-08-01-preview" | jq ".value"`** όπως σε:
- **`az rest --method GET --uri "https://management.azure.com//subscriptions/9291ff6e-6afb-430e-82a4-6f04b2d05c7f/resourceGroups/Resource_Group_1/providers/Microsoft.KeyVault/vaults/vault-m3ww8ut4/providers/Microsoft.Authorization/roleAssignments?api-version=2020-08-01-preview" | jq ".value"`**
3. **Βρείτε τις λεπτομερείς άδειες των ρόλων που σας έχουν ανατεθεί**:
Επιπλέον, με αρκετές άδειες, ο ρόλος **`Get-AzRoleAssignment`** μπορεί να χρησιμοποιηθεί για να **καταγράψει όλους τους ρόλους** στην υπογραφή ή την άδεια πάνω σε έναν συγκεκριμένο πόρο υποδεικνύοντάς τον όπως παρακάτω:
```bash
Get-AzRoleAssignment -Scope /subscriptions/<subscription-id>/resourceGroups/Resource_Group_1/providers/Microsoft.RecoveryServices/vaults/vault-m3ww8ut4
```
Είναι επίσης δυνατό να αποκτήσετε αυτές τις πληροφορίες εκτελώντας:
```bash
az rest --method GET --uri "https://management.azure.com/<Scope>/providers/Microsoft.Authorization/roleAssignments?api-version=2020-08-01-preview" | jq ".value"
```
όπως στο:
```bash
az rest --method GET --uri "https://management.azure.com//subscriptions/<subscription-id>/resourceGroups/Resource_Group_1/providers/Microsoft.KeyVault/vaults/vault-m3ww8ut4/providers/Microsoft.Authorization/roleAssignments?api-version=2020-08-01-preview" | jq ".value"
```
Μια άλλη επιλογή είναι να αποκτήσετε τους ρόλους που είναι συνδεδεμένοι σε εσάς στο azure με:
```bash
az role assignment list --assignee "<email>" --all --output table
```
Ή εκτελώντας το παρακάτω (Εάν τα αποτελέσματα είναι κενά, μπορεί να είναι επειδή δεν έχετε την άδεια να τα αποκτήσετε):
```bash
az rest --method GET --uri 'https://management.azure.com/subscriptions/<subscription-id>/providers/Microsoft.Authorization/roleAssignments?api-version=2022-04-01&$filter=principalId eq '<user-id>'
```
3. **Βρείτε τις λεπτομερείς άδειες των ρόλων που είναι συνδεδεμένοι σε εσάς**:
Στη συνέχεια, για να αποκτήσετε την λεπτομερή άδεια μπορείτε να εκτελέσετε **`(Get-AzRoleDefinition -Id "<RoleDefinitionId>").Actions`**.
Ή να καλέσετε την API απευθείας με **`az rest --method GET --uri "https://management.azure.com//subscriptions/<subscription-id>/providers/Microsoft.Authorization/roleDefinitions/<RoleDefinitionId>?api-version=2020-08-01-preview" | jq ".properties"`**.
Στην επόμενη ενότητα μπορείτε να βρείτε **πληροφορίες σχετικά με τις πιο κοινές υπηρεσίες Azure και πώς να τις καταγράψετε**:
Ή να καλέσετε την API απευθείας με
```bash
az rest --method GET --uri "https://management.azure.com//subscriptions/<subscription-id>/providers/Microsoft.Authorization/roleDefinitions/<RoleDefinitionId>?api-version=2020-08-01-preview" | jq ".properties"
```
Στην παρακάτω ενότητα μπορείτε να βρείτε **πληροφορίες σχετικά με τις πιο κοινές υπηρεσίες Azure και πώς να τις καταγράψετε**:
{{#ref}}
az-services/
{{#endref}}
### Privilege Escalation, Post-Exploitation & Persistence
### Κλιμάκωση Δικαιωμάτων, Μετά-Εκμετάλλευση & Διαρκής Παρουσία
Μόλις γνωρίζετε πώς είναι δομημένο το περιβάλλον Azure και ποιες υπηρεσίες χρησιμοποιούνται, μπορείτε να αρχίσετε να αναζητάτε τρόπους για να **κλιμακώσετε τα δικαιώματα, να μετακινηθείτε οριζόντια, να εκτελέσετε άλλες επιθέσεις post-exploitation και να διατηρήσετε την επιμονή**.
Μόλις γνωρίζετε πώς είναι δομημένο το περιβάλλον Azure και ποιες υπηρεσίες χρησιμοποιούνται, μπορείτε να αρχίσετε να αναζητάτε τρόπους για να **κλιμακώσετε τα δικαιώματα, να μετακινηθείτε οριζόντια, να εκτελέσετε άλλες επιθέσεις μετά-εκμετάλλευσης και να διατηρήσετε τη διαρκή παρουσία**.
Στην επόμενη ενότητα μπορείτε να βρείτε πληροφορίες σχετικά με το πώς να κλιμακώσετε τα δικαιώματα στις πιο κοινές υπηρεσίες Azure:
Στην παρακάτω ενότητα μπορείτε να βρείτε πληροφορίες σχετικά με το πώς να κλιμακώσετε τα δικαιώματα στις πιο κοινές υπηρεσίες Azure:
{{#ref}}
az-privilege-escalation/
{{#endref}}
Στην επόμενη μπορείτε να βρείτε πληροφορίες σχετικά με το πώς να εκτελέσετε επιθέσεις post-exploitation στις πιο κοινές υπηρεσίες Azure:
Στην επόμενη μπορείτε να βρείτε πληροφορίες σχετικά με το πώς να εκτελέσετε επιθέσεις μετά-εκμετάλλευσης στις πιο κοινές υπηρεσίες Azure:
{{#ref}}
az-post-exploitation/
{{#endref}}
Στην επόμενη μπορείτε να βρείτε πληροφορίες σχετικά με το πώς να διατηρήσετε την επιμονή στις πιο κοινές υπηρεσίες Azure:
Στην επόμενη μπορείτε να βρείτε πληροφορίες σχετικά με το πώς να διατηρήσετε τη διαρκή παρουσία στις πιο κοινές υπηρεσίες Azure:
{{#ref}}
az-persistence/

View File

@@ -1,65 +1,73 @@
# Az - Πολιτικές Προσβάσεως με Όρους & Παράκαμψη MFA
# Az - Πολιτικές Προσβασιμότητας & Παράκαμψη MFA
{{#include ../../../../banners/hacktricks-training.md}}
## Βασικές Πληροφορίες
Οι πολιτικές προσβάσεως με όρους του Azure είναι κανόνες που έχουν ρυθμιστεί στο Microsoft Azure για την επιβολή ελέγχων πρόσβασης σε υπηρεσίες και εφαρμογές του Azure με βάση ορισμένες **συνθήκες**. Αυτές οι πολιτικές βοηθούν τους οργανισμούς να ασφαλίσουν τους πόρους τους εφαρμόζοντας τους κατάλληλους ελέγχους πρόσβασης υπό τις κατάλληλες συνθήκες.\
Οι πολιτικές προσβάσεως με όρους βασικά **καθορίζουν** **Ποιος** μπορεί να έχει πρόσβαση σε **Τι** από **Που** και **Πως**.
Οι πολιτικές προσβασιμότητας του Azure είναι κανόνες που έχουν ρυθμιστεί στο Microsoft Azure για την επιβολή ελέγχων πρόσβασης σε υπηρεσίες και εφαρμογές του Azure με βάση ορισμένες **συνθήκες**. Αυτές οι πολιτικές βοηθούν τους οργανισμούς να ασφαλίσουν τους πόρους τους εφαρμόζοντας τους σωστούς ελέγχους πρόσβασης υπό τις σωστές συνθήκες.\
Οι πολιτικές προσβασιμότητας βασικά **ορίζουν** **Ποιος** μπορεί να έχει πρόσβαση **Σε Τι** από **Που** και **Πως**.
Ακολουθούν μερικά παραδείγματα:
1. **Πολιτική Κινδύνου Σύνδεσης**: Αυτή η πολιτική θα μπορούσε να ρυθμιστεί ώστε να απαιτεί πολυπαραγοντική αυθεντικοποίηση (MFA) όταν ανιχνεύεται κίνδυνος σύνδεσης. Για παράδειγμα, αν η συμπεριφορά σύνδεσης ενός χρήστη είναι ασυνήθιστη σε σύγκριση με το κανονικό του μοτίβο, όπως η σύνδεση από μια διαφορετική χώρα, το σύστημα μπορεί να ζητήσει επιπλέον αυθεντικοποίηση.
2. **Πολιτική Συμμόρφωσης Συσκευών**: Αυτή η πολιτική μπορεί να περιορίσει την πρόσβαση σε υπηρεσίες του Azure μόνο σε συσκευές που συμμορφώνονται με τα πρότυπα ασφαλείας του οργανισμού. Για παράδειγμα, η πρόσβαση θα μπορούσε να επιτρέπεται μόνο από συσκευές που διαθέτουν ενημερωμένο λογισμικό antivirus ή εκτελούν μια συγκεκριμένη έκδοση λειτουργικού συστήματος.
2. **Πολιτική Συμμόρφωσης Συσκευών**: Αυτή η πολιτική μπορεί να περιορίσει την πρόσβαση στις υπηρεσίες του Azure μόνο σε συσκευές που είναι συμβατές με τα πρότυπα ασφάλειας του οργανισμού. Για παράδειγμα, η πρόσβαση θα μπορούσε να επιτρέπεται μόνο από συσκευές που διαθέτουν ενημερωμένο λογισμικό antivirus ή εκτελούν μια συγκεκριμένη έκδοση λειτουργικού συστήματος.
## Παράκαμψη Πολιτικών Προσβάσεως με Όρους
## Αριθμητική
```bash
# Get all the policies from Azure without needing any special permission with (idea from https://github.com/LuemmelSec/APEX/blob/main/APEX.ps1)
az rest --method GET --uri 'https://graph.windows.net/<tenant-id>/policies?api-version=1.61-internal' | jq '.value[] | select(.policyType == 18) | {displayName, policyDetail: (.policyDetail[] | fromjson)}'
Είναι πιθανό μια πολιτική προσβάσεως με όρους να **ελέγχει κάποιες πληροφορίες που μπορούν να παραποιηθούν εύκολα επιτρέποντας την παράκαμψη της πολιτικής**. Και αν, για παράδειγμα, η πολιτική ρυθμίζει MFA, ο επιτιθέμενος θα μπορεί να την παρακάμψει.
# You need Policy.Read.ConditionalAccess or Policy.Read.All permission in Entra ID
az rest --method get --uri "https://graph.microsoft.com/beta/identity/conditionalAccess/policies"
```
## Bypasses Πολιτικών Προσβάσεων
Κατά τη ρύθμιση μιας πολιτικής προσβάσεως με όρους, είναι απαραίτητο να υποδειχθούν οι **χρήστες** που επηρεάζονται και οι **στόχοι πόροι** (όπως όλες οι εφαρμογές cloud).
Είναι πιθανό μια πολιτική προσβάσεων να **ελέγχει κάποιες πληροφορίες που μπορούν να παραποιηθούν εύκολα, επιτρέποντας την παράκαμψη της πολιτικής**. Και αν, για παράδειγμα, η πολιτική ρύθμιζε MFA, ο επιτιθέμενος θα μπορεί να την παρακάμψει.
Κατά τη ρύθμιση μιας πολιτικής προσβάσεων, είναι απαραίτητο να υποδειχθούν οι **χρήστες** που επηρεάζονται και οι **στόχοι πόροι** (όπως όλες οι εφαρμογές cloud).
Είναι επίσης απαραίτητο να ρυθμιστούν οι **συνθήκες** που θα **ενεργοποιήσουν** την πολιτική:
- **Δίκτυο**: IP, εύρος IP και γεωγραφικές τοποθεσίες
- Μπορεί να παρακαμφθεί χρησιμοποιώντας VPN ή Proxy για σύνδεση σε μια χώρα ή καταφέρνοντας να συνδεθεί από μια επιτρεπόμενη διεύθυνση IP
- **Κίνδυνοι Microsoft**: Κίνδυνος χρήστη, κίνδυνος σύνδεσης, κίνδυνος εσωτερικού
- Μπορεί να παρακαμφθεί χρησιμοποιώντας ένα VPN ή Proxy για να συνδεθεί σε μια χώρα ή καταφέρνοντας να συνδεθεί από μια επιτρεπόμενη διεύθυνση IP
- **Κίνδυνοι Microsoft**: Κίνδυνος χρήστη, Κίνδυνος σύνδεσης, Κίνδυνος εσωτερικού
- **Πλατφόρμες συσκευών**: Οποιαδήποτε συσκευή ή επιλέξτε Android, iOS, Windows phone, Windows, macOS, Linux
- Αν δεν έχει επιλεγεί “Οποιαδήποτε συσκευή” αλλά έχουν επιλεγεί όλες οι άλλες επιλογές, είναι δυνατόν να παρακαμφθεί χρησιμοποιώντας έναν τυχαίο user-agent που δεν σχετίζεται με αυτές τις πλατφόρμες
- **Εφαρμογές πελάτη**: Οι επιλογές είναι “Περιηγητής”, “Εφαρμογές κινητών και επιτραπέζιοι πελάτες”, “Exchange ActiveSync πελάτες” και “Άλλοι πελάτες”
- **Εφαρμογές πελάτη**: Οι επιλογές είναι “Περιηγητής”, “Εφαρμογές κινητών και επιτραπέζιοι πελάτες”, “Clients Exchange ActiveSync” και “Άλλοι πελάτες”
- Για να παρακαμφθεί η σύνδεση με μια μη επιλεγμένη επιλογή
- **Φίλτρο για συσκευές**: Είναι δυνατόν να δημιουργηθεί ένας κανόνας σχετικός με τη χρησιμοποιούμενη συσκευή
- **Ροές αυθεντικοποίησης**: Οι επιλογές είναι “Ροή κωδικού συσκευής” και “Μεταφορά αυθεντικοποίησης”
- Αυτό δεν θα επηρεάσει έναν επιτιθέμενο εκτός αν προσπαθεί να καταχραστεί οποιοδήποτε από αυτά τα πρωτόκολλα σε μια απόπειρα phishing για πρόσβαση στον λογαριασμό του θύματος
- **Ροές πιστοποίησης**: Οι επιλογές είναι “Ροή κωδικού συσκευής” και “Μεταφορά πιστοποίησης”
- Αυτό δεν θα επηρεάσει έναν επιτιθέμενο εκτός αν προσπαθεί να καταχραστεί οποιοδήποτε από αυτά τα πρωτόκολλα σε μια απόπειρα phishing για να αποκτήσει πρόσβαση στον λογαριασμό του θύματος
Τα πιθανά **αποτελέσματα** είναι: Αποκλεισμός ή Χορήγηση πρόσβασης με πιθανές προϋποθέσεις όπως η απαίτηση MFA, η συμμόρφωση της συσκευής…
### Πλατφόρμες Συσκευών - Συνθήκη Συσκευής
Είναι δυνατόν να ρυθμιστεί μια συνθήκη με βάση την **πλατφόρμα συσκευής** (Android, iOS, Windows, macOS...), ωστόσο, αυτό βασίζεται στον **user-agent** οπότε είναι εύκολο να παρακαμφθεί. Ακόμη και **κάνοντάς όλες τις επιλογές να επιβάλλουν MFA**, αν χρησιμοποιήσετε έναν **user-agent που δεν αναγνωρίζεται,** θα μπορείτε να παρακάμψετε το MFA ή τον αποκλεισμό:
Είναι δυνατόν να ρυθμιστεί μια συνθήκη με βάση την **πλατφόρμα συσκευής** (Android, iOS, Windows, macOS...), ωστόσο, αυτό βασίζεται στον **user-agent** οπότε είναι εύκολο να παρακαμφθεί. Ακόμα και **κάνοντάς όλες τις επιλογές να επιβάλλουν MFA**, αν χρησιμοποιήσετε έναν **user-agent που δεν αναγνωρίζεται,** θα μπορείτε να παρακάμψετε το MFA ή τον αποκλεισμό:
<figure><img src="../../../../images/image (352).png" alt=""><figcaption></figcaption></figure>
Απλά κάνοντας τον περιηγητή **να στείλει έναν άγνωστο user-agent** (όπως `Mozilla/5.0 (compatible; MSIE 10.0; Windows Phone 8.0; Trident/6.0; IEMobile/10.0; ARM; Touch; NOKIA; Lumia 920) UCBrowser/10.1.0.563 Mobile`) είναι αρκετό για να μην ενεργοποιηθεί αυτή η συνθήκη.\
Απλά κάνοντάς τον περιηγητή να **στείλει έναν άγνωστο user-agent** (όπως `Mozilla/5.0 (compatible; MSIE 10.0; Windows Phone 8.0; Trident/6.0; IEMobile/10.0; ARM; Touch; NOKIA; Lumia 920) UCBrowser/10.1.0.563 Mobile`) είναι αρκετό για να μην ενεργοποιηθεί αυτή η συνθήκη.\
Μπορείτε να αλλάξετε τον user agent **χειροκίνητα** στα εργαλεία ανάπτυξης:
<figure><img src="../../../../images/image (351).png" alt="" width="375"><figcaption></figcaption></figure>
Ή να χρησιμοποιήσετε μια [επέκταση περιηγητή όπως αυτή](https://chromewebstore.google.com/detail/user-agent-switcher-and-m/bhchdcejhohfmigjafbampogmaanbfkg?hl=en).
### Τοποθεσίες: Χώρες, εύρη IP - Συνθήκη Συσκευής
### Τοποθεσίες: Χώρες, Εύρη IP - Συνθήκη Συσκευής
Αν αυτό έχει ρυθμιστεί στην πολιτική προσβάσεως με όρους, ένας επιτιθέμενος θα μπορούσε απλά να χρησιμοποιήσει ένα **VPN** στη **επιτρεπόμενη χώρα** ή να προσπαθήσει να βρει έναν τρόπο πρόσβασης από μια **επιτρεπόμενη διεύθυνση IP** για να παρακάμψει αυτές τις συνθήκες.
Αν αυτό έχει ρυθμιστεί στην πολιτική προσβάσεων, ένας επιτιθέμενος θα μπορούσε απλά να χρησιμοποιήσει ένα **VPN** στη **επιτρεπόμενη χώρα** ή να προσπαθήσει να βρει έναν τρόπο να αποκτήσει πρόσβαση από μια **επιτρεπόμενη διεύθυνση IP** για να παρακάμψει αυτές τις συνθήκες.
### Εφαρμογές Cloud
Είναι δυνατόν να ρυθμιστούν **πολιτικές προσβάσεως με όρους για να αποκλείσουν ή να επιβάλουν** για παράδειγμα MFA όταν ένας χρήστης προσπαθεί να έχει πρόσβαση σε **συγκεκριμένη εφαρμογή**:
Είναι δυνατόν να ρυθμιστούν **πολιτικές προσβάσεων για να αποκλείσουν ή να επιβάλουν** για παράδειγμα MFA όταν ένας χρήστης προσπαθεί να αποκτήσει πρόσβαση σε **συγκεκριμένη εφαρμογή**:
<figure><img src="../../../../images/image (353).png" alt=""><figcaption></figcaption></figure>
Για να προσπαθήσετε να παρακάμψετε αυτή την προστασία, θα πρέπει να δείτε αν μπορείτε **να συνδεθείτε μόνο σε οποιαδήποτε εφαρμογή**.\
Το εργαλείο [**AzureAppsSweep**](https://github.com/carlospolop/AzureAppsSweep) έχει **δεκάδες αναγνωριστικά εφαρμογών σκληρά κωδικοποιημένα** και θα προσπαθήσει να συνδεθεί σε αυτά και να σας ενημερώσει και να σας δώσει ακόμη και το token αν είναι επιτυχές.
Για να **δοκιμάσετε συγκεκριμένα αναγνωριστικά εφαρμογών σε συγκεκριμένους πόρους** μπορείτε επίσης να χρησιμοποιήσετε ένα εργαλείο όπως:
Για να **δοκιμάσετε συγκεκριμένα αναγνωριστικά εφαρμογών σε συγκεκριμένους πόρους**, μπορείτε επίσης να χρησιμοποιήσετε ένα εργαλείο όπως:
```bash
roadrecon auth -u user@email.com -r https://outlook.office.com/ -c 1fec8e78-bce4-4aaf-ab1b-5451cc387264 --tokens-stdout
@@ -78,11 +86,11 @@ roadrecon auth -u user@email.com -r https://outlook.office.com/ -c 1fec8e78-bce4
Μια επιλογή Azure MFA είναι να **λάβετε μια κλήση στον ρυθμισμένο αριθμό τηλεφώνου** όπου θα ζητηθεί από τον χρήστη να **στείλει τον χαρακτήρα `#`**.
> [!CAUTION]
> Καθώς οι χαρακτήρες είναι απλώς **ήχοι**, ένας επιτιθέμενος θα μπορούσε να **παραβιάσει** το **μήνυμα φωνητικού ταχυδρομείου** του αριθμού τηλεφώνου, να ρυθμίσει ως μήνυμα τον **ήχο του `#`** και στη συνέχεια, όταν ζητηθεί η MFA, να διασφαλίσει ότι το **τηλέφωνο του θύματος είναι απασχολημένο** (καλώντας το) ώστε η κλήση του Azure να ανακατευθυνθεί στο φωνητικό ταχυδρομείο.
> Καθώς οι χαρακτήρες είναι απλώς **ήχοι**, ένας επιτιθέμενος θα μπορούσε να **παραβιάσει** το **μήνυμα φωνητικού ταχυδρομείου** του αριθμού τηλεφώνου, να ρυθμίσει ως μήνυμα τον **ήχο του `#`** και στη συνέχεια, όταν ζητάει την MFA, να βεβαιωθεί ότι το **τηλέφωνο του θύματος είναι απασχολημένο** (καλώντας το) ώστε η κλήση του Azure να ανακατευθυνθεί στο φωνητικό ταχυδρομείο.
### Συμβατές Συσκευές
Οι πολιτικές συχνά ζητούν μια συμβατή συσκευή ή MFA, οπότε ένας **επιτιθέμενος θα μπορούσε να καταχωρίσει μια συμβατή συσκευή**, να αποκτήσει ένα **PRT** token και να **παρακάμψει με αυτόν τον τρόπο την MFA**.
Οι πολιτικές συχνά ζητούν μια συμβατή συσκευή ή MFA, έτσι ένας **επιτιθέμενος θα μπορούσε να καταχωρίσει μια συμβατή συσκευή**, να αποκτήσει ένα **PRT** token και να **παρακάμψει με αυτόν τον τρόπο την MFA**.
Ξεκινήστε καταχωρίζοντας μια **συμβατή συσκευή στο Intune**, στη συνέχεια **αποκτήστε το PRT** με:
```bash