Académique Documents
Professionnel Documents
Culture Documents
1 • Introduction
2 • Avantages
3 • Inconvénients
5
• Système d’audit de SQL Server
8 • Cas d’étude
9
• Conclusion
1
02/11/2012
2
02/11/2012
3
02/11/2012
4
02/11/2012
5
02/11/2012
6
02/11/2012
7
02/11/2012
8
02/11/2012
9
02/11/2012
10
02/11/2012
l’aspect sécurité
Les changements qui pourraient intervenir sur les audits
eux mêmes sont enregistrés, ce qui limite fortement les
possibilités de contournements par une personne mal
intentionnée. Il va de soi que les fichiers d'audit ne
soient accessibles que par un nombre restreint de
personnes.
11
02/11/2012
12
02/11/2012
Objet de
Evénement
spécification
Select, Insert, Delate
d’audit de base de
. . .
données
Objet d’audit
Journal d’événement des
serveur
applications
Objet de
Evénement
spécification
Select, Insert, Delate
d’audit de base de
. . .
données
Objet d’audit
serveur
Evénement Objet de
LOGIN_CHANGE spécification
. . . d’audit Serveur Journal d’événement de
sécurité
Objet d’audit
serveur
Evénement
Objet de
CHANGE_STATE_SERV
spécification
ER
d’audit Serveur
. . .
Fichier
Evénement
Objet de spécification d’audit de
Select, Insert, Delate
base de données
. . .
Objet d’audit serveur Journal d’événement des applications
Evénement
Objet de spécification d’audit de
Select, Insert, Delate
base de données
. . .
Objet d’audit serveur
Evénement
Objet de spécification d’audit
LOGIN_CHANGE
Serveur Journal d’événement de sécurité
. . .
Objet d’audit serveur
Evénement
Objet de spécification d’audit
CHANGE_STATE_SERVER
Serveur
. . .
Fichier
13
02/11/2012
Objet de
Evénement
spécification
Select, Insert, Delate
d’audit de base de
. . .
données
Objet d’audit
Journal d’événement des
serveur
applications
Objet de
Evénement
spécification
Select, Insert, Delate
d’audit de base de
. . .
données
Objet d’audit
serveur
Evénement Objet de
LOGIN_CHANGE spécification
. . . d’audit Serveur Journal d’événement de
sécurité
Objet d’audit
serveur
Evénement
Objet de
CHANGE_STATE_SERV
spécification
ER
d’audit Serveur
. . .
Fichier
niveau de l'instance.
14
02/11/2012
Objet de Objet de
Objet de
Evénement Objet de
spécification spécification
spécification
Select, Insert, Delate spécification
d’audit de
d’audit de base de d’audit de base
base de
de
. . . d’audit Serveur
données données
données
Objet d’audit
Journal d’événement des
serveur
applications
Objet de
Evénement
spécification
Select, Insert, Delate
d’audit de base de
. . .
données
Objet d’audit
serveur
Evénement Objet
Objet de
de
LOGIN_CHANGE spécification
spécification
. . . d’audit
d’audit Serveur
Serveur Journal d’événement de
sécurité
Objet d’audit
serveur
Evénement
Objet de
CHANGE_STATE_SERV
spécification
ER
d’audit Serveur
. . .
Fichier
15
02/11/2012
Objet de
Objet de
spécification
spécification
d’audit de base de
d’audit Serveur
données
Objet de
Objet de
spécification
spécification
d’audit de base de
d’audit Serveur
données
Les ordres SELECT, INSERT, UPDATE, DELETE Les connexions réussies et échouées, les
effectués sur des objets du schéma (tables, vues, déconnexions et changements de mots de passe.
procédures stockées,…) Les changements de rôles et des utilisateurs.
16
02/11/2012
Objet de
Evénement
spécification
Select, Insert, Delate
d’audit de base de
. . .
données
Objet d’audit
Journal d’événement des
serveur
applications
Objet de
Evénement
spécification
Select, Insert, Delate
d’audit de base de
. . .
données
Objet d’audit
serveur
Evénement Objet de
LOGIN_CHANGE spécification
. . . d’audit Serveur Journal d’événement de
sécurité
Objet d’audit
serveur
Evénement
Objet de
CHANGE_STATE_SERV
spécification
ER
d’audit Serveur
. . .
Fichier
Objet de
Evénement
spécification
Objet
Select, d’audit
Insert, Delate serveur
d’audit de base de
. . .
données
Objet d’audit
Journal d’événement des
serveur
applications
Objet de
Evénement
spécification
Select, Insert, Delate
d’audit de base de
. . .
données
Objet d’audit
serveur
Evénement Objet de
LOGIN_CHANGE spécification
. . . d’audit Serveur Journal d’événement de
sécurité
Objet d’audit
serveur
Evénement
Objet de
CHANGE_STATE_SERV
spécification
ER
d’audit Serveur
. . .
Fichier
17
02/11/2012
- Chaque objet d'audit SQL Server ne peut collecter les données que d'un seul
type d'objet de spécification d'audit.
- L'audit s'effectue au niveau de l'instance SQL Server et on peut exécuter
plusieurs audits par instance.
- Lorsqu’on définisse un audit, on spécifie l'emplacement de sortie des résultats.
Il s'agit de la destination de l'audit appelé cible.
- L'audit est créé dans un état désactivé et ne s'exécute pas automatiquement
pour contrôler les actions.
- Les données d'audit sont transmises vers la destination de l'audit lorsque ce
dernier est activé.
Objet de
Evénement
spécification
Select, Insert, Delate
d’audit de base de
. . .
données
Objet d’audit
Journal d’événement des
serveur
applications
Objet de
Evénement
spécification
Select, Insert, Delate
d’audit de base de
. . .
données
Objet d’audit
serveur
Evénement Objet de
LOGIN_CHANGE spécification
. . . d’audit Serveur Journal d’événement de
sécurité
Objet d’audit
serveur
Evénement
Objet de
CHANGE_STATE_SERV
spécification
ER
d’audit Serveur
. . .
Fichier
18
02/11/2012
Les cibles
Les cibles sont des containers dans lesquels sont enregistrées les
données relatives aux événements audités.
Les cibles
19
02/11/2012
- Vues systèmes
20
02/11/2012
21
02/11/2012
etc .
22
02/11/2012
Cette fonction ne peut être utilisée que pour les cibles de type
fichier plat.
Vues Systèmes
23
02/11/2012
24
02/11/2012
25
02/11/2012
26
02/11/2012
Après avoir créé et activé les objets d'audit SQL Server pour les 3 cibles
concernées, il faut ensuite effectuer un paramétrage supplémentaire pour que
SQL Server soit autorisé à écrire dans le journal de sécurité Windows. Pour
cela nous utiliserons la console de gestion des stratégies locales du serveur
mais il est également possible d'utiliser les utilitaires en ligne de commande
auditpol ou secpol. On accède à la console de gestion des stratégies locales du
serveur à partir du Panneau de configuration qui est référencée dans le menu
Outils d'administration.
27
02/11/2012
Il faut ajouter le compte de service du serveur SQL. Dans notre cas nous
ajouterons le compte LOCAL SYSTEM.
28
02/11/2012
Il faut activer les audits pour les 2 types d'accès : Réussite et Echec
29
02/11/2012
USE [master];
GO
-- Audit changement statut serveur Un objet de spécification d'audit sera à
l'écoute des événements ou actions concernant les changements sur les
comptes de connexion.
CREATE SERVER AUDIT SPECIFICATION audit_change_status_server
FOR SERVER AUDIT file_modif_objects_database
ADD (SERVER_STATE_CHANGE_GROUP),
ADD (SERVER_OPERATION_GROUP),
WITH ( STATE = ON );
GO
30
02/11/2012
31
02/11/2012
Après avoir créé les objets de spécification d'audit serveur, il nous faut créer
maintenant un autre objet de spécification d'audit de bases de données pour surveiller
les événements SELECT, INSERT, UPDATE, DELETE et RERENCES en
provenance de l'utilisateur dbo pour la table dbo.access .
USE DB_AUDIT
GO
-- Audit d'accès pour la table dbo.access de la base de données
-- DB_AUDIT
CREATE DATABASE AUDIT SPECIFICATION file_modif_objects_database
FOR SERVER AUDIT file_modif_objects_database
ADD (SELECT, INSERT, UPDATE, DELETE, REFERENCES ON dbo.access BY public)
WITH (STATE = ON)
GO
32
02/11/2012
33
02/11/2012
34
02/11/2012
Pour pouvoir visualiser les enregistrements d'audits dans un fichier plat nous
utiliserons la DMF fn_get_audit_file, les vues systèmes sys.dm_audit_actions
et sys.dm _audit _class_type de la manière suivante :
35
02/11/2012
SELECT
f.session_id,
a.name AS action_name,
m.class_type_desc,
a.covering_action_name,
f.statement,
f.server_principal_name
FROM fn_get_audit_file('E:\audit\application_log_modif_status_server*',
DEFAULT, DEFAULT) AS f
INNER JOIN sys.dm_audit_class_type_map AS m
ON m.class_type = f.class_type
INNER JOIN sys.dm_audit_actions AS a
ON a.action_id = f.action_id
ORDER BY event_time DESC
SELECT sur l'objet concerné (ici la table dbo.access). C'est la raison pour
laquelle nous aurons, à chaque fois qu'une instruction UPDATE ou DELETE
est effectuée en utilisation une clause WHERE, deux lignes correspondant aux
actions SELECT et UPDATE ou DELETE.
36
02/11/2012
37
02/11/2012
38