mirror of
https://github.com/HackTricks-wiki/hacktricks-cloud.git
synced 2026-02-04 11:07:37 -08:00
Translated ['src/pentesting-cloud/azure-security/az-persistence/az-cloud
This commit is contained in:
@@ -77,6 +77,8 @@ def ref(matchobj):
|
||||
logger.error(f'Error getting chapter title: {path.normpath(path.join(dir,href))}')
|
||||
sys.exit(1)
|
||||
|
||||
if href.endswith("/README.md"):
|
||||
href = href.replace("/README.md", "/index.html")
|
||||
|
||||
template = f"""<a class="content_ref" href="{href}"><span class="content_ref_label">{title}</span></a>"""
|
||||
|
||||
|
||||
@@ -398,8 +398,8 @@
|
||||
- [Az - Enumeration Tools](pentesting-cloud/azure-security/az-enumeration-tools.md)
|
||||
- [Az - Unauthenticated Enum & Initial Entry](pentesting-cloud/azure-security/az-unauthenticated-enum-and-initial-entry/README.md)
|
||||
- [Az - OAuth Apps Phishing](pentesting-cloud/azure-security/az-unauthenticated-enum-and-initial-entry/az-oauth-apps-phishing.md)
|
||||
- [Az - Storage Unath](pentesting-cloud/azure-security/az-unauthenticated-enum-and-initial-entry/az-storage-unauth.md)
|
||||
- [Az - VMs Unath](pentesting-cloud/azure-security/az-unauthenticated-enum-and-initial-entry/az-vms-unauth.md)
|
||||
- [Az - Storage Unauth](pentesting-cloud/azure-security/az-unauthenticated-enum-and-initial-entry/az-storage-unauth.md)
|
||||
- [Az - VMs Unauth](pentesting-cloud/azure-security/az-unauthenticated-enum-and-initial-entry/az-vms-unauth.md)
|
||||
- [Az - Device Code Authentication Phishing](pentesting-cloud/azure-security/az-unauthenticated-enum-and-initial-entry/az-device-code-authentication-phishing.md)
|
||||
- [Az - Password Spraying](pentesting-cloud/azure-security/az-unauthenticated-enum-and-initial-entry/az-password-spraying.md)
|
||||
- [Az - Services](pentesting-cloud/azure-security/az-services/README.md)
|
||||
|
||||
@@ -50,7 +50,7 @@ Ucz się i ćwicz Hacking GCP: <img src="../../../.gitbook/assets/image (2) (1).
|
||||
|
||||
* Sprawdź [**plany subskrypcyjne**](https://github.com/sponsors/carlospolop)!
|
||||
* **Dołącz do** 💬 [**grupy Discord**](https://discord.gg/hRep4RUj7f) lub [**grupy telegram**](https://t.me/peass) lub **śledź** nas na **Twitterze** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks_live)**.**
|
||||
* **Dziel się trikami hackingowymi, przesyłając PR-y do** [**HackTricks**](https://github.com/carlospolop/hacktricks) i [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) repozytoriów na GitHubie.
|
||||
* **Dziel się trikami hackingowymi, przesyłając PR-y do** [**HackTricks**](https://github.com/carlospolop/hacktricks) i [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) repozytoriów na githubie.
|
||||
|
||||
</details>
|
||||
{% endhint %}
|
||||
|
||||
@@ -23,7 +23,7 @@ Aby uzyskać więcej informacji na temat aplikacji logicznych, sprawdź:
|
||||
{% endcontent-ref %}
|
||||
|
||||
### "Microsoft.Logic/workflows/read", "Microsoft.Logic/workflows/write" && "Microsoft.ManagedIdentity/userAssignedIdentities/assign/action"
|
||||
Dzięki tym uprawnieniom możesz modyfikować przepływy pracy aplikacji logicznych i zarządzać ich tożsamościami. W szczególności możesz przypisywać lub usuwać tożsamości zarządzane przypisane do systemu i użytkownika do przepływów pracy, co pozwala aplikacji logicznej uwierzytelnić się i uzyskać dostęp do innych zasobów Azure bez wyraźnych poświadczeń.
|
||||
Dzięki tym uprawnieniom możesz modyfikować przepływy pracy aplikacji logicznych i zarządzać ich tożsamościami. W szczególności możesz przypisywać lub usuwać tożsamości zarządzane przypisane do systemu i użytkownika do przepływów pracy, co pozwala aplikacji logicznej na uwierzytelnianie i dostęp do innych zasobów Azure bez wyraźnych poświadczeń.
|
||||
|
||||
{% code overflow="wrap" %}
|
||||
```bash
|
||||
@@ -88,7 +88,7 @@ az logic integration-account create \
|
||||
|
||||
### "Microsoft.Resources/subscriptions/resourcegroups/read" && "Microsoft.Logic/integrationAccounts/batchConfigurations/write"
|
||||
|
||||
Dzięki temu uprawnieniu możesz tworzyć lub modyfikować konfiguracje wsadowe w ramach konta integracyjnego Azure Logic Apps. Konfiguracje wsadowe definiują, jak Logic Apps przetwarzają i grupują przychodzące wiadomości do przetwarzania wsadowego.
|
||||
Dzięki temu uprawnieniu możesz tworzyć lub modyfikować konfiguracje wsadowe w ramach konta integracyjnego Azure Logic Apps. Konfiguracje wsadowe definiują, w jaki sposób Logic Apps przetwarzają i grupują przychodzące wiadomości do przetwarzania wsadowego.
|
||||
|
||||
{% code overflow="wrap" %}
|
||||
```bash
|
||||
@@ -119,7 +119,7 @@ az logic integration-account map create \
|
||||
{% endcode %}
|
||||
|
||||
### "Microsoft.Resources/subscriptions/resourcegroups/read" && "Microsoft.Logic/integrationAccounts/partners/write"
|
||||
Dzięki temu uprawnieniu możesz tworzyć lub modyfikować partnerów w koncie integracyjnym Azure Logic Apps. Partnerzy reprezentują podmioty lub systemy, które uczestniczą w przepływach pracy typu business-to-business (B2B).
|
||||
Dzięki temu uprawnieniu możesz tworzyć lub modyfikować partnerów w koncie integracyjnym Azure Logic Apps. Partnerzy reprezentują podmioty lub systemy, które uczestniczą w procesach biznesowych typu business-to-business (B2B).
|
||||
|
||||
{% code overflow="wrap" %}
|
||||
```bash
|
||||
@@ -171,10 +171,10 @@ Ucz się i ćwicz Hacking GCP: <img src="../../../.gitbook/assets/image (2) (1).
|
||||
|
||||
<details>
|
||||
|
||||
<summary>Wsparcie HackTricks</summary>
|
||||
<summary>Wsparcie dla HackTricks</summary>
|
||||
|
||||
* Sprawdź [**plany subskrypcyjne**](https://github.com/sponsors/carlospolop)!
|
||||
* **Dołącz do** 💬 [**grupy Discord**](https://discord.gg/hRep4RUj7f) lub [**grupy telegram**](https://t.me/peass) lub **śledź** nas na **Twitterze** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks_live)**.**
|
||||
* **Dołącz do** 💬 [**grupy Discord**](https://discord.gg/hRep4RUj7f) lub [**grupy telegramowej**](https://t.me/peass) lub **śledź** nas na **Twitterze** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks_live)**.**
|
||||
* **Dziel się trikami hackingowymi, przesyłając PR-y do** [**HackTricks**](https://github.com/carlospolop/hacktricks) i [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) repozytoriów na githubie.
|
||||
|
||||
</details>
|
||||
|
||||
@@ -9,14 +9,14 @@ Ucz się i ćwicz Hacking GCP: <img src="../../../.gitbook/assets/image (2) (1).
|
||||
<summary>Wsparcie HackTricks</summary>
|
||||
|
||||
* Sprawdź [**plany subskrypcyjne**](https://github.com/sponsors/carlospolop)!
|
||||
* **Dołącz do** 💬 [**grupy Discord**](https://discord.gg/hRep4RUj7f) lub [**grupy telegram**](https://t.me/peass) lub **śledź** nas na **Twitterze** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks_live)**.**
|
||||
* **Dołącz do** 💬 [**grupy Discord**](https://discord.gg/hRep4RUj7f) lub [**grupy telegramowej**](https://t.me/peass) lub **śledź** nas na **Twitterze** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks_live)**.**
|
||||
* **Dziel się sztuczkami hackingowymi, przesyłając PR-y do** [**HackTricks**](https://github.com/carlospolop/hacktricks) i [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) repozytoriów na GitHubie.
|
||||
|
||||
</details>
|
||||
{% endhint %}
|
||||
|
||||
## Logic Apps Privesc
|
||||
Aby uzyskać więcej informacji na temat SQL Database, sprawdź:
|
||||
Aby uzyskać więcej informacji o SQL Database, sprawdź:
|
||||
|
||||
{% content-ref url="../az-services/az-logic-apps.md" %}
|
||||
[az-logic-apps.md](../az-services/az-logic-apps.md)
|
||||
@@ -70,7 +70,7 @@ Ucz się i ćwicz Hacking GCP: <img src="../../../.gitbook/assets/image (2) (1).
|
||||
<summary>Wsparcie HackTricks</summary>
|
||||
|
||||
* Sprawdź [**plany subskrypcyjne**](https://github.com/sponsors/carlospolop)!
|
||||
* **Dołącz do** 💬 [**grupy Discord**](https://discord.gg/hRep4RUj7f) lub [**grupy telegram**](https://t.me/peass) lub **śledź** nas na **Twitterze** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks_live)**.**
|
||||
* **Dołącz do** 💬 [**grupy Discord**](https://discord.gg/hRep4RUj7f) lub [**grupy telegramowej**](https://t.me/peass) lub **śledź** nas na **Twitterze** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks_live)**.**
|
||||
* **Dziel się trikami hackingowymi, przesyłając PR-y do** [**HackTricks**](https://github.com/carlospolop/hacktricks) i [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) repozytoriów na githubie.
|
||||
|
||||
</details>
|
||||
|
||||
@@ -8,12 +8,12 @@ Azure App Services umożliwia deweloperom **tworzenie, wdrażanie i skalowanie a
|
||||
|
||||
Każda aplikacja działa w piaskownicy, ale izolacja zależy od planów App Service:
|
||||
|
||||
- Aplikacje w darmowych i współdzielonych planach działają na **współdzielonych VM**
|
||||
- Aplikacje w standardowych i premium planach działają na **dedykowanych VM współdzielonych tylko przez aplikacje** w tym samym planie App Service.
|
||||
- Plany izolowane działają na **dedykowanych VM w dedykowanych sieciach wirtualnych**, co poprawia izolację aplikacji.
|
||||
- Aplikacje w bezpłatnych i współdzielonych warstwach działają na **współdzielonych VM**
|
||||
- Aplikacje w standardowych i premium warstwach działają na **dedykowanych VM współdzielonych tylko przez aplikacje** w tym samym planie App Service.
|
||||
- Warstwy izolowane działają na **dedykowanych VM w dedykowanych sieciach wirtualnych**, co poprawia izolację aplikacji.
|
||||
|
||||
> [!WARNING]
|
||||
> Należy pamiętać, że **żadne** z tych izolacji **nie zapobiega** innym powszechnym **wrażliwościom internetowym** (takim jak przesyłanie plików czy wstrzyknięcia). A jeśli używana jest **tożsamość zarządzająca**, może ona **eskalować uprawnienia do nich**.
|
||||
> Należy pamiętać, że **żadne** z tych izolacji **nie zapobiega** innym powszechnym **wrażliwościom internetowym** (takim jak przesyłanie plików czy wstrzyknięcia). A jeśli używana jest **tożsamość zarządzania**, może ona **eskalować uprawnienia do nich**.
|
||||
|
||||
Aplikacje mają kilka interesujących konfiguracji:
|
||||
|
||||
@@ -21,10 +21,10 @@ Aplikacje mają kilka interesujących konfiguracji:
|
||||
- Jest to niezbędne, jeśli masz webjob, który musi działać nieprzerwanie, ponieważ webjob zatrzyma się, jeśli aplikacja przestanie działać.
|
||||
- **SSH**: Jeśli włączone, użytkownik z wystarczającymi uprawnieniami może połączyć się z aplikacją za pomocą SSH.
|
||||
- **Debugowanie**: Jeśli włączone, użytkownik z wystarczającymi uprawnieniami może debugować aplikację. Jednak jest to automatycznie wyłączane co 48 godzin.
|
||||
- **Aplikacja internetowa + Baza danych**: Konsola internetowa pozwala na utworzenie aplikacji z bazą danych. W tym przypadku można wybrać bazę danych do użycia (SQLAzure, PostgreSQL, MySQL, MongoDB) i umożliwia również utworzenie Azure Cache dla Redis.
|
||||
- **Aplikacja internetowa + Baza danych**: Konsola internetowa umożliwia utworzenie aplikacji z bazą danych. W tym przypadku można wybrać bazę danych do użycia (SQLAzure, PostgreSQL, MySQL, MongoDB) i umożliwia również utworzenie Azure Cache dla Redis.
|
||||
- URL zawierający dane uwierzytelniające do bazy danych i Redis będzie przechowywany w **appsettings**.
|
||||
- **Kontener**: Możliwe jest wdrożenie kontenera do App Service, wskazując URL kontenera i dane uwierzytelniające do jego dostępu.
|
||||
- **Montowanie**: Możliwe jest utworzenie 5 montowań z kont Storage, które mogą być Azure Blob (tylko do odczytu) lub Azure Files. Konfiguracja przechowa klucz dostępu w koncie Storage.
|
||||
- **Montowanie**: Możliwe jest utworzenie 5 montowań z kont osadzenia, które mogą być Azure Blob (tylko do odczytu) lub Azure Files. Konfiguracja przechowa klucz dostępu w koncie osadzenia.
|
||||
|
||||
## Podstawowa autoryzacja
|
||||
|
||||
@@ -48,7 +48,7 @@ Niektóre interesujące punkty końcowe, które można znaleźć w Kudu, to:
|
||||
- `/DebugConsole`: Konsola, która pozwala na wykonywanie poleceń w środowisku, w którym działa Kudu.
|
||||
- Należy pamiętać, że to środowisko **nie ma dostępu** do usługi metadanych w celu uzyskania tokenów.
|
||||
- `/webssh/host`: Klient SSH oparty na sieci, który pozwala na połączenie się wewnątrz kontenera, w którym działa aplikacja.
|
||||
- To środowisko **ma dostęp do usługi metadanych**, aby uzyskać tokeny z przypisanych tożsamości zarządzających.
|
||||
- To środowisko **ma dostęp do usługi metadanych**, aby uzyskać tokeny z przypisanych tożsamości zarządzanych.
|
||||
- `/Env`: Uzyskaj informacje o systemie, ustawieniach aplikacji, zmiennych środowiskowych, ciągach połączeń i nagłówkach HTTP.
|
||||
- `/wwwroot/`: Katalog główny aplikacji internetowej. Możesz pobrać wszystkie pliki stąd.
|
||||
|
||||
@@ -56,7 +56,7 @@ Ponadto, Kudu był kiedyś open source w [https://github.com/projectkudu/kudu](h
|
||||
|
||||
## Źródła
|
||||
|
||||
App Services domyślnie pozwala na przesyłanie kodu jako pliku zip, ale również umożliwia połączenie z usługą zewnętrzną i pobranie kodu stamtąd.
|
||||
Usługi App pozwalają na przesyłanie kodu jako pliku zip domyślnie, ale również umożliwiają połączenie z usługą zewnętrzną i pobranie kodu stamtąd.
|
||||
|
||||
- Obecnie obsługiwane źródła zewnętrzne to **Github** i **Bitbucket**.
|
||||
- Możesz uzyskać tokeny uwierzytelniające, uruchamiając `az rest --url "https://management.azure.com/providers/Microsoft.Web/sourcecontrols?api-version=2024-04-01"`
|
||||
@@ -65,7 +65,7 @@ App Services domyślnie pozwala na przesyłanie kodu jako pliku zip, ale równie
|
||||
- Możesz uzyskać dane uwierzytelniające do zdalnego repozytorium, uruchamiając `az webapp deployment source show --name <app-name> --resource-group <res-group>` lub `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"`
|
||||
- Możliwe jest również użycie **Azure Repository**.
|
||||
- Możliwe jest również skonfigurowanie **lokalnego repozytorium git**.
|
||||
- Możesz uzyskać URL repozytorium git, uruchamiając `az webapp deployment source show --name <app-name> --resource-group <res-group>`, a będzie to URL SCM aplikacji.
|
||||
- Możesz uzyskać URL repozytorium git za pomocą `az webapp deployment source show --name <app-name> --resource-group <res-group>`, a będzie to URL SCM aplikacji.
|
||||
- Aby je sklonować, będziesz potrzebować danych uwierzytelniających SCM, które możesz uzyskać za pomocą `az webapp deployment list-publishing-profiles --resource-group <res-group> -n <name>`
|
||||
|
||||
## Webjobs
|
||||
@@ -75,7 +75,7 @@ Istnieją 2 typy web jobs:
|
||||
- **Ciągłe**: Działa w nieskończoność w pętli i jest uruchamiane natychmiast po utworzeniu. Jest idealne do zadań, które wymagają stałego przetwarzania. Jednak jeśli aplikacja przestanie działać, ponieważ Always On jest wyłączone i nie otrzymała żądania w ciągu ostatnich 20 minut, web job również się zatrzyma.
|
||||
- **Wyzwalane**: Działa na żądanie lub na podstawie harmonogramu. Najlepiej nadaje się do okresowych zadań, takich jak aktualizacje danych wsadowych lub rutyny konserwacyjne.
|
||||
|
||||
Webjobs są bardzo interesujące z perspektywy atakującego, ponieważ mogą być używane do **wykonywania kodu** w środowisku i **eskalacji uprawnień** do przypisanych tożsamości zarządzających.
|
||||
Webjobs są bardzo interesujące z perspektywy atakującego, ponieważ mogą być używane do **wykonywania kodu** w środowisku i **eskalacji uprawnień** do przypisanych tożsamości zarządzanych.
|
||||
|
||||
Ponadto zawsze warto sprawdzić **logi** generowane przez Webjobs, ponieważ mogą zawierać **wrażliwe informacje**.
|
||||
|
||||
@@ -89,7 +89,7 @@ Ponadto możliwe jest skierowanie **procenta ruchu** do konkretnego slotu, co je
|
||||
|
||||
Zasadniczo **aplikacje funkcji Azure są podzbiorem Azure App Service** w konsoli internetowej, a jeśli przejdziesz do konsoli internetowej i wyświetlisz wszystkie usługi aplikacji lub wykonasz `az webapp list` w az cli, będziesz mógł **zobaczyć aplikacje funkcji również wymienione tam**.
|
||||
|
||||
Dlatego obie usługi mają w rzeczywistości głównie **te same konfiguracje, funkcje i opcje w az cli**, chociaż mogą je konfigurować nieco inaczej (jak domyślne wartości appsettings lub użycie konta Storage w aplikacjach funkcji).
|
||||
Dlatego obie usługi mają w rzeczywistości głównie **te same konfiguracje, funkcje i opcje w az cli**, chociaż mogą je konfigurować nieco inaczej (jak domyślne wartości appsettings lub użycie konta osadzenia w aplikacjach funkcji).
|
||||
|
||||
## Enumeracja
|
||||
|
||||
@@ -303,7 +303,7 @@ Podobnie jak w poprzednim przypadku, logując się do portalu SCM lub przez FTP,
|
||||
> [!TIP]
|
||||
> Samo połączenie przez FTP i modyfikacja pliku `output.tar.gz` oraz ponowne uruchomienie wdrożenia nie wystarczy, aby zmienić kod wykonywany przez aplikację webową.
|
||||
|
||||
## Podwyższenie Uprawnień
|
||||
## Eskalacja Uprawnień
|
||||
|
||||
{{#ref}}
|
||||
../az-privilege-escalation/az-app-services-privesc.md
|
||||
|
||||
@@ -10,7 +10,7 @@ Ucz się i ćwicz Hacking GCP: <img src="../../../.gitbook/assets/image (2) (1).
|
||||
|
||||
* Sprawdź [**plany subskrypcyjne**](https://github.com/sponsors/carlospolop)!
|
||||
* **Dołącz do** 💬 [**grupy Discord**](https://discord.gg/hRep4RUj7f) lub [**grupy telegram**](https://t.me/peass) lub **śledź** nas na **Twitterze** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks_live)**.**
|
||||
* **Podziel się sztuczkami hackingowymi, przesyłając PR do** [**HackTricks**](https://github.com/carlospolop/hacktricks) i [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) repozytoriów github.
|
||||
* **Podziel się sztuczkami hackingowymi, przesyłając PR-y do** [**HackTricks**](https://github.com/carlospolop/hacktricks) i [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) repozytoriów github.
|
||||
|
||||
</details>
|
||||
{% endhint %}
|
||||
@@ -23,11 +23,11 @@ Nie przypisano uprawnień do tej usługi, dlatego nie ma technik eskalacji upraw
|
||||
|
||||
### Kluczowe funkcje
|
||||
|
||||
**Środowisko**: Azure Cloud Shell zapewnia bezpieczne środowisko, działając na Azure Linux, własnej dystrybucji Linuksa Microsoftu zaprojektowanej dla infrastruktury chmurowej. Wszystkie pakiety zawarte w repozytorium Azure Linux są wewnętrznie kompilowane przez Microsoft, aby chronić przed atakami łańcucha dostaw.
|
||||
**Środowisko**: Azure Cloud Shell zapewnia bezpieczne środowisko, działając na Azure Linux, własnej dystrybucji Linuksa Microsoftu zaprojektowanej dla infrastruktury chmurowej. Wszystkie pakiety zawarte w repozytorium Azure Linux są wewnętrznie kompilowane przez Microsoft, aby chronić przed atakami na łańcuch dostaw.
|
||||
**Wstępnie zainstalowane narzędzia**: Cloud Shell zawiera kompleksowy zestaw wstępnie zainstalowanych narzędzi, takich jak Azure CLI, Azure PowerShell, Terraform, Docker CLI, Ansible, Git oraz edytory tekstu, takie jak vim, nano i emacs. Te narzędzia są gotowe do użycia. Aby wyświetlić zainstalowane pakiety i moduły, możesz użyć "Get-Module -ListAvailable", "tdnf list" i "pip3 list".
|
||||
**Trwałość $HOME**: Po uruchomieniu Azure Cloud Shell po raz pierwszy możesz go używać z lub bez podłączonego konta magazynu. Wybór braku podłączenia magazynu tworzy epizodyczną sesję, w której pliki są usuwane po zakończeniu sesji. Aby zachować pliki między sesjami, zamontuj konto magazynu, które automatycznie podłącza się jako **$HOME\clouddrive**, z Twoim katalogiem **$HOME** zapisanym jako plik **.img** w Azure File Share. Jednak pliki poza $HOME i stany maszyn nie są zachowywane. Aby bezpiecznie przechowywać sekrety, takie jak klucze SSH, użyj Azure Key Vault.
|
||||
**Trwałość $HOME**: Podczas pierwszego uruchomienia Azure Cloud Shell możesz używać go z lub bez podłączonego konta magazynu. Wybór braku podłączenia magazynu tworzy epizodyczną sesję, w której pliki są usuwane po zakończeniu sesji. Aby zachować pliki między sesjami, zamontuj konto magazynu, które automatycznie podłącza się jako **$HOME\clouddrive**, z Twoim katalogiem **$HOME** zapisanym jako plik **.img** w Azure File Share. Jednak pliki poza $HOME i stany maszyn nie są zachowywane. Aby bezpiecznie przechowywać sekrety, takie jak klucze SSH, użyj Azure Key Vault.
|
||||
**Dysk Azure (Azure:)**: PowerShell w Azure Cloud Shell zawiera dysk Azure (Azure:), który umożliwia łatwą nawigację po zasobach Azure, takich jak Compute, Network i Storage, przy użyciu poleceń podobnych do systemu plików. Przełącz się na dysk Azure za pomocą cd Azure: i wróć do swojego katalogu domowego za pomocą cd ~. Możesz nadal używać poleceń Azure PowerShell do zarządzania zasobami z dowolnego dysku.
|
||||
**Instalacja niestandardowych narzędzi**: Użytkownicy, którzy konfigurowali Cloud Shell z kontem magazynu, mogą instalować dodatkowe narzędzia, które nie wymagają uprawnień administratora. Ta funkcja pozwala na dalszą personalizację środowiska Cloud Shell, umożliwiając użytkownikom dostosowanie swojego ustawienia do ich specyficznych potrzeb.
|
||||
**Instalacja niestandardowych narzędzi**: Użytkownicy, którzy skonfigurują Cloud Shell z kontem magazynu, mogą instalować dodatkowe narzędzia, które nie wymagają uprawnień administratora. Ta funkcja pozwala na dalszą personalizację środowiska Cloud Shell, umożliwiając użytkownikom dostosowanie swojego ustawienia do ich specyficznych potrzeb.
|
||||
|
||||
## Odniesienia
|
||||
|
||||
@@ -52,7 +52,7 @@ Ucz się i ćwicz Hacking GCP: <img src="../../../.gitbook/assets/image (2) (1).
|
||||
|
||||
* Sprawdź [**plany subskrypcyjne**](https://github.com/sponsors/carlospolop)!
|
||||
* **Dołącz do** 💬 [**grupy Discord**](https://discord.gg/hRep4RUj7f) lub [**grupy telegram**](https://t.me/peass) lub **śledź** nas na **Twitterze** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks_live)**.**
|
||||
* **Podziel się sztuczkami hackingowymi, przesyłając PR do** [**HackTricks**](https://github.com/carlospolop/hacktricks) i [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) repozytoriów github.
|
||||
* **Podziel się sztuczkami hackingowymi, przesyłając PR-y do** [**HackTricks**](https://github.com/carlospolop/hacktricks) i [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) repozytoriów github.
|
||||
|
||||
</details>
|
||||
{% endhint %}
|
||||
|
||||
@@ -36,7 +36,7 @@ https://<Account-Name>.documents.azure.com:443/
|
||||
W ramach konta możesz utworzyć jedną lub więcej baz danych, które służą jako logiczne grupy kontenerów. Baza danych działa jako granica dla zarządzania zasobami i uprawnieniami użytkowników. Bazy danych mogą dzielić przydzieloną przepustowość między swoimi kontenerami lub przydzielać dedykowaną przepustowość do poszczególnych kontenerów.
|
||||
|
||||
#### Kontenery
|
||||
Podstawową jednostką przechowywania danych jest kontener, który przechowuje dokumenty JSON i jest automatycznie indeksowany w celu efektywnego zapytania. Kontenery są elastycznie skalowalne i rozproszone w obrębie partycji, które są określane przez zdefiniowany przez użytkownika klucz partycji. Klucz partycji jest kluczowy dla zapewnienia optymalnej wydajności i równomiernego rozkładu danych. Na przykład, kontener może przechowywać dane klientów, z "customerId" jako kluczem partycji.
|
||||
Podstawową jednostką przechowywania danych jest kontener, który przechowuje dokumenty JSON i jest automatycznie indeksowany w celu efektywnego zapytania. Kontenery są elastycznie skalowalne i rozproszone w obrębie partycji, które są określane przez klucz partycji zdefiniowany przez użytkownika. Klucz partycji jest kluczowy dla zapewnienia optymalnej wydajności i równomiernego rozkładu danych. Na przykład, kontener może przechowywać dane klientów, z "customerId" jako kluczem partycji.
|
||||
|
||||
#### Enumeracja
|
||||
|
||||
@@ -215,7 +215,7 @@ mongodb://<hostname>:<port>/<database>
|
||||
W MongoDB możesz utworzyć jedną lub więcej baz danych w ramach instancji. Każda baza danych służy jako logiczna grupa kolekcji i zapewnia granicę dla organizacji i zarządzania zasobami. Bazy danych pomagają oddzielić i zarządzać danymi logicznie, na przykład dla różnych aplikacji lub projektów.
|
||||
|
||||
#### Kolekcje
|
||||
Podstawową jednostką przechowywania danych w MongoDB jest kolekcja, która zawiera dokumenty i jest zaprojektowana do efektywnego zapytywania oraz elastycznego projektowania schematu. Kolekcje są elastycznie skalowalne i mogą obsługiwać operacje o wysokiej przepustowości w rozproszonym środowisku na wielu węzłach.
|
||||
Podstawową jednostką przechowywania danych w MongoDB jest kolekcja, która zawiera dokumenty i jest zaprojektowana do efektywnego zapytania oraz elastycznego projektowania schematu. Kolekcje są elastycznie skalowalne i mogą obsługiwać operacje o wysokiej przepustowości w rozproszonym środowisku na wielu węzłach.
|
||||
|
||||
#### Enumeracja
|
||||
|
||||
@@ -290,7 +290,7 @@ Get-AzCosmosDBMongoDBRoleDefinition -AccountName <account-name> -ResourceGroupNa
|
||||
|
||||
#### Połączenie
|
||||
|
||||
Tutaj hasło można znaleźć za pomocą kluczy lub metodą opisaną w sekcji privesc.
|
||||
Tutaj hasło możesz znaleźć za pomocą kluczy lub metodą opisaną w sekcji privesc.
|
||||
{% code overflow="wrap" %}
|
||||
```python
|
||||
from pymongo import MongoClient
|
||||
@@ -361,7 +361,7 @@ Ucz się i ćwicz Hacking GCP: <img src="../../../.gitbook/assets/image (2) (1).
|
||||
|
||||
* Sprawdź [**plany subskrypcyjne**](https://github.com/sponsors/carlospolop)!
|
||||
* **Dołącz do** 💬 [**grupy Discord**](https://discord.gg/hRep4RUj7f) lub [**grupy telegramowej**](https://t.me/peass) lub **śledź** nas na **Twitterze** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks_live)**.**
|
||||
* **Dziel się trikami hackingowymi, przesyłając PR-y do** [**HackTricks**](https://github.com/carlospolop/hacktricks) i [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) repozytoriów na githubie.
|
||||
* **Dziel się trikami hackingowymi, przesyłając PR-y do** [**HackTricks**](https://github.com/carlospolop/hacktricks) i [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) repozytoriów github.
|
||||
|
||||
</details>
|
||||
{% endhint %}
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
|
||||
## Podstawowe informacje
|
||||
|
||||
**Azure Function Apps** to **usługa obliczeniowa bezserwerowa**, która pozwala na uruchamianie małych fragmentów kodu, zwanych **funkcjami**, bez zarządzania infrastrukturą. Zostały zaprojektowane do wykonywania kodu w odpowiedzi na różne wyzwalacze, takie jak **żądania HTTP, timery lub zdarzenia z innych usług Azure**, takich jak Blob Storage czy Event Hubs. Function Apps obsługują wiele języków programowania, w tym C#, Python, JavaScript i Java, co czyni je wszechstronnymi do budowania **aplikacji opartych na zdarzeniach**, automatyzacji procesów roboczych lub integracji usług. Są opłacalne, ponieważ zazwyczaj płacisz tylko za czas obliczeniowy używany podczas uruchamiania kodu.
|
||||
**Azure Function Apps** to **usługa obliczeniowa bezserwerowa**, która pozwala na uruchamianie małych fragmentów kodu, zwanych **funkcjami**, bez zarządzania infrastrukturą. Zostały zaprojektowane do wykonywania kodu w odpowiedzi na różne wyzwalacze, takie jak **żądania HTTP, timery lub zdarzenia z innych usług Azure**, takich jak Blob Storage czy Event Hubs. Function Apps obsługują wiele języków programowania, w tym C#, Python, JavaScript i Java, co czyni je wszechstronnymi do budowania **aplikacji opartych na zdarzeniach**, automatyzacji procesów roboczych lub integracji usług. Są opłacalne, ponieważ zazwyczaj płacisz tylko za czas obliczeniowy użyty podczas uruchamiania kodu.
|
||||
|
||||
> [!NOTE]
|
||||
> Zauważ, że **Funkcje są podzbiorem App Services**, dlatego wiele funkcji omówionych tutaj będzie również używanych przez aplikacje tworzone jako Azure Apps (`webapp` w cli).
|
||||
@@ -14,12 +14,12 @@
|
||||
- **Plan Flex Consumption**: Oferuje **dynamiczne, oparte na zdarzeniach skalowanie** z ceną płatności za użycie, dodając lub usuwając instancje funkcji w zależności od popytu. Obsługuje **wirtualne sieci** i **wstępnie przydzielone instancje**, aby zredukować zimne uruchomienia, co czyni go odpowiednim dla **zmiennych obciążeń**, które nie wymagają wsparcia kontenerów.
|
||||
- **Plan Traditional Consumption**: Domyślna opcja bezserwerowa, w której **płacisz tylko za zasoby obliczeniowe, gdy funkcje są uruchamiane**. Automatycznie skaluje się w zależności od nadchodzących zdarzeń i zawiera **optymalizacje zimnego uruchomienia**, ale nie obsługuje wdrożeń kontenerów. Idealny dla **przerywanych obciążeń** wymagających automatycznego skalowania.
|
||||
- **Plan Premium**: Zaprojektowany dla **spójnej wydajności**, z **wstępnie podgrzanymi pracownikami**, aby wyeliminować zimne uruchomienia. Oferuje **wydłużone czasy wykonania, wirtualne sieci** i obsługuje **niestandardowe obrazy Linux**, co czyni go idealnym dla **aplikacji krytycznych dla misji**, które potrzebują wysokiej wydajności i zaawansowanych funkcji.
|
||||
- **Plan Dedicated**: Działa na dedykowanych maszynach wirtualnych z **przewidywalnym rozliczeniem** i obsługuje ręczne lub automatyczne skalowanie. Umożliwia uruchamianie wielu aplikacji w tym samym planie, zapewnia **izolację obliczeniową** i zapewnia **bezpieczny dostęp do sieci** za pośrednictwem środowisk App Service, co czyni go idealnym dla **aplikacji długoterminowych** wymagających spójnej alokacji zasobów.
|
||||
- **Container Apps**: Umożliwia wdrażanie **kontenerowych aplikacji funkcji** w zarządzanym środowisku, obok mikroserwisów i API. Obsługuje niestandardowe biblioteki, migrację aplikacji dziedzicznych i **przetwarzanie GPU**, eliminując zarządzanie klastrami Kubernetes. Idealny dla **opartych na zdarzeniach, skalowalnych aplikacji kontenerowych**.
|
||||
- **Plan Dedicated**: Działa na dedykowanych maszynach wirtualnych z **przewidywalnym rozliczeniem** i obsługuje ręczne lub automatyczne skalowanie. Umożliwia uruchamianie wielu aplikacji na tym samym planie, zapewnia **izolację obliczeniową** i zapewnia **bezpieczny dostęp do sieci** za pośrednictwem środowisk App Service, co czyni go idealnym dla **aplikacji długoterminowych** wymagających spójnej alokacji zasobów.
|
||||
- **Container Apps**: Umożliwia wdrażanie **kontenerowych aplikacji funkcji** w zarządzanym środowisku, obok mikroserwisów i interfejsów API. Obsługuje niestandardowe biblioteki, migrację aplikacji dziedzicznych i **przetwarzanie GPU**, eliminując zarządzanie klastrami Kubernetes. Idealny dla **opartych na zdarzeniach, skalowalnych aplikacji kontenerowych**.
|
||||
|
||||
### **Koszyki pamięci**
|
||||
|
||||
Podczas tworzenia nowej aplikacji funkcji, która nie jest kontenerowa (ale daje kod do uruchomienia), **kod i inne dane związane z funkcją będą przechowywane w koncie pamięci**. Domyślnie konsola internetowa utworzy nową dla każdej funkcji, aby przechować kod.
|
||||
Podczas tworzenia nowej aplikacji funkcji, która nie jest kontenerowa (ale dostarcza kod do uruchomienia), **kod i inne dane związane z funkcją będą przechowywane w koncie pamięci**. Domyślnie konsola internetowa utworzy nową dla każdej funkcji, aby przechować kod.
|
||||
|
||||
Co więcej, modyfikując kod wewnątrz koszyka (w różnych formatach, w jakich może być przechowywany), **kod aplikacji zostanie zmodyfikowany na nowy i wykonany** następnym razem, gdy funkcja zostanie wywołana.
|
||||
|
||||
@@ -30,9 +30,9 @@ Co więcej, modyfikując kod wewnątrz koszyka (w różnych formatach, w jakich
|
||||
|
||||
Możliwe jest również znalezienie **kluczy głównych i funkcji** przechowywanych w koncie pamięci w kontenerze **`azure-webjobs-secrets`** wewnątrz folderu **`<app-name>`** w plikach JSON, które można tam znaleźć.
|
||||
|
||||
Zauważ, że Funkcje pozwalają również na przechowywanie kodu w zdalnej lokalizacji, wskazując po prostu URL do niego.
|
||||
Zauważ, że Funkcje pozwalają również na przechowywanie kodu w zdalnej lokalizacji, wskazując po prostu adres URL do niego.
|
||||
|
||||
### Sieciowanie
|
||||
### Sieci
|
||||
|
||||
Używając wyzwalacza HTTP:
|
||||
|
||||
@@ -46,7 +46,7 @@ Używając wyzwalacza HTTP:
|
||||
|
||||
Możliwe jest skonfigurowanie zmiennych środowiskowych wewnątrz aplikacji, które mogą zawierać wrażliwe informacje. Co więcej, domyślnie zmienne środowiskowe **`AzureWebJobsStorage`** i **`WEBSITE_CONTENTAZUREFILECONNECTIONSTRING`** (wśród innych) są tworzone. Te są szczególnie interesujące, ponieważ **zawierają klucz konta do kontrolowania z PEŁNYMI uprawnieniami konta pamięci zawierającego dane aplikacji**. Te ustawienia są również potrzebne do wykonania kodu z konta pamięci.
|
||||
|
||||
Te zmienne środowiskowe lub parametry konfiguracyjne kontrolują również, jak funkcja wykonuje kod, na przykład jeśli **`WEBSITE_RUN_FROM_PACKAGE`** istnieje, wskaże URL, gdzie znajduje się kod aplikacji.
|
||||
Te zmienne środowiskowe lub parametry konfiguracyjne kontrolują również, jak funkcja wykonuje kod, na przykład jeśli **`WEBSITE_RUN_FROM_PACKAGE`** istnieje, wskaże adres URL, w którym znajduje się kod aplikacji.
|
||||
|
||||
### **Piaskownica funkcji**
|
||||
|
||||
@@ -84,10 +84,10 @@ Podczas tworzenia punktu końcowego wewnątrz funkcji za pomocą **wyzwalacza HT
|
||||
|
||||
**Rodzaje kluczy:**
|
||||
|
||||
- **Klucze funkcji:** Klucze funkcji mogą być domyślne lub zdefiniowane przez użytkownika i są zaprojektowane, aby przyznać dostęp wyłącznie do **konkretnych punktów końcowych funkcji** w aplikacji funkcji, co pozwala na bardziej szczegółowy dostęp do punktów końcowych.
|
||||
- **Klucze funkcji:** Klucze funkcji mogą być domyślne lub zdefiniowane przez użytkownika i są zaprojektowane w celu przyznania dostępu wyłącznie do **konkretnych punktów końcowych funkcji** w aplikacji funkcji, co pozwala na bardziej szczegółowy dostęp do punktów końcowych.
|
||||
- **Klucze hosta:** Klucze hosta, które mogą być również domyślne lub zdefiniowane przez użytkownika, zapewniają dostęp do **wszystkich punktów końcowych funkcji w aplikacji funkcji z poziomem dostępu FUNCTION**.
|
||||
- **Klucz główny:** Klucz główny (`_master`) służy jako klucz administracyjny, który oferuje podwyższone uprawnienia, w tym dostęp do wszystkich punktów końcowych funkcji (w tym poziom ADMIN). Ten **klucz nie może być cofnięty.**
|
||||
- **Klucze systemowe:** Klucze systemowe są **zarządzane przez konkretne rozszerzenia** i są wymagane do uzyskania dostępu do punktów końcowych webhooków używanych przez wewnętrzne komponenty. Przykłady obejmują wyzwalacz Event Grid i Durable Functions, które wykorzystują klucze systemowe do bezpiecznej interakcji z ich odpowiednimi API.
|
||||
- **Klucze systemowe:** Klucze systemowe są **zarządzane przez konkretne rozszerzenia** i są wymagane do uzyskania dostępu do punktów końcowych webhooków używanych przez wewnętrzne komponenty. Przykłady obejmują wyzwalacz Event Grid i Durable Functions, które wykorzystują klucze systemowe do bezpiecznej interakcji z ich odpowiednimi interfejsami API.
|
||||
|
||||
> [!TIP]
|
||||
> Przykład dostępu do punktu końcowego API funkcji za pomocą klucza:
|
||||
@@ -96,7 +96,7 @@ Podczas tworzenia punktu końcowego wewnątrz funkcji za pomocą **wyzwalacza HT
|
||||
|
||||
### Podstawowa autoryzacja
|
||||
|
||||
Podobnie jak w App Services, Funkcje również obsługują podstawową autoryzację do łączenia się z **SCM** i **FTP** w celu wdrożenia kodu za pomocą **nazwa użytkownika i hasła w URL** dostarczonym przez Azure. Więcej informacji na ten temat w:
|
||||
Podobnie jak w App Services, Funkcje również obsługują podstawową autoryzację do łączenia się z **SCM** i **FTP** w celu wdrożenia kodu za pomocą **nazwa użytkownika i hasło w URL** dostarczonym przez Azure. Więcej informacji na ten temat w:
|
||||
|
||||
{{#ref}}
|
||||
az-app-services.md
|
||||
|
||||
@@ -21,7 +21,7 @@ Możliwe jest wyświetlenie LogicApp w formie graficznej:
|
||||
|
||||
lub sprawdzenie kodu w sekcji "**Widok kodu aplikacji logicznej**".
|
||||
|
||||
### Ochrona SSRF
|
||||
### Ochrona przed SSRF
|
||||
|
||||
Nawet jeśli znajdziesz **Logic App podatny na SSRF**, nie będziesz w stanie uzyskać dostępu do poświadczeń z metadanych, ponieważ Logic Apps na to nie pozwala.
|
||||
|
||||
@@ -148,10 +148,10 @@ Get-AzLogicAppTriggerHistory -ResourceGroupName "<ResourceGroupName>" -Name "<Lo
|
||||
|
||||
* Schematy: Zarządzaj schematami XML do walidacji i przetwarzania wiadomości w swoim koncie integracyjnym.
|
||||
* Mapy: Konfiguruj transformacje oparte na XSLT, aby konwertować formaty danych w ramach swoich przepływów pracy integracyjnych.
|
||||
* Zestawy: Zarządzaj zestawami konta integracyjnego, aby uprościć logikę i przetwarzanie danych.
|
||||
* Zbiory: Zarządzaj zbiorami konta integracyjnego, aby uprościć logikę i przetwarzanie danych.
|
||||
* Certyfikaty: Obsługuj certyfikaty do szyfrowania i podpisywania wiadomości, zapewniając bezpieczną komunikację.
|
||||
* Partnerzy: Zarządzaj informacjami o partnerach handlowych dla transakcji B2B, umożliwiając płynne integracje.
|
||||
* Umowy: Konfiguruj zasady i ustawienia wymiany danych z partnerami handlowymi (np. EDI, AS2).
|
||||
* Umowy: Konfiguruj zasady i ustawienia dotyczące wymiany danych z partnerami handlowymi (np. EDI, AS2).
|
||||
* Konfiguracje wsadowe: Zarządzaj konfiguracjami przetwarzania wsadowego, aby grupować i przetwarzać wiadomości efektywnie.
|
||||
* RosettaNet PIP: Konfiguruj procesy interfejsu partnera RosettaNet (PIP) w celu standaryzacji komunikacji B2B.
|
||||
|
||||
@@ -283,7 +283,7 @@ Ucz się i ćwicz Hacking GCP: <img src="../../../.gitbook/assets/image (2) (1).
|
||||
|
||||
* Sprawdź [**plany subskrypcyjne**](https://github.com/sponsors/carlospolop)!
|
||||
* **Dołącz do** 💬 [**grupy Discord**](https://discord.gg/hRep4RUj7f) lub [**grupy telegramowej**](https://t.me/peass) lub **śledź** nas na **Twitterze** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks_live)**.**
|
||||
* **Dziel się trikami hackingowymi, przesyłając PR-y do** [**HackTricks**](https://github.com/carlospolop/hacktricks) i [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) repozytoriów na githubie.
|
||||
* **Dziel się trikami hackingowymi, przesyłając PR-y do** [**HackTricks**](https://github.com/carlospolop/hacktricks) i [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) repozytoriów na GitHubie.
|
||||
|
||||
</details>
|
||||
{% endhint %}
|
||||
|
||||
@@ -6,19 +6,19 @@
|
||||
|
||||
Azure Service Bus to oparta na chmurze **usługa komunikacyjna**, zaprojektowana w celu umożliwienia niezawodnej **komunikacji między różnymi częściami aplikacji lub oddzielnymi aplikacjami**. Działa jako bezpieczny pośrednik, zapewniając, że wiadomości są bezpiecznie dostarczane, nawet jeśli nadawca i odbiorca nie działają jednocześnie. Dzięki odseparowaniu systemów, pozwala aplikacjom działać niezależnie, jednocześnie wymieniając dane lub instrukcje. Jest szczególnie przydatna w scenariuszach wymagających równoważenia obciążenia między wieloma pracownikami, niezawodnego dostarczania wiadomości lub złożonej koordynacji, takiej jak przetwarzanie zadań w kolejności lub bezpieczne zarządzanie dostępem.
|
||||
|
||||
### Kluczowe Koncepcje
|
||||
### Kluczowe pojęcia
|
||||
|
||||
1. **Kolejki:** jej celem jest przechowywanie wiadomości, aż odbiorca będzie gotowy.
|
||||
- Wiadomości są uporządkowane, opatrzone znacznikami czasu i trwale przechowywane.
|
||||
- Dostarczane w trybie pull (na żądanie).
|
||||
- Wspiera komunikację punkt-punkt.
|
||||
2. **Tematy:** Komunikacja publish-subscribe do nadawania.
|
||||
2. **Tematy:** komunikacja typu publish-subscribe do nadawania.
|
||||
- Wiele niezależnych subskrypcji otrzymuje kopie wiadomości.
|
||||
- Subskrypcje mogą mieć zasady/filtry do kontrolowania dostarczania lub dodawania metadanych.
|
||||
- Wspiera komunikację wiele-do-wielu.
|
||||
3. **Przestrzenie nazw:** Kontener dla wszystkich komponentów komunikacyjnych, kolejek i tematów, jest jak własny kawałek potężnego klastra Azure, zapewniający dedykowaną pojemność i opcjonalnie rozciągający się na trzy strefy dostępności.
|
||||
|
||||
### Zaawansowane Funkcje
|
||||
### Zaawansowane funkcje
|
||||
|
||||
Niektóre zaawansowane funkcje to:
|
||||
|
||||
@@ -28,7 +28,7 @@ Niektóre zaawansowane funkcje to:
|
||||
- **Zaplanuj dostawę**: Opóźnia przetwarzanie wiadomości na przyszłe zadania.
|
||||
- **Odwlekanie wiadomości**: Opóźnia pobieranie wiadomości do momentu, gdy będzie to możliwe.
|
||||
- **Transakcje**: Grupuje operacje w atomowe wykonanie.
|
||||
- **Filtry i działania**: Stosuje zasady do filtrowania lub adnotacji wiadomości.
|
||||
- **Filtry i akcje**: Stosuje zasady do filtrowania lub adnotacji wiadomości.
|
||||
- **Auto-usuwanie w bezczynności**: Usuwa kolejki po braku aktywności (min: 5 minut).
|
||||
- **Wykrywanie duplikatów**: Usuwa duplikaty wiadomości podczas ponownych wysyłek.
|
||||
- **Usuwanie wsadowe**: Hurtowo usuwa wygasłe lub niepotrzebne wiadomości.
|
||||
|
||||
@@ -172,9 +172,9 @@ Możesz znaleźć ładny przykład generowania aplikacji webowej pod tym linkiem
|
||||
2. W portalu Azure utwórz Static Web App, konfigurując dostęp do GitHub i wybierając wcześniej forkowane nowe repozytorium
|
||||
3. Utwórz je, poczekaj kilka minut i sprawdź swoją nową stronę!
|
||||
|
||||
## Eskalacja uprawnień i post eksploatacja
|
||||
## Eskalacja uprawnień i post eksploitacja
|
||||
|
||||
Wszystkie informacje na temat eskalacji uprawnień i post eksploatacji w Azure Static Web Apps można znaleźć pod tym linkiem:
|
||||
Wszystkie informacje na temat eskalacji uprawnień i post eksploitacji w Azure Static Web Apps można znaleźć pod tym linkiem:
|
||||
|
||||
{{#ref}}
|
||||
../az-privilege-escalation/az-static-web-apps-privesc.md
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
|
||||
#### **Inne właściwości (Właściwości niestandardowe)**
|
||||
|
||||
- Oprócz PartitionKey i RowKey, encja może mieć dodatkowe **właściwości niestandardowe do przechowywania danych**. Są to właściwości zdefiniowane przez użytkownika i działają jak kolumny w tradycyjnej bazie danych.
|
||||
- Oprócz PartitionKey i RowKey, encja może mieć dodatkowe **właściwości niestandardowe do przechowywania danych**. Są one definiowane przez użytkownika i działają jak kolumny w tradycyjnej bazie danych.
|
||||
- Właściwości są przechowywane jako **pary klucz-wartość**.
|
||||
- Przykład: `Name`, `Age`, `Title` mogą być właściwościami niestandardowymi dla pracownika.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user