SlideShare uma empresa Scribd logo
1 de 46
LA SÉCURITÉ DANS SQL SERVER ET LES
NOUVEAUTÉS DE LA VERSION 2012
Rejoignez la Communauté
SPEAKER
David BARBARIN
 Travaille avec SQL Server depuis 2003.
 Consultant et formateur SQL Server.
 Senior Consultant SQL Server @ Pragmantic SA.
 SQL Server MVP.
 http://www.pragmantic.com/
 http://blog.developpez.com/mikedavem/
 http://mikedavem.developpez.com/
SOMMAIRE
•SQL Server et son environnement
•Sécuriser une instance SQL Server
•Sécurité des sauvegardes
•Audits
4
POURQUOI SECURISER UN SERVEUR
DE BASES DE DONNEES ?
•Hébergement des données d’entreprises
(Finance, clients, contacts, ventes, employés …)
•Peut avoir un impact business important
•Compliance avec les standards de sécurité et
de régulation de en plus en plus omniprésente
5
SQL SLAMMER LE DEBUT D’UNE PRISE DE
CONSCIENCE DE LA SECURITE
• Ver qui réside en mémoire et qui exploite une faille dans le protocole de
résolution de nom de SQL Server (UDP 1434)
• Utilise l’ensemble de la bande passante pour scanner le réseau et se répliquer
sur d’autres serveurs
• Premier patch disponible en juillet 2002
• Outils de déploiement des patchs de sécurité limité
• Trop de serveurs SQL exposés sans firewall
• Pic d’activité : scan de 55 millions de serveurs / sec. Ce nombre est doubé
toutes les 8.5 sec
• 75 000 hôtes infectés en 10 minutes
6
SQL SLAMMER LE DEBUT D’UNE PRISE DE
CONSCIENCE DE LA SECURITE
7
SQL SERVER ET SON
ENVIRONNEMENT
8
SQL SERVER ET SON ENVIRONNEMENT
9
Réseau
Stockage
Windows
SQL
Server
SQL SERVER ET SON ENVIRONNEMENT
• Utilisation d’un firewall
• Architecture des réseaux
• Choix d’un VPN ou d’une ligne dédiée
• Chiffrement de la connexion (SSL, TLS, IPSEC)
• Contrôle d’accès aux bornes wifi
• Désactivation des ports des switchs non utilisés
• Contrôle des accès physiques au datacenter
• Outsourcing (garantie des sociétés externes sur la
protection des données)
• Utilisation illicite d’un poste utilisateur non verrouillé
• Social Engineering
1
SQL SERVER ET SON ENVIRONNEMENT
• Auditer la sécurité de son réseau est indispensable
• Comment ?
oTest d’intrusion interne depuis l’extérieur ou l’intérieur du réseau
oAppel à des entreprises spécialisées
oProcessus d’amélioration continue
1
SQL SERVER ET SON ENVIRONNEMENT
• Cartes HBA
o L’ensemble des IO est chiffré (lecture et écriture)
o La charge de travail se focalise essentiellement au niveau de la
CPU des cartes HBA
o Impact sur les performances IO en cas de charge de travail
importante (Possibilité de multiplier les cartes HBA)
o Peu de vendeurs implémentent le chiffrement à ce niveau
(Emulex)
• MPIO
o Chiffrement des données au niveau du flux d’écriture
o EMC, PowerPath et clé RSA. + gestion des certificats par RKM
o Impact sur les performances
1
SQL SERVER ET SON ENVIRONNEMENT
• SQL Server cohabite avant tout avec un système
d’exploitation !!!
• Droits nécessaires au compte de service SQL Server
o Log on as service (SeServiceLogonRight)
o Replace a process-level token (SeAssignPrimaryTokenPrivilege)
o Adjust memory quotas for a process (SeIncreaseQuotaPrivilege)
1
SQL SERVER ET SON ENVIRONNEMENT
• ACL sur les dossiers et fichiers qui concernent SQL Server
o Windows 2008 et UAC : il n’est pas possible de créer des fichiers à la
racine d’un lecteur logique ou d’un mount point si le compte ne
possède pas les privilèges administrateur
• Considérations NTFS sur les ressources SQL Server
o Seul le compte de service SQL Server (et les administrateurs
systèmes) doivent avoir accès aux fichiers de bases de données
o Eviter si possible les groupes locaux ou active directory. Activer le
monitoring des modifications intervenants sur les groupes (ajout,
suppression d’un membre …)
o Les clés de registre appartenant à une instance ne doivent pouvoir
être accéder en écriture que par le compte de service concerné
Avec SQL Server 2012 la vue sys.dm_server_registry permet de
connaitre rapidement les clés de registres associée à une instance
1
SQL SERVER ET SON ENVIRONNEMENT
• Le changement de compte de service doit se faire via
l’outil de gestion de configuration SQL Server
o Modification des ACL sur les dossiers et fichiers de l’instance
o Modification des ACL des clés de registres
1
SECURISER UNE INSTANCE
SQLSERVER
1
SECURISER UNE INSTANCE SQLSERVER
• Le compte local prédéfini LOCAL SYSTEM doit être évité
autant que possible
o Avec SQL Server 2012 le compte local NT AUTORITYSYSTEM
n’est plus ajouté en tant que membre du rôle sysadmin
pendant l’installation
• Les comptes de services ne doivent pas faire parti du
groupe local BUILTINAdministrators.
o Depuis SQL Server 2008 ce compte n’est plus membre du
rôle de serveur sysadmin par défaut
• Jusqu’à SQL Server 2005 un même compte utilisateur ne devait
pas être utilisé par plusieurs instances SQL Server ni pour
d’autres comptes de services liés à SQL Server (utilisation du
groupe prédéfini (SQLServerMSSQLServerUser$<instance>)
1
SECURISER UNE INSTANCE SQLSERVER
• Depuis SQL Server 2008 isolation des ressources par
l’utilisation des SID des comptes de services SQL Server
• Avec SQL Server 2012 il est possible d’utiliser
directement les comptes virtuels ou les comptes
managés en tant que compte de services
1
SECURISER UNE INSTANCE SQLSERVER
1
SECURISER UNE INSTANCE SQLSERVER
2
SECURISER UNE INSTANCE SQLSERVER
2
SECURISER UNE INSTANCE SQLSERVER
• Réduction de la surface d’attaque en réduisant le
nombre de services au strict nécessaire
• Avec SQL Server 2000 la plupart des composants
étaient dépendants du moteur. Avec les releases
postérieures l’architecture est devenu plus modulaire
• SQL Browser désactivé par défaut lorsqu’une seule
instance existe. Ce service doit être désactivé lorsqu’il
n’est pas nécessaire pour réduire la surface d’attaque
2
SECURISER UNE INSTANCE SQLSERVER
• SQL Server écoute et permet les connexions au travers des
points de terminaisons (Endpoints)
o TSQL Local Machine (SHARED MEMORY)
o TSQL Named Pipes (NAMED PIPES)
o TSQL Default TCP (TCP)
o TSQL Default VIA (VIA)
o Dedicated Admin Connection (TCP)
• Fournit une couche additionnelle de sécurité
o Avec le contrôle du ou des comptes de connexion qui peuvent se
connecter
o En forçant la connexion via un compte d’application spécifique
2
SECURISER UNE INSTANCE SQLSERVER
2
SECURISER UNE INSTANCE SQLSERVER
• Politique de sécurité des mots de passe
o Avec SQL Server 2000 possibilité d’installer une instance avec le
compte super utilisateur sa sans mot de passe
o Algorithme de chiffrement du mot passe connu (David LitchField)
o Le compte super utilisateur sa est la première cible des attaques par
brute de force
o Depuis 2005 possibilité d’aligner la politique de sécurité des mots
de passe des logins de type SQL avec Windows (CHECK_POLICY et
CHECK_EXPIRATION)
o Ne pas utiliser l’option «Store passwords using reversible encryption»
pour les comptes Windows
2
SECURISER UNE INSTANCE SQLSERVER
• Qu’est-ce qu’un mot de passe sécurisé ?
o Mot de passe composé d’au moins un des 3 critères suivants :
– 8 caractères minimum
– Lettres minuscules
– Lettres majuscules
– Nombres
– Caractères spéciaux
• Ne pas utiliser un mot de passe à usage courant
• La combinaison des règles précédentes rendent un mot de passe
difficile à casser aux attaques brute de force
• SQL Server reconnaît 5 règles de mots de passe basées sur Windows :
o Forcer l’historique des mots de passe
o Ancienneté maximale des mots de passe
o Ancienneté minimale des mots de passe
o Longueur des mots de passe
2
SECURISER UNE INSTANCE SQLSERVER
• SQL Server ne stocke pas une version chiffrée du mot de
passe mais un hash.
• SHA1 est utilisé par SQL Server depuis SQL Server 2000
• Avec SQL Server 2000 une version du mot de passe en
majuscule était hachée ce qui limite le champ des possibilités
pour une attaque brute de force
• Depuis SQL Server 2005 seuls les membres du rôle sysadmin
peuvent voir le hash des logins dans le catalogue système
• Utilisation de PWDCOMPARE()
o Identification des mots de passe vide sur SQL Server 2000
o Recherche des mots de passe à usage courant
2
SECURISER UNE INSTANCE SQLSERVER
• Compte super utilisateur SA
o Doit être désactivé ou éventuellement renommé si possible
– Permet de réduire considérablement la surface d’attaque
– L’attaquant doit chercher un utilisateur potentiel avant de lancer une
combinaison de mot de passe
• Compte invité (GUEST)
o Ce compte doit être désactivé sur les bases de données
utilisateurs.
2
SECURISER UNE INSTANCE SQLSERVER
• Rôles de serveurs
2
Rôles de serveurs Permissions
sysadmin Possède tous les droits sur le serveur
serveradmin Peut changer la configuration du serveur
setupadmin Peut configurer la réplication et les serveurs
liés
securityadmin Peut gérer les logins et audits associés
processadmin Peut gérer les process qui existent sur
l’instance SQL Server
bulkadmin Peut utiliser la commande BULK INSERT
diskadmin Peut gérer les fichiers sur disque
dbcreator Peut créer et gérer les bases de données
public Par défaut possède les privilèges VIEW ANY
DATABASE et CONNECT
SECURISER UNE INSTANCE SQLSERVER
• Rôles de bases de données
3
Rôles de bases de données Permissions
db_owner Peut effectuer n’importe quelle opération de
maintenance et de configuration sur la BDD
db_accessadmin Gère les accès à la base de données
db_securityadmin Gère les permissions et les appartenances aux rôles de
bases de données
db_ddladmin Peut exécuter des instructions de type DDL
db_backupoperator Peut sauvegarder la base de données
db_datareader Peut lire toutes les données de toutes les tables
utilisateurs
db_datawriter Peut ajouter, supprimer ou modifier les données dans
les tables utilisateurs
db_denydatareader Ne peut pas lire les données des tables utilisateurs
db_denydatawriter Ne peut ni ajouter, ni supprimer ou modifier les
données dans les tables utilisateurs
SECURISER UNE INSTANCE SQLSERVER
• Rôles de serveurs
o Les permissions associées aux rôles prédéfinis ne peuvent être
changées
o Le rôle de serveur public possède par défaut les permissions VIEW
ANY DATABASE et CONNECT
Depuis SQL Server 2012 il est possible de créer ses propres rôles de
niveau serveur
• Rôles de bases de données
o Le super utilisateur sa et les membres du rôle de serveur sysadmin
sont mappés au compte utilisateur dbo
• Donner certaines permissions à un principal n’est pas la
même chose que de l’ajouter en tant que membre à un rôle
3
SECURISER UNE INSTANCE SQLSERVER
• Utilisation de l’instruction DENY
o DENY ne fait pas partie de la norme SQL
o DENY surpasse l’instruction GRANT (sauf dans le cas d’une
permission niveau colonne)
o L’utilisation de l’instruction DENY cache en général un problème
de design au niveau de la sécurité
3
SECURISER UNE INSTANCE SQLSERVER
• Utilisation des schémas
o Plus de dépendance des objets vis-à-vis des utilisateurs
o Un schéma peut appartenir à n’importe quel principal
o Isolation de la sécurité au travers de conteneurs distincts
o Configuration de la sécurité directement au travers des schémas
• Problème de création de schémas non désirés
o Un login fait parti d’un groupe Windows
o La création d’objets se fait sans préciser le schéma propriétaire
o Avec SQL Server 2012 c’est le schéma par défaut dbo qui sera affecté
pendant la création d’un objet si aucun schéma explicite n’est
précisé.
3
SECURISER UNE INSTANCE SQLSERVER
• TRUSTWORTHY indique à l’instance SQL Server que la
base de données est approuvée ainsi que son contenu
• Par défaut cette option est à OFF
• Permet une protection contre certains modules
malveillants à base de CLR ou qui s’exécutent en tant
qu’utilisateur à privilège élevé.
• Attention à l’activation de cette option !!
3
SECURISER UNE INSTANCE SQLSERVER
• Contained databases avec SQL Server 2012
o Indépendance des bases de données vis-à-vis des instances qui les
hébergent
o Les utilisateurs se connectent directement via des utilisateurs de bases de
données et non plus par l’intermédiaire des logins au niveau instance
o Change la manière de gérer la sécurité pour les administrateurs de bases de
données
o Problème de duplication des logins
o Un membre du rôle db_owner ou ayant la permission CONTROL DATABASE
peut activer une base comme étant contained.
o Option auto_close activée peut gérer des DENIAL OF SERVICE à cause du
coup supplémentaire lié à l’ouverture et la fermeture de la base de données
3
SECURITE DES SAUVEGARDES
3
SECURITER DES SAUVEGARDES
• Tolérance de panne != Sécurisation des sauvegardes
• L’effort de sécurisation d’une instance SQL Server peut être réduit à
néant si une stratégie de sécurité des sauvegardes n’est pas
également mise en place
• La réécriture d’une sauvegarde sur un même support peut être
problématique dans d’échec. Aucune sauvegarde valide ne pourra
être utilisée lors d’une restauration
• Stockage des sauvegardes hors site
o Qui est impliqué dans le processus ? (Employés, entreprise externe etc…)
o De quelle manière sont transportés les sauvegardes ?
o Quelles garanties puis-je avoir si mes sauvegardes sont stockées par une
entreprise tiers ?
o Perte de sauvegarde, restitution des sauvegardes au mauvais propriétaire …
3
SECURITE DES SAUVEGARDES
• Utilisation de l’option MEDIAPASSWORD pendant une
sauvegarde
o Avec SQL Server 2000, le seul moyen pour protéger une sauvegarde.
o Depuis cette option n’est plus un moyen sûr de protéger une
sauvegarde
• Le chiffrement des sauvegardes restent à ce jour la meilleure
alternative
• Chiffrer ses sauvegardes
o Outils tiers de sauvegarde comme Litespeed for SQL Server, Red
Gate SQL HyperBack ou Red Gate SQL Backup etc …
o Outils tiers de sauvegarde de médiathèque comme HP Data
Protector, Symantec NetBacku etc …
o Depuis SQL Server 2008 la possibilité d’utiliser Transparent Data
Encryption
3
AUDITS
3
AUDITS
• Les audits font partis intégrante de la sécurité
o Il faut pouvoir vérifier que la sécurité mise en place le reste
o La seule mise en place des audits ne vaut rien si les données ne
sont pas revues et utilisées
o La sécurisation des fichiers et données d’audit est également très
importante
• Nécessité de prise en charge des standards existants :
o European Union Data Protection Directive
o HIPAA
o Sarbanes-Oxley
o Payment Card Industry Data Security Standard
4
AUDITS
• C2 audit mode
o Méthode la plus ancienne qui existe avec SQL Server
o Audit les tentatives d’accès aux objets (peut consommer une quantité
importante d’espace disque
o Si le moteur ne peut plus écrire dans le fichier de log l’instance est
automatiquement arrêtée.
• Common Criteria Compliance
o Exige que la mémoire soit réécrite avant la réallocation de l’espace à un autre
processus (RIP)
o Activation des audits des login (SUCCESS, FAILED, nombre de tentative de
login entre la dernière connexion connue et la connexion courante)
o Modification du comportement des GRANT / DENY au niveau colonne.
• Profiler + triggers + audit des logins avec SQL Server 2005 + trace
par défaut
4
AUDITS
• SQL Server audits depuis SQL Server 2008.
• Cet outil permet de capturer des événements d’audits en ayant le
moins d’impact possible sur le système car il utilise les XE avec le
package privé secAudit. (cf présentation de David Baffaleuf)
• SQL Server 2012 propose également des améliorations sur cette
fonctionnalité
o Ajout de l’action FAIL_OPERATION en ca d’échec d’écriture dans les journaux
d’audit
o Contrôle du nombre de fichiers qui seront créés pour les audits
o Ajout d’un prédicat directement dans les objets d’audits
o Ajout d’informations additionnelles lorsque cela est possible
o Reprise automatique d’écriture dans les journaux d’audits en cas de rupture
de liaison entre SQL Server et les fichiers sur disque
o Audits de serveurs supportés sur l’ensemble de la gamme des éditions SQL
Server 2012. Les audits de bases de données ne sont supportés que sur les
éditions Enterprise, DataCenter, Evaluation et Developer
4
AUDITS
4
AUDITS
• Utilisation de la gestion basée sur les règles depuis SQL
Server 2008
o Création d’un véritable standard de sécurité
o Traduction des règles de sécurité en police sur SQL Server
o Audit périodique avec application des règles du standard sur
l’ensemble des instances SQL Server.
4
DEMO
Q & A
Merci à nos Sponsors
Rencontrez les dans l’espace partenaires

Mais conteúdo relacionado

Mais procurados

Active Directory en 2012 : les meilleures pratiques en design, sécurité et ad...
Active Directory en 2012 : les meilleures pratiques en design, sécurité et ad...Active Directory en 2012 : les meilleures pratiques en design, sécurité et ad...
Active Directory en 2012 : les meilleures pratiques en design, sécurité et ad...Microsoft Technet France
 
Les 11 bonnes raisons de migrer vers Windows Server 2008
Les 11 bonnes raisons de migrer vers Windows Server 2008Les 11 bonnes raisons de migrer vers Windows Server 2008
Les 11 bonnes raisons de migrer vers Windows Server 2008fabricemeillon
 
Tp Sql Server Integration Services 2008
Tp  Sql Server Integration Services  2008Tp  Sql Server Integration Services  2008
Tp Sql Server Integration Services 2008Abdelouahed Abdou
 
Migration vers Active Directory 2012 et 2012 R2 : les meilleures pratiques
Migration vers Active Directory 2012 et 2012 R2 : les meilleures pratiques Migration vers Active Directory 2012 et 2012 R2 : les meilleures pratiques
Migration vers Active Directory 2012 et 2012 R2 : les meilleures pratiques Microsoft Technet France
 
Windows server-2008-r2-lessentiel HISOFT
Windows server-2008-r2-lessentiel HISOFTWindows server-2008-r2-lessentiel HISOFT
Windows server-2008-r2-lessentiel HISOFTgroupe_hisoft
 
Active Directory Sur Windows 2008 R2
Active  Directory Sur  Windows 2008  R2Active  Directory Sur  Windows 2008  R2
Active Directory Sur Windows 2008 R2SIMOES AUGUSTO
 
Tutoriel : Apprendre à configurer et gérer un serveur Web sous Windows Server...
Tutoriel : Apprendre à configurer et gérer un serveur Web sous Windows Server...Tutoriel : Apprendre à configurer et gérer un serveur Web sous Windows Server...
Tutoriel : Apprendre à configurer et gérer un serveur Web sous Windows Server...Christophe Lauer
 
Windows Server 2012, quelles évolutions pour les services de stockage et de c...
Windows Server 2012, quelles évolutions pour les services de stockage et de c...Windows Server 2012, quelles évolutions pour les services de stockage et de c...
Windows Server 2012, quelles évolutions pour les services de stockage et de c...Microsoft Décideurs IT
 
Les nouveautés stockage dans Windows Server 2012 R2
Les nouveautés stockage dans Windows Server 2012 R2Les nouveautés stockage dans Windows Server 2012 R2
Les nouveautés stockage dans Windows Server 2012 R2Georgeot Cédric
 
Serveur Intranet sous Windows Server 2008
Serveur Intranet sous Windows Server 2008 Serveur Intranet sous Windows Server 2008
Serveur Intranet sous Windows Server 2008 Aicha OUALLA
 
Windows Server 2012 Essentials, une nouvelle offre pour les TPE
Windows Server 2012 Essentials, une nouvelle offre pour les TPEWindows Server 2012 Essentials, une nouvelle offre pour les TPE
Windows Server 2012 Essentials, une nouvelle offre pour les TPEMicrosoft Technet France
 
Techdays 2009 - Active Directory Domain Services : bonnes pratiques et princi...
Techdays 2009 - Active Directory Domain Services : bonnes pratiques et princi...Techdays 2009 - Active Directory Domain Services : bonnes pratiques et princi...
Techdays 2009 - Active Directory Domain Services : bonnes pratiques et princi...fabricemeillon
 
Oracle Database Vault
Oracle Database VaultOracle Database Vault
Oracle Database VaultKhalid ALLILI
 
Active Directory : nouveautés Windows Server 2012
Active Directory : nouveautés Windows Server 2012Active Directory : nouveautés Windows Server 2012
Active Directory : nouveautés Windows Server 2012Microsoft Technet France
 
Windows server 2012
Windows server 2012Windows server 2012
Windows server 2012Ndim43
 
Administration oracle7
Administration oracle7Administration oracle7
Administration oracle7Lucian Carabet
 
Approbation de Domaine D'active Directory AD sur 2008 serveurr
Approbation de Domaine D'active Directory AD sur  2008 serveurr Approbation de Domaine D'active Directory AD sur  2008 serveurr
Approbation de Domaine D'active Directory AD sur 2008 serveurr medfaye
 
Windows Azure Active Directory, SSO étendu et services d’annuaire pour les ap...
Windows Azure Active Directory, SSO étendu et services d’annuaire pour les ap...Windows Azure Active Directory, SSO étendu et services d’annuaire pour les ap...
Windows Azure Active Directory, SSO étendu et services d’annuaire pour les ap...Microsoft Technet France
 
DevOps Day - Infrastructure As A Code
DevOps Day - Infrastructure As A CodeDevOps Day - Infrastructure As A Code
DevOps Day - Infrastructure As A CodeCellenza
 

Mais procurados (20)

Active Directory en 2012 : les meilleures pratiques en design, sécurité et ad...
Active Directory en 2012 : les meilleures pratiques en design, sécurité et ad...Active Directory en 2012 : les meilleures pratiques en design, sécurité et ad...
Active Directory en 2012 : les meilleures pratiques en design, sécurité et ad...
 
Les 11 bonnes raisons de migrer vers Windows Server 2008
Les 11 bonnes raisons de migrer vers Windows Server 2008Les 11 bonnes raisons de migrer vers Windows Server 2008
Les 11 bonnes raisons de migrer vers Windows Server 2008
 
Tp Sql Server Integration Services 2008
Tp  Sql Server Integration Services  2008Tp  Sql Server Integration Services  2008
Tp Sql Server Integration Services 2008
 
Migration vers Active Directory 2012 et 2012 R2 : les meilleures pratiques
Migration vers Active Directory 2012 et 2012 R2 : les meilleures pratiques Migration vers Active Directory 2012 et 2012 R2 : les meilleures pratiques
Migration vers Active Directory 2012 et 2012 R2 : les meilleures pratiques
 
Windows server-2008-r2-lessentiel HISOFT
Windows server-2008-r2-lessentiel HISOFTWindows server-2008-r2-lessentiel HISOFT
Windows server-2008-r2-lessentiel HISOFT
 
Active Directory Sur Windows 2008 R2
Active  Directory Sur  Windows 2008  R2Active  Directory Sur  Windows 2008  R2
Active Directory Sur Windows 2008 R2
 
Tutoriel : Apprendre à configurer et gérer un serveur Web sous Windows Server...
Tutoriel : Apprendre à configurer et gérer un serveur Web sous Windows Server...Tutoriel : Apprendre à configurer et gérer un serveur Web sous Windows Server...
Tutoriel : Apprendre à configurer et gérer un serveur Web sous Windows Server...
 
Windows Server 2012, quelles évolutions pour les services de stockage et de c...
Windows Server 2012, quelles évolutions pour les services de stockage et de c...Windows Server 2012, quelles évolutions pour les services de stockage et de c...
Windows Server 2012, quelles évolutions pour les services de stockage et de c...
 
Les nouveautés stockage dans Windows Server 2012 R2
Les nouveautés stockage dans Windows Server 2012 R2Les nouveautés stockage dans Windows Server 2012 R2
Les nouveautés stockage dans Windows Server 2012 R2
 
Serveur Intranet sous Windows Server 2008
Serveur Intranet sous Windows Server 2008 Serveur Intranet sous Windows Server 2008
Serveur Intranet sous Windows Server 2008
 
Windows Server 2012 Essentials, une nouvelle offre pour les TPE
Windows Server 2012 Essentials, une nouvelle offre pour les TPEWindows Server 2012 Essentials, une nouvelle offre pour les TPE
Windows Server 2012 Essentials, une nouvelle offre pour les TPE
 
Techdays 2009 - Active Directory Domain Services : bonnes pratiques et princi...
Techdays 2009 - Active Directory Domain Services : bonnes pratiques et princi...Techdays 2009 - Active Directory Domain Services : bonnes pratiques et princi...
Techdays 2009 - Active Directory Domain Services : bonnes pratiques et princi...
 
Oracle Database Vault
Oracle Database VaultOracle Database Vault
Oracle Database Vault
 
Active Directory : nouveautés Windows Server 2012
Active Directory : nouveautés Windows Server 2012Active Directory : nouveautés Windows Server 2012
Active Directory : nouveautés Windows Server 2012
 
Windows server 2012
Windows server 2012Windows server 2012
Windows server 2012
 
Administration glassfish 3
Administration glassfish 3Administration glassfish 3
Administration glassfish 3
 
Administration oracle7
Administration oracle7Administration oracle7
Administration oracle7
 
Approbation de Domaine D'active Directory AD sur 2008 serveurr
Approbation de Domaine D'active Directory AD sur  2008 serveurr Approbation de Domaine D'active Directory AD sur  2008 serveurr
Approbation de Domaine D'active Directory AD sur 2008 serveurr
 
Windows Azure Active Directory, SSO étendu et services d’annuaire pour les ap...
Windows Azure Active Directory, SSO étendu et services d’annuaire pour les ap...Windows Azure Active Directory, SSO étendu et services d’annuaire pour les ap...
Windows Azure Active Directory, SSO étendu et services d’annuaire pour les ap...
 
DevOps Day - Infrastructure As A Code
DevOps Day - Infrastructure As A CodeDevOps Day - Infrastructure As A Code
DevOps Day - Infrastructure As A Code
 

Destaque

ImpléMentation D’Une Solution De Bi Avec Sql Server
ImpléMentation D’Une Solution De Bi Avec Sql ServerImpléMentation D’Une Solution De Bi Avec Sql Server
ImpléMentation D’Une Solution De Bi Avec Sql ServerHamza Boukraa
 
PL/Sql et Sécurité des bases de données
PL/Sql et Sécurité des bases de donnéesPL/Sql et Sécurité des bases de données
PL/Sql et Sécurité des bases de donnéessmiste
 
alphorm.com - Formation SQL Server 2012 (70-462)
alphorm.com - Formation SQL Server 2012 (70-462)alphorm.com - Formation SQL Server 2012 (70-462)
alphorm.com - Formation SQL Server 2012 (70-462)Alphorm
 
Alphorm.com Formation le langage SQL
Alphorm.com  Formation le langage SQLAlphorm.com  Formation le langage SQL
Alphorm.com Formation le langage SQLAlphorm
 
Sql Server et SharePoint le couple de l'année 2012
Sql Server et SharePoint le couple de l'année 2012Sql Server et SharePoint le couple de l'année 2012
Sql Server et SharePoint le couple de l'année 2012Nicolas Georgeault
 
Mssrs formation-ms-sql-server-reporting-services
Mssrs formation-ms-sql-server-reporting-servicesMssrs formation-ms-sql-server-reporting-services
Mssrs formation-ms-sql-server-reporting-servicesCERTyou Formation
 
Les attaques par injection sql
Les attaques par injection sqlLes attaques par injection sql
Les attaques par injection sqlMohamed Yassin
 
SQL Server Lecture 1
SQL Server Lecture 1SQL Server Lecture 1
SQL Server Lecture 1Hazem Torab
 
SQL Server 2008 Overview
SQL Server 2008 OverviewSQL Server 2008 Overview
SQL Server 2008 OverviewDavid Chou
 
Tout sur les solutions de Haute Disponibilité et Disaster Recovery de SQL Ser...
Tout sur les solutions de Haute Disponibilité et Disaster Recovery de SQL Ser...Tout sur les solutions de Haute Disponibilité et Disaster Recovery de SQL Ser...
Tout sur les solutions de Haute Disponibilité et Disaster Recovery de SQL Ser...Microsoft Technet France
 
Atelier 3 gestion de bases de données sous odoo
Atelier 3 gestion de bases de données sous odooAtelier 3 gestion de bases de données sous odoo
Atelier 3 gestion de bases de données sous odooAbdelouahed Abdou
 
Bases de données réparties par la pratique
Bases de données réparties par la pratiqueBases de données réparties par la pratique
Bases de données réparties par la pratiqueAbdelouahed Abdou
 
Bases de données réparties
Bases de données répartiesBases de données réparties
Bases de données répartiesAbdelouahed Abdou
 
INFORMATIQUE DES GESTION : MERISE
INFORMATIQUE DES GESTION : MERISE INFORMATIQUE DES GESTION : MERISE
INFORMATIQUE DES GESTION : MERISE HINDOUSSATI
 
Gestion et Suivi des Projets informatique
Gestion et Suivi des Projets informatiqueGestion et Suivi des Projets informatique
Gestion et Suivi des Projets informatiqueJihed Kaouech
 
Rapport de pfe gestion de parc informatique et Helpdesk
Rapport de pfe gestion de parc informatique et HelpdeskRapport de pfe gestion de parc informatique et Helpdesk
Rapport de pfe gestion de parc informatique et HelpdeskRaef Ghribi
 

Destaque (19)

ImpléMentation D’Une Solution De Bi Avec Sql Server
ImpléMentation D’Une Solution De Bi Avec Sql ServerImpléMentation D’Une Solution De Bi Avec Sql Server
ImpléMentation D’Une Solution De Bi Avec Sql Server
 
PL/Sql et Sécurité des bases de données
PL/Sql et Sécurité des bases de donnéesPL/Sql et Sécurité des bases de données
PL/Sql et Sécurité des bases de données
 
alphorm.com - Formation SQL Server 2012 (70-462)
alphorm.com - Formation SQL Server 2012 (70-462)alphorm.com - Formation SQL Server 2012 (70-462)
alphorm.com - Formation SQL Server 2012 (70-462)
 
Alphorm.com Formation le langage SQL
Alphorm.com  Formation le langage SQLAlphorm.com  Formation le langage SQL
Alphorm.com Formation le langage SQL
 
Sql Server et SharePoint le couple de l'année 2012
Sql Server et SharePoint le couple de l'année 2012Sql Server et SharePoint le couple de l'année 2012
Sql Server et SharePoint le couple de l'année 2012
 
Mssrs formation-ms-sql-server-reporting-services
Mssrs formation-ms-sql-server-reporting-servicesMssrs formation-ms-sql-server-reporting-services
Mssrs formation-ms-sql-server-reporting-services
 
Les attaques par injection sql
Les attaques par injection sqlLes attaques par injection sql
Les attaques par injection sql
 
SQL Server Lecture 1
SQL Server Lecture 1SQL Server Lecture 1
SQL Server Lecture 1
 
Sgbdr merise
Sgbdr meriseSgbdr merise
Sgbdr merise
 
SQL Server 2008 Overview
SQL Server 2008 OverviewSQL Server 2008 Overview
SQL Server 2008 Overview
 
LES JOINTURES
LES JOINTURESLES JOINTURES
LES JOINTURES
 
Tout sur les solutions de Haute Disponibilité et Disaster Recovery de SQL Ser...
Tout sur les solutions de Haute Disponibilité et Disaster Recovery de SQL Ser...Tout sur les solutions de Haute Disponibilité et Disaster Recovery de SQL Ser...
Tout sur les solutions de Haute Disponibilité et Disaster Recovery de SQL Ser...
 
Atelier 3 gestion de bases de données sous odoo
Atelier 3 gestion de bases de données sous odooAtelier 3 gestion de bases de données sous odoo
Atelier 3 gestion de bases de données sous odoo
 
Bases de données réparties par la pratique
Bases de données réparties par la pratiqueBases de données réparties par la pratique
Bases de données réparties par la pratique
 
Bases de données réparties
Bases de données répartiesBases de données réparties
Bases de données réparties
 
INFORMATIQUE DES GESTION : MERISE
INFORMATIQUE DES GESTION : MERISE INFORMATIQUE DES GESTION : MERISE
INFORMATIQUE DES GESTION : MERISE
 
Gestion et Suivi des Projets informatique
Gestion et Suivi des Projets informatiqueGestion et Suivi des Projets informatique
Gestion et Suivi des Projets informatique
 
Rapport de pfe gestion de parc informatique et Helpdesk
Rapport de pfe gestion de parc informatique et HelpdeskRapport de pfe gestion de parc informatique et Helpdesk
Rapport de pfe gestion de parc informatique et Helpdesk
 
Sql Server 2012
Sql Server 2012Sql Server 2012
Sql Server 2012
 

Semelhante a SQL Server et la sécurité

JSS2013 : Haute disponibilité
JSS2013 : Haute disponibilitéJSS2013 : Haute disponibilité
JSS2013 : Haute disponibilitéChristophe Laporte
 
chap1-windows server.pptxhhhgggjjjhhdddddh
chap1-windows server.pptxhhhgggjjjhhdddddhchap1-windows server.pptxhhhgggjjjhhdddddh
chap1-windows server.pptxhhhgggjjjhhdddddhHamza546870
 
Re build Nantes 2013 SQL Server monitoring
Re build Nantes 2013   SQL Server monitoringRe build Nantes 2013   SQL Server monitoring
Re build Nantes 2013 SQL Server monitoringDavid BAFFALEUF
 
Retour d’expérience sur le monitoring et la sécurisation des identités Azure
Retour d’expérience sur le monitoring et la sécurisation des identités AzureRetour d’expérience sur le monitoring et la sécurisation des identités Azure
Retour d’expérience sur le monitoring et la sécurisation des identités AzureMaxime Rastello
 
Retour d’expérience sur le monitoring et la sécurisation des identités Azure
Retour d’expérience sur le monitoring et la sécurisation des identités AzureRetour d’expérience sur le monitoring et la sécurisation des identités Azure
Retour d’expérience sur le monitoring et la sécurisation des identités AzureMicrosoft Technet France
 
MSEXP : Monitoring et sécurisation des identités Azure
MSEXP : Monitoring et sécurisation des identités AzureMSEXP : Monitoring et sécurisation des identités Azure
MSEXP : Monitoring et sécurisation des identités AzureMickaelLOPES91
 
JSS2013 Session SharePoint pour le dba sql v1.0
JSS2013 Session SharePoint pour le dba sql v1.0JSS2013 Session SharePoint pour le dba sql v1.0
JSS2013 Session SharePoint pour le dba sql v1.0Patrick Guimonet
 
Serveurs core et virtualisation
Serveurs core et virtualisationServeurs core et virtualisation
Serveurs core et virtualisationChristophe Laporte
 
Infrastructure as a code
Infrastructure as a codeInfrastructure as a code
Infrastructure as a codeMichel HUBERT
 
Sql azure performance et montee en charge (1)
Sql azure   performance et montee en charge (1)Sql azure   performance et montee en charge (1)
Sql azure performance et montee en charge (1)Aymeric Weinbach
 
Active directory Hack it & Harden-it
Active directory Hack it & Harden-itActive directory Hack it & Harden-it
Active directory Hack it & Harden-itRémi Escourrou
 
Azure Camp 9 Décembre - slides session développeurs webmedia
Azure Camp 9 Décembre - slides session développeurs webmediaAzure Camp 9 Décembre - slides session développeurs webmedia
Azure Camp 9 Décembre - slides session développeurs webmediaMicrosoft
 
11 visual basic .net - acces aux donnees avec ado .net
11 visual basic .net - acces aux donnees avec ado .net11 visual basic .net - acces aux donnees avec ado .net
11 visual basic .net - acces aux donnees avec ado .netHamza SAID
 
Construire des applications supportant la montée en charge avec SQL Azure (300)
Construire des applications supportant la montée en charge avec SQL Azure (300)Construire des applications supportant la montée en charge avec SQL Azure (300)
Construire des applications supportant la montée en charge avec SQL Azure (300)Microsoft Technet France
 

Semelhante a SQL Server et la sécurité (20)

La sécurité avec SQL Server 2012
La sécurité avec SQL Server 2012La sécurité avec SQL Server 2012
La sécurité avec SQL Server 2012
 
Interfaces controlesbasededonné
Interfaces controlesbasededonnéInterfaces controlesbasededonné
Interfaces controlesbasededonné
 
JSS2013 : Haute disponibilité
JSS2013 : Haute disponibilitéJSS2013 : Haute disponibilité
JSS2013 : Haute disponibilité
 
chap1-windows server.pptxhhhgggjjjhhdddddh
chap1-windows server.pptxhhhgggjjjhhdddddhchap1-windows server.pptxhhhgggjjjhhdddddh
chap1-windows server.pptxhhhgggjjjhhdddddh
 
Re build Nantes 2013 SQL Server monitoring
Re build Nantes 2013   SQL Server monitoringRe build Nantes 2013   SQL Server monitoring
Re build Nantes 2013 SQL Server monitoring
 
Retour d’expérience sur le monitoring et la sécurisation des identités Azure
Retour d’expérience sur le monitoring et la sécurisation des identités AzureRetour d’expérience sur le monitoring et la sécurisation des identités Azure
Retour d’expérience sur le monitoring et la sécurisation des identités Azure
 
Retour d’expérience sur le monitoring et la sécurisation des identités Azure
Retour d’expérience sur le monitoring et la sécurisation des identités AzureRetour d’expérience sur le monitoring et la sécurisation des identités Azure
Retour d’expérience sur le monitoring et la sécurisation des identités Azure
 
MSEXP : Monitoring et sécurisation des identités Azure
MSEXP : Monitoring et sécurisation des identités AzureMSEXP : Monitoring et sécurisation des identités Azure
MSEXP : Monitoring et sécurisation des identités Azure
 
JSS2013 Session SharePoint pour le dba sql v1.0
JSS2013 Session SharePoint pour le dba sql v1.0JSS2013 Session SharePoint pour le dba sql v1.0
JSS2013 Session SharePoint pour le dba sql v1.0
 
22462A_01.pptx
22462A_01.pptx22462A_01.pptx
22462A_01.pptx
 
Présentation Nano Server MS Afterwork Nouméa
Présentation Nano Server MS Afterwork NouméaPrésentation Nano Server MS Afterwork Nouméa
Présentation Nano Server MS Afterwork Nouméa
 
Serveurs core et virtualisation
Serveurs core et virtualisationServeurs core et virtualisation
Serveurs core et virtualisation
 
Infrastructure as a code
Infrastructure as a codeInfrastructure as a code
Infrastructure as a code
 
SQL 2014 et la gestion de la sécurité
SQL 2014 et la gestion de la sécurité SQL 2014 et la gestion de la sécurité
SQL 2014 et la gestion de la sécurité
 
Sql azure performance et montee en charge (1)
Sql azure   performance et montee en charge (1)Sql azure   performance et montee en charge (1)
Sql azure performance et montee en charge (1)
 
SQL in the Azure World
SQL in the Azure WorldSQL in the Azure World
SQL in the Azure World
 
Active directory Hack it & Harden-it
Active directory Hack it & Harden-itActive directory Hack it & Harden-it
Active directory Hack it & Harden-it
 
Azure Camp 9 Décembre - slides session développeurs webmedia
Azure Camp 9 Décembre - slides session développeurs webmediaAzure Camp 9 Décembre - slides session développeurs webmedia
Azure Camp 9 Décembre - slides session développeurs webmedia
 
11 visual basic .net - acces aux donnees avec ado .net
11 visual basic .net - acces aux donnees avec ado .net11 visual basic .net - acces aux donnees avec ado .net
11 visual basic .net - acces aux donnees avec ado .net
 
Construire des applications supportant la montée en charge avec SQL Azure (300)
Construire des applications supportant la montée en charge avec SQL Azure (300)Construire des applications supportant la montée en charge avec SQL Azure (300)
Construire des applications supportant la montée en charge avec SQL Azure (300)
 

SQL Server et la sécurité

  • 1. LA SÉCURITÉ DANS SQL SERVER ET LES NOUVEAUTÉS DE LA VERSION 2012
  • 3. SPEAKER David BARBARIN  Travaille avec SQL Server depuis 2003.  Consultant et formateur SQL Server.  Senior Consultant SQL Server @ Pragmantic SA.  SQL Server MVP.  http://www.pragmantic.com/  http://blog.developpez.com/mikedavem/  http://mikedavem.developpez.com/
  • 4. SOMMAIRE •SQL Server et son environnement •Sécuriser une instance SQL Server •Sécurité des sauvegardes •Audits 4
  • 5. POURQUOI SECURISER UN SERVEUR DE BASES DE DONNEES ? •Hébergement des données d’entreprises (Finance, clients, contacts, ventes, employés …) •Peut avoir un impact business important •Compliance avec les standards de sécurité et de régulation de en plus en plus omniprésente 5
  • 6. SQL SLAMMER LE DEBUT D’UNE PRISE DE CONSCIENCE DE LA SECURITE • Ver qui réside en mémoire et qui exploite une faille dans le protocole de résolution de nom de SQL Server (UDP 1434) • Utilise l’ensemble de la bande passante pour scanner le réseau et se répliquer sur d’autres serveurs • Premier patch disponible en juillet 2002 • Outils de déploiement des patchs de sécurité limité • Trop de serveurs SQL exposés sans firewall • Pic d’activité : scan de 55 millions de serveurs / sec. Ce nombre est doubé toutes les 8.5 sec • 75 000 hôtes infectés en 10 minutes 6
  • 7. SQL SLAMMER LE DEBUT D’UNE PRISE DE CONSCIENCE DE LA SECURITE 7
  • 8. SQL SERVER ET SON ENVIRONNEMENT 8
  • 9. SQL SERVER ET SON ENVIRONNEMENT 9 Réseau Stockage Windows SQL Server
  • 10. SQL SERVER ET SON ENVIRONNEMENT • Utilisation d’un firewall • Architecture des réseaux • Choix d’un VPN ou d’une ligne dédiée • Chiffrement de la connexion (SSL, TLS, IPSEC) • Contrôle d’accès aux bornes wifi • Désactivation des ports des switchs non utilisés • Contrôle des accès physiques au datacenter • Outsourcing (garantie des sociétés externes sur la protection des données) • Utilisation illicite d’un poste utilisateur non verrouillé • Social Engineering 1
  • 11. SQL SERVER ET SON ENVIRONNEMENT • Auditer la sécurité de son réseau est indispensable • Comment ? oTest d’intrusion interne depuis l’extérieur ou l’intérieur du réseau oAppel à des entreprises spécialisées oProcessus d’amélioration continue 1
  • 12. SQL SERVER ET SON ENVIRONNEMENT • Cartes HBA o L’ensemble des IO est chiffré (lecture et écriture) o La charge de travail se focalise essentiellement au niveau de la CPU des cartes HBA o Impact sur les performances IO en cas de charge de travail importante (Possibilité de multiplier les cartes HBA) o Peu de vendeurs implémentent le chiffrement à ce niveau (Emulex) • MPIO o Chiffrement des données au niveau du flux d’écriture o EMC, PowerPath et clé RSA. + gestion des certificats par RKM o Impact sur les performances 1
  • 13. SQL SERVER ET SON ENVIRONNEMENT • SQL Server cohabite avant tout avec un système d’exploitation !!! • Droits nécessaires au compte de service SQL Server o Log on as service (SeServiceLogonRight) o Replace a process-level token (SeAssignPrimaryTokenPrivilege) o Adjust memory quotas for a process (SeIncreaseQuotaPrivilege) 1
  • 14. SQL SERVER ET SON ENVIRONNEMENT • ACL sur les dossiers et fichiers qui concernent SQL Server o Windows 2008 et UAC : il n’est pas possible de créer des fichiers à la racine d’un lecteur logique ou d’un mount point si le compte ne possède pas les privilèges administrateur • Considérations NTFS sur les ressources SQL Server o Seul le compte de service SQL Server (et les administrateurs systèmes) doivent avoir accès aux fichiers de bases de données o Eviter si possible les groupes locaux ou active directory. Activer le monitoring des modifications intervenants sur les groupes (ajout, suppression d’un membre …) o Les clés de registre appartenant à une instance ne doivent pouvoir être accéder en écriture que par le compte de service concerné Avec SQL Server 2012 la vue sys.dm_server_registry permet de connaitre rapidement les clés de registres associée à une instance 1
  • 15. SQL SERVER ET SON ENVIRONNEMENT • Le changement de compte de service doit se faire via l’outil de gestion de configuration SQL Server o Modification des ACL sur les dossiers et fichiers de l’instance o Modification des ACL des clés de registres 1
  • 17. SECURISER UNE INSTANCE SQLSERVER • Le compte local prédéfini LOCAL SYSTEM doit être évité autant que possible o Avec SQL Server 2012 le compte local NT AUTORITYSYSTEM n’est plus ajouté en tant que membre du rôle sysadmin pendant l’installation • Les comptes de services ne doivent pas faire parti du groupe local BUILTINAdministrators. o Depuis SQL Server 2008 ce compte n’est plus membre du rôle de serveur sysadmin par défaut • Jusqu’à SQL Server 2005 un même compte utilisateur ne devait pas être utilisé par plusieurs instances SQL Server ni pour d’autres comptes de services liés à SQL Server (utilisation du groupe prédéfini (SQLServerMSSQLServerUser$<instance>) 1
  • 18. SECURISER UNE INSTANCE SQLSERVER • Depuis SQL Server 2008 isolation des ressources par l’utilisation des SID des comptes de services SQL Server • Avec SQL Server 2012 il est possible d’utiliser directement les comptes virtuels ou les comptes managés en tant que compte de services 1
  • 19. SECURISER UNE INSTANCE SQLSERVER 1
  • 20. SECURISER UNE INSTANCE SQLSERVER 2
  • 21. SECURISER UNE INSTANCE SQLSERVER 2
  • 22. SECURISER UNE INSTANCE SQLSERVER • Réduction de la surface d’attaque en réduisant le nombre de services au strict nécessaire • Avec SQL Server 2000 la plupart des composants étaient dépendants du moteur. Avec les releases postérieures l’architecture est devenu plus modulaire • SQL Browser désactivé par défaut lorsqu’une seule instance existe. Ce service doit être désactivé lorsqu’il n’est pas nécessaire pour réduire la surface d’attaque 2
  • 23. SECURISER UNE INSTANCE SQLSERVER • SQL Server écoute et permet les connexions au travers des points de terminaisons (Endpoints) o TSQL Local Machine (SHARED MEMORY) o TSQL Named Pipes (NAMED PIPES) o TSQL Default TCP (TCP) o TSQL Default VIA (VIA) o Dedicated Admin Connection (TCP) • Fournit une couche additionnelle de sécurité o Avec le contrôle du ou des comptes de connexion qui peuvent se connecter o En forçant la connexion via un compte d’application spécifique 2
  • 24. SECURISER UNE INSTANCE SQLSERVER 2
  • 25. SECURISER UNE INSTANCE SQLSERVER • Politique de sécurité des mots de passe o Avec SQL Server 2000 possibilité d’installer une instance avec le compte super utilisateur sa sans mot de passe o Algorithme de chiffrement du mot passe connu (David LitchField) o Le compte super utilisateur sa est la première cible des attaques par brute de force o Depuis 2005 possibilité d’aligner la politique de sécurité des mots de passe des logins de type SQL avec Windows (CHECK_POLICY et CHECK_EXPIRATION) o Ne pas utiliser l’option «Store passwords using reversible encryption» pour les comptes Windows 2
  • 26. SECURISER UNE INSTANCE SQLSERVER • Qu’est-ce qu’un mot de passe sécurisé ? o Mot de passe composé d’au moins un des 3 critères suivants : – 8 caractères minimum – Lettres minuscules – Lettres majuscules – Nombres – Caractères spéciaux • Ne pas utiliser un mot de passe à usage courant • La combinaison des règles précédentes rendent un mot de passe difficile à casser aux attaques brute de force • SQL Server reconnaît 5 règles de mots de passe basées sur Windows : o Forcer l’historique des mots de passe o Ancienneté maximale des mots de passe o Ancienneté minimale des mots de passe o Longueur des mots de passe 2
  • 27. SECURISER UNE INSTANCE SQLSERVER • SQL Server ne stocke pas une version chiffrée du mot de passe mais un hash. • SHA1 est utilisé par SQL Server depuis SQL Server 2000 • Avec SQL Server 2000 une version du mot de passe en majuscule était hachée ce qui limite le champ des possibilités pour une attaque brute de force • Depuis SQL Server 2005 seuls les membres du rôle sysadmin peuvent voir le hash des logins dans le catalogue système • Utilisation de PWDCOMPARE() o Identification des mots de passe vide sur SQL Server 2000 o Recherche des mots de passe à usage courant 2
  • 28. SECURISER UNE INSTANCE SQLSERVER • Compte super utilisateur SA o Doit être désactivé ou éventuellement renommé si possible – Permet de réduire considérablement la surface d’attaque – L’attaquant doit chercher un utilisateur potentiel avant de lancer une combinaison de mot de passe • Compte invité (GUEST) o Ce compte doit être désactivé sur les bases de données utilisateurs. 2
  • 29. SECURISER UNE INSTANCE SQLSERVER • Rôles de serveurs 2 Rôles de serveurs Permissions sysadmin Possède tous les droits sur le serveur serveradmin Peut changer la configuration du serveur setupadmin Peut configurer la réplication et les serveurs liés securityadmin Peut gérer les logins et audits associés processadmin Peut gérer les process qui existent sur l’instance SQL Server bulkadmin Peut utiliser la commande BULK INSERT diskadmin Peut gérer les fichiers sur disque dbcreator Peut créer et gérer les bases de données public Par défaut possède les privilèges VIEW ANY DATABASE et CONNECT
  • 30. SECURISER UNE INSTANCE SQLSERVER • Rôles de bases de données 3 Rôles de bases de données Permissions db_owner Peut effectuer n’importe quelle opération de maintenance et de configuration sur la BDD db_accessadmin Gère les accès à la base de données db_securityadmin Gère les permissions et les appartenances aux rôles de bases de données db_ddladmin Peut exécuter des instructions de type DDL db_backupoperator Peut sauvegarder la base de données db_datareader Peut lire toutes les données de toutes les tables utilisateurs db_datawriter Peut ajouter, supprimer ou modifier les données dans les tables utilisateurs db_denydatareader Ne peut pas lire les données des tables utilisateurs db_denydatawriter Ne peut ni ajouter, ni supprimer ou modifier les données dans les tables utilisateurs
  • 31. SECURISER UNE INSTANCE SQLSERVER • Rôles de serveurs o Les permissions associées aux rôles prédéfinis ne peuvent être changées o Le rôle de serveur public possède par défaut les permissions VIEW ANY DATABASE et CONNECT Depuis SQL Server 2012 il est possible de créer ses propres rôles de niveau serveur • Rôles de bases de données o Le super utilisateur sa et les membres du rôle de serveur sysadmin sont mappés au compte utilisateur dbo • Donner certaines permissions à un principal n’est pas la même chose que de l’ajouter en tant que membre à un rôle 3
  • 32. SECURISER UNE INSTANCE SQLSERVER • Utilisation de l’instruction DENY o DENY ne fait pas partie de la norme SQL o DENY surpasse l’instruction GRANT (sauf dans le cas d’une permission niveau colonne) o L’utilisation de l’instruction DENY cache en général un problème de design au niveau de la sécurité 3
  • 33. SECURISER UNE INSTANCE SQLSERVER • Utilisation des schémas o Plus de dépendance des objets vis-à-vis des utilisateurs o Un schéma peut appartenir à n’importe quel principal o Isolation de la sécurité au travers de conteneurs distincts o Configuration de la sécurité directement au travers des schémas • Problème de création de schémas non désirés o Un login fait parti d’un groupe Windows o La création d’objets se fait sans préciser le schéma propriétaire o Avec SQL Server 2012 c’est le schéma par défaut dbo qui sera affecté pendant la création d’un objet si aucun schéma explicite n’est précisé. 3
  • 34. SECURISER UNE INSTANCE SQLSERVER • TRUSTWORTHY indique à l’instance SQL Server que la base de données est approuvée ainsi que son contenu • Par défaut cette option est à OFF • Permet une protection contre certains modules malveillants à base de CLR ou qui s’exécutent en tant qu’utilisateur à privilège élevé. • Attention à l’activation de cette option !! 3
  • 35. SECURISER UNE INSTANCE SQLSERVER • Contained databases avec SQL Server 2012 o Indépendance des bases de données vis-à-vis des instances qui les hébergent o Les utilisateurs se connectent directement via des utilisateurs de bases de données et non plus par l’intermédiaire des logins au niveau instance o Change la manière de gérer la sécurité pour les administrateurs de bases de données o Problème de duplication des logins o Un membre du rôle db_owner ou ayant la permission CONTROL DATABASE peut activer une base comme étant contained. o Option auto_close activée peut gérer des DENIAL OF SERVICE à cause du coup supplémentaire lié à l’ouverture et la fermeture de la base de données 3
  • 37. SECURITER DES SAUVEGARDES • Tolérance de panne != Sécurisation des sauvegardes • L’effort de sécurisation d’une instance SQL Server peut être réduit à néant si une stratégie de sécurité des sauvegardes n’est pas également mise en place • La réécriture d’une sauvegarde sur un même support peut être problématique dans d’échec. Aucune sauvegarde valide ne pourra être utilisée lors d’une restauration • Stockage des sauvegardes hors site o Qui est impliqué dans le processus ? (Employés, entreprise externe etc…) o De quelle manière sont transportés les sauvegardes ? o Quelles garanties puis-je avoir si mes sauvegardes sont stockées par une entreprise tiers ? o Perte de sauvegarde, restitution des sauvegardes au mauvais propriétaire … 3
  • 38. SECURITE DES SAUVEGARDES • Utilisation de l’option MEDIAPASSWORD pendant une sauvegarde o Avec SQL Server 2000, le seul moyen pour protéger une sauvegarde. o Depuis cette option n’est plus un moyen sûr de protéger une sauvegarde • Le chiffrement des sauvegardes restent à ce jour la meilleure alternative • Chiffrer ses sauvegardes o Outils tiers de sauvegarde comme Litespeed for SQL Server, Red Gate SQL HyperBack ou Red Gate SQL Backup etc … o Outils tiers de sauvegarde de médiathèque comme HP Data Protector, Symantec NetBacku etc … o Depuis SQL Server 2008 la possibilité d’utiliser Transparent Data Encryption 3
  • 40. AUDITS • Les audits font partis intégrante de la sécurité o Il faut pouvoir vérifier que la sécurité mise en place le reste o La seule mise en place des audits ne vaut rien si les données ne sont pas revues et utilisées o La sécurisation des fichiers et données d’audit est également très importante • Nécessité de prise en charge des standards existants : o European Union Data Protection Directive o HIPAA o Sarbanes-Oxley o Payment Card Industry Data Security Standard 4
  • 41. AUDITS • C2 audit mode o Méthode la plus ancienne qui existe avec SQL Server o Audit les tentatives d’accès aux objets (peut consommer une quantité importante d’espace disque o Si le moteur ne peut plus écrire dans le fichier de log l’instance est automatiquement arrêtée. • Common Criteria Compliance o Exige que la mémoire soit réécrite avant la réallocation de l’espace à un autre processus (RIP) o Activation des audits des login (SUCCESS, FAILED, nombre de tentative de login entre la dernière connexion connue et la connexion courante) o Modification du comportement des GRANT / DENY au niveau colonne. • Profiler + triggers + audit des logins avec SQL Server 2005 + trace par défaut 4
  • 42. AUDITS • SQL Server audits depuis SQL Server 2008. • Cet outil permet de capturer des événements d’audits en ayant le moins d’impact possible sur le système car il utilise les XE avec le package privé secAudit. (cf présentation de David Baffaleuf) • SQL Server 2012 propose également des améliorations sur cette fonctionnalité o Ajout de l’action FAIL_OPERATION en ca d’échec d’écriture dans les journaux d’audit o Contrôle du nombre de fichiers qui seront créés pour les audits o Ajout d’un prédicat directement dans les objets d’audits o Ajout d’informations additionnelles lorsque cela est possible o Reprise automatique d’écriture dans les journaux d’audits en cas de rupture de liaison entre SQL Server et les fichiers sur disque o Audits de serveurs supportés sur l’ensemble de la gamme des éditions SQL Server 2012. Les audits de bases de données ne sont supportés que sur les éditions Enterprise, DataCenter, Evaluation et Developer 4
  • 44. AUDITS • Utilisation de la gestion basée sur les règles depuis SQL Server 2008 o Création d’un véritable standard de sécurité o Traduction des règles de sécurité en police sur SQL Server o Audit périodique avec application des règles du standard sur l’ensemble des instances SQL Server. 4
  • 46. Merci à nos Sponsors Rencontrez les dans l’espace partenaires

Notas do Editor

  1. Firewall périphérique hardware ou software qui autorise ou bloque le trafic réseau (ACL) Fournit une protection contre les attaques de type DDoS Architecture des réseaux Exposition au réseau internet Utilisation de DMZ Chiffrement de la connexion Empêcher les sniffers de réseau
  2. MPIO Chiffrement des blocs de données mais pas du bloc d’adresse RKM RSA Key Manager MPIO : Impact sur les performances la charge de travail est traitée par les processeurs du serveur de bases de données Peut être consommateur de ressources si la charge transactionnelle est importante
  3. Nécessité d’être administrateur local de la machine pour installer SQL Server 2000
  4. Détachement SQL Server tente de configurer les ACL NTFS pour le compte utilisateur à l’origine de l’opération. Les autres ACL sont supprimées. Si le compte ne peut être configuré (Login SQL Server) les ACL sont configurés pour le compte de service et le groupe administrateur Attachement SQL Server paramètre automatiquement les ACL nécessaires pour le compte de service SQL et éventuellement pour le groupe administrateur local (si le moteur a accès aux fichiers) Si l’identité du compte ne peut être emprunté (SQL Server Login) c’est le compte de service SQL qui est utilisé
  5. LOCAL SYSTEM Privilèges élevés Les applications utilisant ce compte ont un accès à l’instance SQL Server Compte utilisateur partargé Accès mutuel aux ressources de chaque instance qui possède le même compte utilisateur Accès non maitrisé aux ressources des instances SQL Server
  6. Comptes managés et comptes virtuels Avantages : Gestion des mots de passes automatique Gestion des SPN automatique Compte ne pouvant être utilisé que sur un seul ordinateur
  7. SQL Browser et désactivation : Réduit la surface d’attaque Limite la portée des attaques (SQL Slammer par exemple)
  8. Politique de sécurité des mots de passe : Vérifier que la politique de sécurité est bien appliquée sur le serveur qui héberge SQL Server
  9. Avantages des rôles ? Gestion centralisée des permissions au travers d’un seul «conteneur» Administration simplifiée et contrôlée Quand utiliser les rôles ? Un ensemble de privilèges similaires sont affectés à plusieurs principales
  10. Qu’est-ce qu’un schéma ? Conteneur logique d’objets (tables, vues, procédures, fonctions, types etc…)
  11. L’implémentation d’une solution d’audit personnalisée avant SQL Server 2008 passe par la mise en place : Des audits des logins (FAILED par défaut) De l’utilisation des triggers de serveurs, logins et DDL Des traces profiler
  12. L’implémentation d’une solution d’audit personnalisée avant SQL Server 2008 passe par la mise en place : Des audits des logins (FAILED par défaut) De l’utilisation des triggers de serveurs, logins et DDL Des traces profiler
  13. L’implémentation d’une solution d’audit personnalisée avant SQL Server 2008 passe par la mise en place : Des audits des logins (FAILED par défaut) De l’utilisation des triggers de serveurs, logins et DDL Des traces profiler