Les journaux systèmes (Logs)

Introduction

L’analyse des journaux système (ou logs) est une composante essentielle de l’informatique forensique, …​

…​

particulièrement dans la détection, l’enquête, et la prévention des incidents de sécurité.

Définition

Les journaux système sont des enregistrements d’événements qui se produisent sur des appareils ou des réseaux informatiques.

…​

Ils fournissent des traces qui peuvent être analysées pour:

  • comprendre l’activité d’un système,

  • identifier des comportements anormaux,

  • retracer des actions malveillantes.

"Si ce n’est pas loggé, ça n’a pas eu lieu" — sans logs, impossible d’enquêter sur un incident, de prouver une compromission, ou de respecter la conformité.

Types de journaux

Les journaux système peuvent provenir de diverses sources dans un environnement informatique :

Journaux d’événements système (System Logs) :

Capturent les événements générés par le système d’exploitation, comme les démarrages, les arrêts, les erreurs matérielles, ou les tentatives de connexion.

…​

Par exemple:

  • dans Windows, il s’agit des journaux d’événements Windows (Event Viewer)

  • dans Linux, on retrouve souvent des logs dans /var/log/.

Journaux d’application (Application Logs) :

Enregistrent des événements spécifiques à une application, comme les erreurs, les exceptions, ou les accès aux fonctionnalités.

Journaux de sécurité (Security Logs) :

Enregistrent des événements relatifs à la sécurité, tels que:

  • les connexions réussies et échouées,

  • les changements de droits,

  • les tentatives d’accès non autorisées.

Journaux de serveur Web (Web Server Logs) :

Capturent les requêtes HTTP reçues par un serveur web. Ces journaux incluent des informations …​

…​

comme les adresses IP des visiteurs, les pages consultées, et les réponses du serveur.

Journaux de pare-feu (Firewall Logs) :

Contiennent des informations sur le trafic réseau autorisé ou bloqué par le pare-feu.

…​

Ils sont essentiels pour identifier des attaques réseau ou des tentatives d’accès non autorisées.

Journaux de réseau (Network Logs) :

Capturent les communications sur le réseau, comme les connexions TCP/IP, les requêtes DNS, ou les flux de paquets.

…​

Ces journaux peuvent provenir de routeurs, commutateurs, ou systèmes de détection d’intrusion (IDS).

Journaux d’accès (Access Logs) :

Surveillent l’accès à des systèmes spécifiques, comme un serveur, une base de données, ou un fichier particulier.

Objectifs de l’analyse des journaux système

L’analyse des journaux système peut être effectuée dans divers contextes, notamment :

Détection d’incidents de sécurité :

Identifier les comportements anormaux ou les activités suspectes, comme

  • des tentatives de connexion échouées répétées,

  • des changements de configuration non autorisés,

  • des transferts de fichiers inhabituels.

Enquête sur des incidents :

Reconstituer la chronologie des événements pour comprendre comment une intrusion s’est produite, …​

…​

quelles actions l’attaquant a réalisées, et quelles parties du système ont été affectées.

Vérification de conformité :

S’assurer que les systèmes respectent les politiques de sécurité et les réglementations légales en surveillant l’activité utilisateur et système.

Optimisation des performances :

Diagnostiquer des problèmes de performance système ou réseau en analysant les logs pour identifier les goulots d’étranglement ou les erreurs fréquentes.

Audit des accès :

Suivre qui a accédé à quelles ressources et quand, pour détecter des accès non autorisés ou des abus de privilèges.

Techniques d’analyse des journaux système

L’analyse des journaux système peut varier en complexité, selon les objectifs et le volume de données à traiter.

Quelques techniques clés :

Analyse manuelle :

Pour des systèmes ou des journaux de petite taille, l’examen manuel peut être suffisant.

…​

Les administrateurs peuvent utiliser des outils de ligne de commande (comme grep, awk sur Linux) ou …​

…​

des visionneuses de journaux pour rechercher des événements spécifiques ou des erreurs.

Agrégation et corrélation des logs :

Dans des environnements complexes, il est nécessaire d’agréger les journaux provenant de différentes sources.

…​

Des systèmes d’information et de gestion des événements de sécurité (SIEM) comme Splunk, …​

…​

ELK Stack (Elasticsearch, Logstash, Kibana), ou Graylog permettent de centraliser et corréler les logs pour identifier des patterns suspects à travers l’infrastructure.

Détection de comportements anormaux :

Utilisation de règles de corrélation ou d’apprentissage automatique pour détecter des anomalies dans les journaux système.

…​

Par exemple, une augmentation soudaine des tentatives de connexion échouées pourrait indiquer une tentative de force brute.

Filtrage et réduction des logs :

Dans les environnements avec un grand volume de journaux, …​

…​

il est important de filtrer les informations non pertinentes et de se concentrer sur les événements critiques.

Visualisation des données :

L’utilisation de graphiques et de tableaux pour représenter les logs de manière visuelle permet de mieux comprendre les tendances et anomalies.

…​

Les dashboards des outils SIEM sont souvent utilisés pour cela.

Recherche temporelle :

Examiner les logs sur une période donnée pour reconstituer une séquence d’événements (par exemple, juste avant et après une attaque).

Outils populaires pour l’analyse des journaux système

Splunk :

Un outil commercial de référence pour:

  • la collecte,

  • l’indexation,

  • la recherche

  • la visualisation de données issues des journaux système.

…​

Il est largement utilisé dans les entreprises pour surveiller la sécurité et les performances.

ELK Stack (Elasticsearch, Logstash, Kibana) :

Une suite open-source qui permet de collecter, analyser et visualiser les logs.

  • Elasticsearch est utilisé pour la recherche,

  • Logstash est utilisé pour la collecte et le traitement des logs,

  • Kibana est utilisé pour la visualisation.

Graylog :

Une autre solution open-source qui permet de centraliser et d’analyser les journaux système.

Il est souvent utilisé pour des enquêtes sur les incidents de sécurité.

Wireshark :

Principalement utilisé pour l’analyse des journaux réseau, Wireshark permet de capturer et d’inspecter les paquets réseau en temps réel.

OSSEC :

Un système de détection d’intrusion open-source qui analyse les journaux système pour identifier des activités suspectes.

Syslog-ng :

Utilisé pour centraliser les logs des systèmes Linux et Unix, ainsi que des appareils réseau, et les envoyer à une base de données ou un autre système pour analyse.

Défis de l’analyse des journaux système

Volume et complexité des données :

Avec l’augmentation des systèmes et applications en réseau, le volume de logs généré est immense, rendant leur analyse difficile sans outils spécialisés.

Normalisation des logs :

Les journaux provenant de différentes sources peuvent avoir des formats variés, ce qui complique leur corrélation.

…​

La normalisation des logs est donc une étape critique.

Exactitude des horodatages :

Les horodatages dans les logs doivent être précis et synchronisés sur tous les systèmes pour reconstituer correctement la chronologie des événements.

Chiffrement et sécurité des logs :

Les journaux eux-mêmes doivent être sécurisés pour empêcher leur falsification ou leur accès non autorisé, …​

…​

ce qui peut ajouter une complexité supplémentaire à l’analyse.

Faux positifs et bruit :

De nombreux événements générés dans les journaux peuvent ne pas être liés à un incident de sécurité, …​

…​

créant ainsi des faux positifs ou du bruit qui peuvent détourner l’attention des véritables menaces.

Protéger les logs : un attaquant qui efface les logs efface aussi ses traces. Centraliser et chiffrer les logs sur un serveur dédié, en écriture seule.

Bonnes pratiques

Centralisation des logs :

Utiliser des solutions de centralisation pour agréger les journaux de toutes les sources au même endroit afin de faciliter leur analyse.

Rotation et rétention des logs :

Mettre en place des politiques de rotation et de rétention des journaux pour s’assurer qu’ils sont disponibles en cas de besoin, mais sans encombrer le système.

Alertes en temps réel :

Configurer des alertes basées sur des règles pour être notifié immédiatement en cas d’événements critiques.

Audits réguliers :

Effectuer des audits réguliers des journaux pour vérifier leur complétude et leur intégrité, ainsi que pour identifier des signes de compromission.

Conclusion

Les logs sont la mémoire du système — bien gérés, ils transforment chaque incident en opportunité d’apprentissage.