Az - File Shares

Reading time: 8 minutes

tip

AWS हैकिंग सीखें और अभ्यास करें:HackTricks Training AWS Red Team Expert (ARTE)
GCP हैकिंग सीखें और अभ्यास करें: HackTricks Training GCP Red Team Expert (GRTE) Azure हैकिंग सीखें और अभ्यास करें: HackTricks Training Azure Red Team Expert (AzRTE)

HackTricks का समर्थन करें

Basic Information

Azure Files एक पूरी तरह से प्रबंधित क्लाउड फ़ाइल स्टोरेज सेवा है जो साझा फ़ाइल स्टोरेज प्रदान करती है जिसे मानक SMB (Server Message Block) और NFS (Network File System) प्रोटोकॉल के माध्यम से एक्सेस किया जा सकता है। हालांकि मुख्य प्रोटोकॉल SMB है, NFS Azure फ़ाइल शेयर Windows के लिए समर्थित नहीं हैं (के अनुसार docs)। यह आपको अत्यधिक उपलब्ध नेटवर्क फ़ाइल शेयर बनाने की अनुमति देता है जिन्हें कई वर्चुअल मशीनों (VMs) या ऑन-प्रिमाइसेस सिस्टम द्वारा एक साथ एक्सेस किया जा सकता है, जिससे वातावरणों के बीच फ़ाइल साझा करना आसान हो जाता है।

Access Tiers

  • Transaction Optimized: लेन-देन-भारी संचालन के लिए अनुकूलित।
  • Hot: लेन-देन और स्टोरेज के बीच संतुलित।
  • Cool: स्टोरेज के लिए लागत-कुशल।
  • Premium: उच्च-प्रदर्शन फ़ाइल स्टोरेज जो कम-लेटेंसी और IOPS-गहन कार्यभार के लिए अनुकूलित है।

Backups

  • Daily backup: प्रत्येक दिन एक बैकअप बिंदु एक निर्दिष्ट समय (जैसे 19.30 UTC) पर बनाया जाता है और 1 से 200 दिनों के लिए संग्रहीत किया जाता है।
  • Weekly backup: प्रत्येक सप्ताह एक बैकअप बिंदु एक निर्दिष्ट दिन और समय (रविवार को 19.30) पर बनाया जाता है और 1 से 200 सप्ताह के लिए संग्रहीत किया जाता है।
  • Monthly backup: प्रत्येक महीने एक बैकअप बिंदु एक निर्दिष्ट दिन और समय (जैसे पहले रविवार को 19.30) पर बनाया जाता है और 1 से 120 महीनों के लिए संग्रहीत किया जाता है।
  • Yearly backup: प्रत्येक वर्ष एक बैकअप बिंदु एक निर्दिष्ट दिन और समय (जैसे जनवरी के पहले रविवार को 19.30) पर बनाया जाता है और 1 से 10 वर्षों के लिए संग्रहीत किया जाता है।
  • किसी भी समय मैनुअल बैकअप और स्नैपशॉट करना भी संभव है। इस संदर्भ में बैकअप और स्नैपशॉट वास्तव में समान हैं।

Supported Authentications via SMB

  • On-premises AD DS Authentication: यह ऑन-प्रिमाइसेस Active Directory क्रेडेंशियल्स का उपयोग करता है जो Microsoft Entra ID के साथ समन्वयित होते हैं। इसके लिए ऑन-प्रिमाइसेस AD DS से नेटवर्क कनेक्टिविटी की आवश्यकता होती है।
  • Microsoft Entra Domain Services Authentication: यह Microsoft Entra Domain Services (क्लाउड-आधारित AD) का उपयोग करके Microsoft Entra क्रेडेंशियल्स का उपयोग करके एक्सेस प्रदान करता है।
  • Microsoft Entra Kerberos for Hybrid Identities: यह Microsoft Entra उपयोगकर्ताओं को इंटरनेट के माध्यम से Kerberos का उपयोग करके Azure फ़ाइल शेयरों को प्रमाणित करने की अनुमति देता है। यह हाइब्रिड Microsoft Entra जुड़े या Microsoft Entra जुड़े VMs का समर्थन करता है बिना ऑन-प्रिमाइसेस डोमेन कंट्रोलर्स से कनेक्टिविटी की आवश्यकता के। लेकिन यह केवल क्लाउड पहचान का समर्थन नहीं करता है।
  • AD Kerberos Authentication for Linux Clients: यह Linux क्लाइंट्स को ऑन-प्रिमाइसेस AD DS या Microsoft Entra Domain Services के माध्यम से SMB प्रमाणीकरण के लिए Kerberos का उपयोग करने की अनुमति देता है।

Enumeration

bash
# Get storage accounts
az storage account list #Get the account name from here

# List file shares
az storage share list --account-name <name>
az storage share-rm list --storage-account <name> # To see the deleted ones too --include-deleted
# Get dirs/files inside the share
az storage file list --account-name <name> --share-name <share-name>
## If type is "dir", you can continue enumerating files inside of it
az storage file list --account-name <name> --share-name <prev_dir/share-name>
# Download a complete share (with directories and files inside of them)
az storage file download-batch -d . --source <share-name> --account-name <name>
# List snapshots
az storage share snapshot --name <share-name>
# List file shares, including deleted ones
az rest --method GET \
--url "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{storageAccountName}/fileServices/default/shares?%24skipToken=&%24maxpagesize=20&%24filter=&%24expand=deleted&api-version=2019-06-01"

# Get snapshots/backups
az storage share list --account-name <name> --include-snapshots --query "[?snapshot != null]"
# List contents of a snapshot/backup
az storage file list --account-name <name> --share-name <share-name> --snapshot <snapshot-version> #e.g. "2024-11-25T11:26:59.0000000Z"
# Download snapshot/backup
az storage file download-batch -d . --account-name <name> --source <share-name> --snapshot <snapshot-version>

note

डिफ़ॉल्ट रूप से az cli एक खाता कुंजी का उपयोग करेगा एक कुंजी पर हस्ताक्षर करने और क्रिया करने के लिए। Entra ID प्रमुख विशेषाधिकारों का उपयोग करने के लिए --auth-mode login --enable-file-backup-request-intent पैरामीटर का उपयोग करें।

tip

उपयोग करें पैरामीटर --account-key यह इंगित करने के लिए कि किस खाता कुंजी का उपयोग करना है
उपयोग करें पैरामीटर --sas-token SAS टोकन के साथ SAS टोकन के माध्यम से पहुँचने के लिए

कनेक्शन

ये स्क्रिप्ट्स हैं जो Azure ने लेखन के समय फ़ाइल साझा करने के लिए प्रस्तावित की थीं:

आपको <STORAGE-ACCOUNT>, <ACCESS-KEY> और <FILE-SHARE-NAME> प्लेसहोल्डर्स को बदलना होगा।

bash
$connectTestResult = Test-NetConnection -ComputerName filescontainersrdtfgvhb.file.core.windows.net -Port 445
if ($connectTestResult.TcpTestSucceeded) {
# Save the password so the drive will persist on reboot
cmd.exe /C "cmdkey /add:`"<STORAGE-ACCOUNT>.file.core.windows.net`" /user:`"localhost\<STORAGE-ACCOUNT>`" /pass:`"<ACCESS-KEY>`""
# Mount the drive
New-PSDrive -Name Z -PSProvider FileSystem -Root "\\<STORAGE-ACCOUNT>.file.core.windows.net\<FILE-SHARE-NAME>" -Persist
} else {
Write-Error -Message "Unable to reach the Azure storage account via port 445. Check to make sure your organization or ISP is not blocking port 445, or use Azure P2S VPN, Azure S2S VPN, or Express Route to tunnel SMB traffic over a different port."
}

नियमित स्टोरेज एन्यूमरेशन (एक्सेस की, SAS...)

Az - Storage Accounts & Blobs

विशेषाधिकार वृद्धि

स्टोरेज प्रिवेस्क के समान:

Az - Storage Privesc

पोस्ट एक्सप्लॉइटेशन

Az - File Share Post Exploitation

स्थिरता

स्टोरेज स्थिरता के समान:

Az - Storage Persistence

tip

AWS हैकिंग सीखें और अभ्यास करें:HackTricks Training AWS Red Team Expert (ARTE)
GCP हैकिंग सीखें और अभ्यास करें: HackTricks Training GCP Red Team Expert (GRTE) Azure हैकिंग सीखें और अभ्यास करें: HackTricks Training Azure Red Team Expert (AzRTE)

HackTricks का समर्थन करें