Az - Table Storage
Tip
Ucz się & ćwicz AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Ucz się & ćwicz GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Ucz się & ćwicz Az Hacking:HackTricks Training Azure Red Team Expert (AzRTE)
Wspieraj HackTricks
- Sprawdź subscription plans!
- Dołącz do 💬 Discord group lub telegram group lub śledź nas na Twitterze 🐦 @hacktricks_live.
- Podziel się hacking tricks, zgłaszając PRy do HackTricks i HackTricks Cloud github repos.
Podstawowe informacje
Azure Table Storage to magazyn NoSQL typu klucz-wartość zaprojektowany do przechowywania dużych wolumenów ustrukturyzowanych, nieliniowych danych. Oferuje wysoką dostępność, niskie opóźnienia i skalowalność, aby efektywnie obsługiwać duże zbiory danych. Dane są zorganizowane w tabelach, a każda encja jest identyfikowana przez klucz partycji i klucz wiersza, co umożliwia szybkie wyszukiwanie. Obsługuje funkcje takie jak szyfrowanie w spoczynku, kontrola dostępu oparta na rolach oraz podpisy dostępu współdzielonego dla bezpiecznego, zarządzanego przechowywania odpowiedniego dla szerokiego zakresu aplikacji.
Nie ma wbudowanego mechanizmu kopii zapasowej dla magazynu tabel.
Klucze
PartitionKey
- PartitionKey grupuje encje w logiczne partycje. Encje z tym samym PartitionKey są przechowywane razem, co poprawia wydajność zapytań i skalowalność.
- Przykład: W tabeli przechowującej dane pracowników,
PartitionKeymoże reprezentować dział, np."HR"lub"IT".
RowKey
- RowKey jest unikalnym identyfikatorem dla encji w obrębie partycji. W połączeniu z PartitionKey zapewnia, że każda encja w tabeli ma globalnie unikalny identyfikator.
- Przykład: Dla partycji
"HR",RowKeymoże być identyfikatorem pracownika, np."12345".
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ą 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,Titlemogą być właściwościami niestandardowymi dla pracownika.
Enumeracja
# Get storage accounts
az storage account list
# List tables
az storage table list --account-name <name>
# Read table
az storage entity query \
--account-name <name> \
--table-name <t-name> \
--top 10
# Write table
az storage entity insert \
--account-name <STORAGE_ACCOUNT_NAME> \
--table-name <TABLE_NAME> \
--entity PartitionKey=<PARTITION_KEY> RowKey=<ROW_KEY> <PROPERTY_KEY>=<PROPERTY_VALUE>
# Write example
az storage entity insert \
--account-name mystorageaccount \
--table-name mytable \
--entity PartitionKey=HR RowKey=12345 Name="John Doe" Age=30 Title="Manager"
# Update row
az storage entity merge \
--account-name mystorageaccount \
--table-name mytable \
--entity PartitionKey=pk1 RowKey=rk1 Age=31
Note
Domyślnie
azcli użyje klucza konta do podpisania klucza i wykonania akcji. Aby użyć uprawnień głównego identyfikatora Entra ID, użyj parametrów--auth-mode login.
Tip
Użyj parametru
--account-key, aby wskazać klucz konta do użycia
Użyj parametru--sas-tokenz tokenem SAS, aby uzyskać dostęp za pomocą tokena SAS
Privilege Escalation
Tak samo jak privesc przechowywania:
Post Exploitation
Az - Table Storage Post Exploitation
Persistence
Tak samo jak trwałość przechowywania:
Tip
Ucz się & ćwicz AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Ucz się & ćwicz GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Ucz się & ćwicz Az Hacking:HackTricks Training Azure Red Team Expert (AzRTE)
Wspieraj HackTricks
- Sprawdź subscription plans!
- Dołącz do 💬 Discord group lub telegram group lub śledź nas na Twitterze 🐦 @hacktricks_live.
- Podziel się hacking tricks, zgłaszając PRy do HackTricks i HackTricks Cloud github repos.
HackTricks Cloud

