Az - SQL

Support HackTricks

Informazioni di base

Dal documento: Azure SQL è una famiglia di prodotti gestiti, sicuri e intelligenti che utilizzano il motore di database SQL Server nel cloud Azure. Questo significa che non devi preoccuparti dell'amministrazione fisica dei tuoi server e puoi concentrarti sulla gestione dei tuoi dati.

Azure SQL consiste in tre offerte principali:

  1. Azure SQL Database: Questo è un servizio di database completamente gestito, che ti consente di ospitare database individuali nel cloud Azure. Offre intelligenza integrata che apprende i tuoi modelli di database unici e fornisce raccomandazioni personalizzate e ottimizzazione automatica.

  2. Azure SQL Managed Instance: Questo è per distribuzioni su larga scala, a livello di intera istanza SQL Server. Fornisce quasi il 100% di compatibilità con l'ultima versione del motore di database SQL Server on-premises (Enterprise Edition), che offre un'implementazione nativa della rete virtuale (VNet) che affronta le comuni preoccupazioni di sicurezza, e un modello di business favorevole per i clienti SQL Server on-premises.

  3. Azure SQL Server su Azure VMs: Questo è Infrastructure as a Service (IaaS) ed è migliore per le migrazioni in cui desideri controllo sul sistema operativo e sull'istanza di SQL Server, come se fosse un server in esecuzione on-premises.

Enumerazione

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>

Connettersi ed eseguire query SQL

Potresti trovare una stringa di connessione (contenente credenziali) dall'esempio enumerando un 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;'

Riferimenti

Supporta HackTricks

Last updated