article payant

Les bases de la sécurité des SGBD : un pas à pas 

Par Searchsecurity.com Le 19 janvier 2010 (18:03)

Rubriques : Sécurité - Menaces informatiques - SGBD Tags : securite - chiffrement - sgbd - correctifs - base-donnees - acces

Afin de vous aider à approcher la question de la sécurité des bases de données, nous avons recensé une liste de contrôles rapides qui couvre la configuration des bases de données, la protection des données, la gestion des comptes utilisateurs, les interactions entre OS et SGBD ainsi que quelques éléments concernant les applications placées en frontal des bases de données. Des fondations à inspecter avant de se préoccuper de fonctions de sécurité avancées.

Les injections de code SQL et les dépassements de tampons sont des vulnérabilités classiques des SGBD qui sont exploitées depuis plus de dix ans et restent pourtant parmi les plus connus des vecteurs d’attaques de bases de données, même sur des systèmes sur lesquels ont été appliqués les derniers correctifs. Les hackers font aussi fréquemment usage du fait que les administrateurs utilisent les logins et mots de passe par défaut de la base, pendant que, dans le même temps, les administrateurs de bases de données se plaignent du coût associé à la gestion et au provisionning des comptes utilisateurs....

Enfin, on apprend régulièrement, notamment du fait des obligations de divulgation d’intrusion dans certains pays comme les Etats-Unis que des données censées être sécurisées transitent par des systèmes non sécurisées ou que des informations stockées sur des bandes non chiffrées sont égarées (le dernier paquet télécom, voté fin 2009, contient une disposition qui va contraindre les opérateurs à avertir leurs abonnés d’éventuelles intrusions touchant à leurs données privées).

Bref, il est clair que malgré les avertissements, nombre d’administrateurs négligent encore les recommandations les plus basiques en matière de sécurisation de leurs bases de données. Avant de mettre l’accent sur des technologies avancées comme le chiffrage, la corrélation ou l’investigation numérique légale (forensic analysis), les entreprises doivent donc s’assurer qu’elle respectent le b.a.-ba et qu’elles mettent en œuvre une approche claire, concrète et pragmatique de la sécurité des base de données.

Pour faire simple, nous avons recensé ci-après une liste de contrôles rapides qui couvre la configuration des bases de données, la protection des données, la gestion des comptes utilisateurs, les interactions entre OS et SGBD, ainsi que quelques éléments concernant les applications placées en frontal des bases de données. Si ces fondements ne sont pas respectés, il n’est même pas utile de se préoccuper de fonctions de sécurité avancées.

- Contrôle d’accès et gestion des autorisations

Vous pourriez être tentés de sauter cette étape car vous pensez avoir déjà mis en place des contrôles d'accès, avant d’échouer à une enquête de sécurité. Ce n’est pas parce que vous avez mis en place un système de contrôle d'accès que votre système est sécurisé. La gestion de l’authentification sur une base de données et l'authentification des utilisateurs sur un domaine sont deux choses bien différentes, et il faut prendre grand soin à coordonner ces deux formes de sécurisation de façon à ce qu’aucun utilisateur ne puisse contourner entièrement les autorisations d’accès aux bases de données.

L’authentification est la première ligne de défense pour assurer la sécurité des bases de données et des données qu’elles contiennent. Il est donc important de bien gérer les comptes utilisateurs et surtout de s’assurer de leur maintenance dans le temps.

- Evaluer la configuration de la base de données

Ceci est très important pour déterminer la sécurité et l’intégrité opérationnelle de la base.

- Evaluez les interactions entre la base de données et la plate-forme système.

Toutes les bases fournissent des moyens pour appeler directement des commandes du système d'exploitation sous-jacent afin de réaliser des tâches administratives. Ces outils s’appuient sur des outils OS associés à des permissions système et ouvrent un chemin de communication bi-directionnel entre l’OS et la base de données. Les recommandations suivantes visent à combler les éventuelles failles de sécurité à la frontière entre ces deux composants.

- Sécurisez les communications

Il est impératif de s’assurer que les communications avec la base de données s’effectuent de façon sécurisée.

- Appliquez régulièrement les correctifs du SGBD

Appliquer les correctifs, c’est s’appuyer sur l'expertise en sécurité du fournisseur de base de données. Cela suppose d’avoir un processus en place pour qualifier et installer les correctifs distribués par l’éditeur aussi régulièrement que possible. Pour cela, il faut typiquement :

- Contrôler l’usage du SGBD par les applications

Les applications d’entreprise et les applications Web font plus qu’employer les fonctions de stockage du SGBD et disposent de comptes utilisateurs possédant parfois de droits étendus. Il est donc important de segmenter les autorisations entre les utilisateurs communs et les comptes « applicatifs »

- Sécurisation des supports de stockage

Protéger les supports de sauvegarde n'est pas une option, car la perte de supports est la principale cause de violations de données. Il existe plusieurs méthodes disponibles qui ne nécessitent pas une modification des processus ou des applications, y compris le chiffrement transparent de la base de données, qui est souvent offert par les fournisseurs.

- Analyse des logs et journaux d’événements

- Acceptez l’insécurité !
Peu importe ce que vous faites, il n'existe pas de système sûr à 100 %. Il est donc important de planifier votre réaction en cas de faille de sécurité.

- Pour la conformité, surveillez le chiffrement et mettez en place une politique d‘audit

Si vous manipulez des données sensibles, il est vraisemblable que vous deviez vous conformer à certaines réglementations imposées par votre industrie ou par le gouvernement. Souvent cela implique l’usage du chiffrement de données et un audit régulier de vos systèmes et procédures. Bien sûr, il est possible de s’appuyer sur les outils standards fournis par l’éditeur de SGBD, mais étant donné la difficulté de mise en œuvre, de déploiement et d’administration de ces systèmes, il est vraisemblable que vous aurez à acheter des outils pour alléger la gestion quotidienne et les questions de performance. Utiliser les outils standards permet certes de collecter les données, mais nécessite la mise en place d’un processus interne et de rapports appropriés pour démontrer la conformité. Des outils commerciaux apportent des rapports prêts à l’emploi adaptés à de multiples réglementations et offrent souvent de meilleures performances.

Il existe de nombreuses formes de chiffrement de bases de données. Elles se répartissent en deux grandes familles: le chiffrement transparent, qui couvre toute la base et ne requiert aucune modification des processus métier, et le chiffrement utilisateurs qui ne s’applique qu’à des objets spécifiques de la base de données, mais nécessite la modification du code de l'application. Le chiffrement transparent est vraiment adapté pour protéger les données sur les supports de stockage, tels que disques durs ou bandes magnétiques. Le chiffrement utilisateur peut être utilisé à la fois pour la protection des supports et pour protéger des données d’une utilisation abusive.

Pour répondre aux contraintes réglementaires, des dispositifs comme le chiffrage transparent ne sont pas suffisants pour répondre aux exigences telles que celles de PCI DSS (Payment Card Industry Data Security Standard), même s’ils sont suffisants pour nombre d’autres applications. Comme le coût et la complexité sont radicalement différents entre ces deux options, une évaluation précise de la technologie adaptée à votre besoin est nécessaire avant de décider quelle voie choisir.

Par Adrian Lane

Adrian Lane est un analyste en sécurité conformé chez Securosis, société de conseil et de recherche en sécurité.