Az - SQL

支持 HackTricks

基本信息

来自文档: Azure SQL 是一系列在 Azure 云中使用 SQL Server 数据库引擎 的托管、安全和智能产品。这意味着您无需担心服务器的物理管理,可以专注于管理数据。

Azure SQL 包括三个主要产品:

  1. Azure SQL 数据库:这是一个 完全托管的数据库服务,允许您在 Azure 云中托管单个数据库。它提供内置智能,可以学习您独特的数据库模式,并提供定制建议和自动调整。

  2. Azure SQL 托管实例:适用于更大规模、整个 SQL Server 实例范围的部署。它提供与最新的本地 SQL Server(企业版)数据库引擎几乎 100% 的兼容性,提供了一个解决常见安全问题的本地虚拟网络 (VNet) 实现,并为本地 SQL Server 客户提供了有利的商业模式。

  3. Azure VM 上的 Azure SQL Server:这是基础设施即服务 (IaaS),适用于需要 控制操作系统和 SQL Server 实例 的迁移,就像在本地运行的服务器一样。

枚举

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>

连接并运行 SQL 查询

您可以从示例 枚举 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;'

参考资料

支持 HackTricks

Last updated