mirror of
https://github.com/HackTricks-wiki/hacktricks-cloud.git
synced 2026-02-05 11:26:11 -08:00
Translated ['src/pentesting-cloud/azure-security/az-privilege-escalation
This commit is contained in:
@@ -12,7 +12,7 @@ Azure App hizmetleri hakkında daha fazla bilgi için kontrol edin:
|
||||
|
||||
### Microsoft.Web/sites/publish/Action, Microsoft.Web/sites/basicPublishingCredentialsPolicies/read, Microsoft.Web/sites/config/read, Microsoft.Web/sites/read
|
||||
|
||||
Bu izinler, bir web uygulaması içinde **SSH shell** almayı sağlar. Ayrıca uygulamayı **debug** etmeye de olanak tanır.
|
||||
Bu izinler, bir web uygulaması içinde **SSH shell** almayı sağlar. Ayrıca uygulamayı **debug** yapmayı da sağlar.
|
||||
|
||||
- **Tek komutla SSH**:
|
||||
```bash
|
||||
@@ -36,7 +36,7 @@ ssh root@127.0.0.1 -p 39895
|
||||
1. VScode'da Azure uzantısını yükleyin.
|
||||
2. Uzantıda Azure hesabınızla oturum açın.
|
||||
3. Abonelik içindeki tüm Uygulama hizmetlerini listeleyin.
|
||||
4. Hata ayıklamak istediğiniz Uygulama hizmetini seçin, sağ tıklayın ve "Hata Ayıklamayı Başlat" seçeneğini seçin.
|
||||
4. Hata ayıklamak istediğiniz Uygulama hizmetini seçin, sağ tıklayın ve "Hata Ayıklamayı Başlat"ı seçin.
|
||||
5. Uygulama hata ayıklama etkin değilse, uzantı bunu etkinleştirmeye çalışacaktır ancak hesabınızın bunu yapabilmesi için `Microsoft.Web/sites/config/write` iznine ihtiyacı vardır.
|
||||
|
||||
### SCM Kimlik Bilgilerini Alma ve Temel Kimlik Doğrulamayı Etkinleştirme
|
||||
@@ -94,9 +94,9 @@ az webapp deployment list-publishing-profiles --name <app-name> --resource-group
|
||||
}
|
||||
]
|
||||
```
|
||||
Not edin ki **kullanıcı adı her zaman aynıdır** (FTP'de uygulamanın adı başta eklenir) ama **şifre hepsi için aynıdır**.
|
||||
Kullanıcı adının **her zaman aynı olduğunu** (FTP'de uygulamanın adının başta eklendiği hariç) ve **şifrenin hepsi için aynı olduğunu** not edin.
|
||||
|
||||
Ayrıca, **SCM URL'si `<app-name>.scm.azurewebsites.net`**.
|
||||
Ayrıca, **SCM URL'si `<app-name>.scm.azurewebsites.net`**'dir.
|
||||
|
||||
- İzin **`Microsoft.Web/sites/config/list/action`** çağrılmasına izin verir:
|
||||
```bash
|
||||
@@ -116,7 +116,7 @@ az webapp deployment list-publishing-credentials --name <app-name> --resource-gr
|
||||
"type": "Microsoft.Web/sites/publishingcredentials"
|
||||
}
|
||||
```
|
||||
Not edin ki **kimlik bilgileri aynıdır** önceki komutla.
|
||||
Not edin ki **kimlik bilgileri aynı**dır önceki komutla.
|
||||
|
||||
- Başka bir seçenek, **kendi kimlik bilgilerinizi ayarlamak** ve bunları kullanmaktır:
|
||||
```bash
|
||||
@@ -124,7 +124,7 @@ az webapp deployment user set \
|
||||
--user-name hacktricks \
|
||||
--password 'W34kP@ssw0rd123!'
|
||||
```
|
||||
Sonra, bu kimlik bilgilerini **SCM ve FTP platformlarına erişmek için** kullanabilirsiniz. Bu, sürekliliği sağlamak için de harika bir yoldur.
|
||||
Sonra, bu kimlik bilgilerini **SCM ve FTP platformlarına erişmek için** kullanabilirsiniz. Bu, kalıcılığı sağlamak için de harika bir yoldur.
|
||||
|
||||
SCM platformuna **web üzerinden erişmek için `<SCM-URL>/BasicAuth`** adresine gitmeniz gerektiğini unutmayın.
|
||||
|
||||
@@ -205,7 +205,7 @@ curl -X PUT \
|
||||
```
|
||||
### Microsoft.Web/sites/write, Microsoft.Web/sites/read, Microsoft.ManagedIdentity/userAssignedIdentities/assign/action
|
||||
|
||||
Bu izinler, **yönetilen bir kimlik atamaya** olanak tanır, bu nedenle eğer bir App hizmeti daha önce tehlikeye atıldıysa, bu saldırgana App hizmetine yeni yönetilen kimlikler atama ve **yetkileri artırma** imkanı verecektir.
|
||||
Bu izinler, **yönetilen bir kimlik atamaya** olanak tanır, bu nedenle eğer bir App hizmeti daha önce tehlikeye atıldıysa, bu saldırganın App hizmetine yeni yönetilen kimlikler atamasına ve **yetkileri artırmasına** olanak tanır.
|
||||
```bash
|
||||
az webapp identity assign --name <app-name> --resource-group <res-group> --identities /subscriptions/<subcripttion-id>/resourceGroups/<res_group>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<managed-identity-name>
|
||||
```
|
||||
@@ -250,14 +250,14 @@ https://graph.microsoft.com/v1.0/me/drive/root/children
|
||||
```
|
||||
### Uygulama Kodunu Kaynaktan Güncelle
|
||||
|
||||
- Eğer yapılandırılmış kaynak bir üçüncü taraf sağlayıcı ise, örneğin Github, BitBucket veya bir Azure Repository, kaynak kodunu tehlikeye atarak **uygulama kodunu güncelleyebilirsiniz**.
|
||||
- Yapılandırılmış kaynak bir üçüncü taraf sağlayıcı (Github, BitBucket veya Azure Repository gibi) ise, depodaki kaynak kodunu ele geçirerek **uygulama kodunu güncelleyebilirsiniz**.
|
||||
- Uygulama **uzaktan bir git deposu** (kullanıcı adı ve şifre ile) kullanacak şekilde yapılandırılmışsa, değişiklikleri klonlamak ve itmek için **URL ve temel kimlik bilgilerini** almak mümkündür:
|
||||
- İzin kullanarak **`Microsoft.Web/sites/sourcecontrols/read`**: `az webapp deployment source show --name <app-name> --resource-group <res-group>`
|
||||
- İzin kullanarak **`Microsoft.Web/sites/config/list/action`**:
|
||||
- `az webapp deployment list-publishing-credentials --name <app-name> --resource-group <res-group>`
|
||||
- `az rest --method POST --url "https://management.azure.com/subscriptions/<subscription-id>/resourceGroups/<res-group>/providers/Microsoft.Web/sites/<app-name>/config/metadata/list?api-version=2022-03-01" --resource "https://management.azure.com"`
|
||||
- Eğer uygulama **yerel bir git deposu** kullanacak şekilde yapılandırılmışsa, **depolamayı klonlamak** ve **değişiklikleri itmek** mümkündür:
|
||||
- İzin kullanarak **`Microsoft.Web/sites/sourcecontrols/read`**: `az webapp deployment source show --name <app-name> --resource-group <res-group>` ile git deposunun URL'sini alabilirsiniz, ancak bu, uygulamanın SCM URL'si ile aynı olacak ve `/<app-name>.git` yolunu içerecektir (örneğin, `https://pythonwebapp-audeh9f5fzeyhhed.scm.canadacentral-01.azurewebsites.net:443/pythonwebapp.git`).
|
||||
- Uygulama **yerel bir git deposu** kullanacak şekilde yapılandırılmışsa, **depolamayı klonlamak** ve **değişiklikleri itmek** mümkündür:
|
||||
- İzin kullanarak **`Microsoft.Web/sites/sourcecontrols/read`**: `az webapp deployment source show --name <app-name> --resource-group <res-group>` ile git deposunun URL'sini alabilirsiniz, ancak bu, uygulamanın SCM URL'si ile aynı olacaktır ve yol `/<app-name>.git` şeklindedir (örneğin, `https://pythonwebapp-audeh9f5fzeyhhed.scm.canadacentral-01.azurewebsites.net:443/pythonwebapp.git`).
|
||||
- SCM kimliğini almak için aşağıdaki izne ihtiyacınız var:
|
||||
- **`Microsoft.Web/sites/publishxml/action`**: Ardından `az webapp deployment list-publishing-profiles --resource-group <res-group> -n <name>` komutunu çalıştırın.
|
||||
- **`Microsoft.Web/sites/config/list/action`**: Ardından `az webapp deployment list-publishing-credentials --name <name> --resource-group <res-group>` komutunu çalıştırın.
|
||||
@@ -266,11 +266,11 @@ https://graph.microsoft.com/v1.0/me/drive/root/children
|
||||
> `Microsoft.Web/sites/config/list/action` iznine ve SCM kimlik bilgilerine sahip olmanın, daha önceki bir bölümde belirtildiği gibi, bir web uygulamasına dağıtım yapmanın her zaman mümkün olduğunu unutmayın (üçüncü taraf bir sağlayıcı kullanacak şekilde yapılandırılmış olsa bile).
|
||||
|
||||
> [!WARNING]
|
||||
> Aşağıdaki izinlere sahip olmanın, web uygulaması farklı bir şekilde yapılandırılmış olsa bile, **rastgele bir konteyneri çalıştırmanın da mümkün olduğunu** unutmayın.
|
||||
> Aşağıdaki izinlere sahip olmanın, web uygulaması farklı bir şekilde yapılandırılmış olsa bile **rastgele bir konteyneri çalıştırmanın** de mümkün olduğunu unutmayın.
|
||||
|
||||
### `Microsoft.Web/sites/config/Write`, `Microsoft.Web/sites/config/Read`, `Microsoft.Web/sites/config/list/Action`, `Microsoft.Web/sites/Read`
|
||||
|
||||
Bu, bir web uygulaması tarafından kullanılan **konteyneri değiştirmeye** olanak tanıyan izinler setidir. Bir saldırgan bunu kötü niyetli bir konteyner çalıştırmak için kötüye kullanabilir.
|
||||
Bu, bir web uygulaması tarafından kullanılan **konteyneri değiştirmeye** izin veren izinler setidir. Bir saldırgan bunu kötü niyetli bir konteyner çalıştırmak için kötüye kullanabilir.
|
||||
```bash
|
||||
az webapp config container set \
|
||||
--name <app-name> \
|
||||
|
||||
Reference in New Issue
Block a user