Az - SQL

Support HackTricks

Podstawowe informacje

Z dokumentacji: Azure SQL to rodzina zarządzanych, bezpiecznych i inteligentnych produktów, które wykorzystują silnik bazy danych SQL Server w chmurze Azure. Oznacza to, że nie musisz martwić się o fizyczne zarządzanie swoimi serwerami, a możesz skupić się na zarządzaniu swoimi danymi.

Azure SQL składa się z trzech głównych ofert:

  1. Azure SQL Database: To w pełni zarządzana usługa bazy danych, która pozwala na hostowanie indywidualnych baz danych w chmurze Azure. Oferuje wbudowaną inteligencję, która uczy się twoich unikalnych wzorców bazy danych i dostarcza spersonalizowane rekomendacje oraz automatyczne dostosowywanie.

  2. Azure SQL Managed Instance: To rozwiązanie dla większych wdrożeń, obejmujących całe instancje SQL Server. Oferuje niemal 100% zgodności z najnowszym silnikiem bazy danych SQL Server w wersji lokalnej (Enterprise Edition), który zapewnia natywną implementację wirtualnej sieci (VNet), odpowiadającą na powszechne obawy dotyczące bezpieczeństwa, oraz model biznesowy korzystny dla klientów SQL Server w wersji lokalnej.

  3. Azure SQL Server na maszynach wirtualnych Azure: To infrastruktura jako usługa (IaaS) i jest najlepsza dla migracji, gdzie chcesz mieć kontrolę nad systemem operacyjnym i instancją SQL Server, jakby to był serwer działający lokalnie.

Enumeracja

az sql server list
az sql server show --resource-group <res-grp> --name <name>
az sql db list --server <server> --resource-group <res-grp>

az sql mi list
az sql mi show --resource-group <res-grp> --name <name>
az sql midb list
az sql midb show --resource-group <res-grp> --name <name>

az sql vm list
az sql vm show --resource-group <res-grp> --name <name>

Połącz się i uruchom zapytania SQL

Możesz znaleźć ciąg połączenia (zawierający dane uwierzytelniające) z przykładu enumerowania Az WebApp:

function invoke-sql{
param($query)
$Connection_string = "Server=tcp:supercorp.database.windows.net,1433;Initial Catalog=flag;Persist Security Info=False;User ID=db_read;Password=gAegH!324fAG!#1fht;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;"
$Connection = New-Object System.Data.SqlClient.SqlConnection $Connection_string
$Connection.Open()
$Command = New-Object System.Data.SqlClient.SqlCommand
$Command.Connection = $Connection
$Command.CommandText = $query
$Reader = $Command.ExecuteReader()
while ($Reader.Read()) {
$Reader.GetValue(0)
}
$Connection.Close()
}

invoke-sql 'Select Distinct TABLE_NAME From information_schema.TABLES;'

Odniesienia

Wsparcie HackTricks

Last updated