SQL Server pentesting (v2

)
Tutorial conçu et rédigé par Michel de CREVOISIER – Septembre 2013

1

SOURCES
Pentest :
 http://www.offensive-security.com/metasploit-unleashed/Hunting_For_MSSQL
 http://www.offensive-security.com/metasploit-unleashed/Scanner_MSSQL_Auxiliary_Modules
 http://pentestlab.wordpress.com/2013/03/18/penetration-testing-sql-servers/
Nmap :
 http://www.securesolutions.no/zenmap-preset-scans/

ARTICLES RELATIONNES
Vous trouverez également d’autres articles en relation avec SQL Server :
 Installation de SQL Server (tuto)
 Sécurisation d’un serveur SQL (tuto)
 SQL Server pentesting (tuto)
 Outils pour SQL Server (tuto)
 Installation de Reporting Services en mode natif (tuto)
 Installation de Reporting Services en mode SharePoint (tuto)

2

INDEX
SOURCES.............................................................................................................................................................. 2
INDEX................................................................................................................................................................... 3
1.

2.

3.

Environnement et outils ............................................................................................................................. 4
1.1

Système d’exploitation et SGBD .......................................................................................................... 4

1.2

Outils de pentesting ............................................................................................................................ 4

Découverte de l’environnement ................................................................................................................ 4
2.1

Service SQL Browser activé ................................................................................................................. 4

2.2

Instance masquée................................................................................................................................ 5

2.3

Instance statique ................................................................................................................................. 6

Obtention des « credentials » .................................................................................................................... 7

Conclusion ........................................................................................................................................................... 8

3

1. Environnement et outils
1.1 Système d’exploitation et SGBD
Système d’exploitation : Server 2008 R2 SP1 Enterprise (mise à jour d’août 2013)
SGBD : SQL Server 2008 R2 Enterprise

1.2 Outils de pentesting
Distribution : Kali Linux 1.0.4
Scanner de port : Nmap 6.40
Bibliothèque d’exploits : Metasploit 4.7

2. Découverte de l’environnement
2.1 Service SQL Browser activé
Configuration (par défaut) :
 Instance en mode dynamique
 Service SQL Server Browser activé
 Tous les protocoles actifs
 Pare-feu activé et port UDP 1434 ouvert

2.1.1 Nmap
nmap –sU –p 1434 –sV <IP>

Informations récupérées :
 Version de SQL Server
 Nom du serveur
 Port dynamique de l’instance

4

2.1.2 Metasploit framework
use auxiliary/scanner/mssql/mssql_ping
set RHOSTS <IP>
set THREADS 20
run

Informations récupérées :
 Version de SQL Server
 Nom du serveur
 Port dynamique de l’instance
 Nom de l’instance
 Etat du cluster

2.2 Instance masquée
Contexte :
 Instance en mode dynamique
 Service SQL Server Browser activé
 Tous les protocoles actifs
 Pare-feu activé et port UDP 1434 ouvert
 Instance masquée

2.2.1 Nmap
nmap –sT –p 1434 –sV <IP>

Informations récupérées : aucune

5

2.2.2

Metasploit framework

use auxiliary/scanner/mssql/mssql_ping
set RHOSTS <IP>
run

Informations récupérées : aucune

2.3 Instance statique
Contexte :
 Instance en mode statique
 Service SQL Server Browser activé
 Tous les protocoles actifs
 Pare-feu activé et port UDP 1434 ouvert

2.3.1 Nmap
nmap –sT –p 1434 –sV <IP>

Informations récupérées : aucune

2.3.2 Metasploit framework
use auxiliary/scanner/mssql/mssql_ping
set RHOSTS <IP>
run

Informations récupérées : aucune

6

3. Obtention des « credentials »
use auxiliary/scanner/mssql/mssql_login
info

set RHOSTS <IP>
set PASS_FILE <txt password file>
set RPORT <port>
run

7

Conclusion
Après avoir effectué les différents « pentests » sur chacune des configurations de SQL Server
(instances Dynamique, Masquée et Statique), fort est de constater que le service SQL Browser
constitue clairement une mine d’information pour les hackers, et que de ce fait il contribue
grandement à la préparation d’attaques sophistiquées à destination des infrastructures Windows et
SQL Server.
A cet égard, je vous invite à lire mon guide de sécurisation de façon à garantir la sécurité de vos
infrastructures SQL Server.

N’hésitez pas à m’envoyer vos commentaires ou retours à l’adresse suivante :
m.decrevoisier A-R-0-B-A-5 outlook . com

Soyez-en d’ores et déjà remercié

8