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
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 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
Informations récupérées : aucune
5
2.2.2
Metasploit framework
use auxiliary/scanner/mssql/mssql_ping set RHOSTS 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
Informations récupérées : aucune
2.3.2 Metasploit framework use auxiliary/scanner/mssql/mssql_ping set RHOSTS run
Informations récupérées : aucune
6
3. Obtention des « credentials » use auxiliary/scanner/mssql/mssql_login info
set RHOSTS set PASS_FILE set RPORT 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