Skip to main content

Surveillance et contrôle du réseau

Intro 

  • IDS (Intrusion Detection System) : analyse les paquets qui lui arrive / qui circule pour surveiller
  • IPS (Intrusion Prevention System) : même chose mais peut aussi bloquer les fluxs
  • serveur AAA (authentification autorisation traçabilité/acomptability) : serveur d’authentification
  • syslog : enregistre les logs qu’il reçoit, qui lui sont transmis
  • snmp: récupère des info matérielles par le biai d’une application 


rappel : un switch de lvl 3 fait du routage. Il n'a pas d'adresse IP car c'est un switch mais on peut donner une adresse au interface (ex : tu as l’adresse X sur le vlan Y)

Les systèmes de supervision

But de la supervision

La supervision est un élément clé de la fourniture de services aux organisations. Son but principal est de :

  • Déceler les dysfonctionnements le plus rapidement possible, si possible avant qu'ils ne se produisent (maintenance pro-active).
  • Donner aux techniciens les moyens de détecter rapidement voire en temps réel les dysfonctionnements en fournissant a posteriori des statistiques de disponibilité ainsi que des informations temporelles et géographiques des incidents


Les fonctions de la supervision

Pour atteindre ses objectifs, elle possède des fonctions de :

  • Surveillance du fonctionnement et des performances des équipements et des services ;

  • Visualisation de l'état instantané des éléments surveillés ;

  • Mémorisation des événements ;

  • Visualisation des historiques ;

  • Recherche d'événements passés ;

  • Réalisations de statistiques, de graphes ;

  • Résolution automatique des problèmes, passage en mode dégradé ;

  • Alerte graduée des personnels techniques.


Les différents modes supervision

Un système de supervision performant permet de mixer différents modes de supervisions en fonction des besoins

Monitoring actif/passif

Mode actif

Dans cette forme de supervision, c’est le superviseur qui interroge à intervalles réguliers les composants à surveiller. AD_4nXfkYBWkFBDpfT4F1lfe18RBXPbBywe9-5gOvYi3qdDmW85WxpPXWXTfIY7sU2J66AOtBZg85ZLJiorN9kk8hrzUNXhr44g4rgCa28zeIL_UMWBm7bdyc9UBDTjnK_hDDwgyefRi58oA1bmvQDtMe9-fpZeeASyT3wTCH-MMrhgE1jnAOOZaRRo?key=NTSoofBbYNxUYuMmNPx4JeTF

Monitoring passif

Cette forme de supervision est l’exact inverse de la précédente. 

Ici, ce sont les composants surveillés qui envoient des métriques et messages vers une instance centrale de supervision.

Ces envois d’information peuvent se faire soit :

  • A intervalle régulier

  • Suite à un événement systèmeAD_4nXcgLzS4mA2mmlAbduNjUallP20wfKbgo_O35eLtmQAGGtaXBVPVaEc0VMzfUzr49fqKog0JVmRfYbaHHFJ-_O4-2hNbd0WvsApUgmMyHB4IbFwp57vMPp54PlfpCg9aX0Rn7LhxQmy3HHZnIVk5Wm3m4pmwzfQ_rF3X306ICVFgkBHLxBAQzGg?key=NTSoofBbYNxUYuMmNPx4JeTF

 

Monitoring externe/interne

Monitoring externe

On parle de monitoring externe lorsque la mesure de la disponibilité d’un service se fait par un test sur une machine hébergeant le client utilisateur du service. 

Cette solution ne nécessite pas d’instrumentation spécifique sur le serveur à superviser.

Monitoring interne

Le monitoring est dit interne lorsque le test est fait sur la machine qui héberge le service visé.

Il nécessite un agent de supervision installé sur le serveur à superviser. 

Interne vs Externe

Le monitoring externe permet le mieux de répondre à la question de savoir si le service est bien rendu.

En cas de dysfonctionnement, le monitoring interne, qu’il soit passif ou actif, est la meilleure source d’informations et d’aide au diagnostic.


Les solutions logicielles de supervision

Ces logiciels sont généralement basés sur deux éléments principaux : un superviseur et des agents. Le superviseur est la console qui permet à l'administrateur réseau d'exécuter des requêtes de management. 

Les agents sont des modules logiciels attachés à une interface réseau d’un équipement managé. Ils permettent de récupérer des  informations sur différents éléments de l’équipement. 


Il existe de nombreuses solutions logicielles :

  • Produits Constructeurs (Hp Openview, Cisco TousandEyes, …) ;
  • Produits Propriétaires (IT Supervisor, NetView, Pandora FMS…) ;
  • Produits Libres (Cacti, Nagios, MRTG, Centreon, …) ;
  • Distributions libres complètes (Shinken, ZeroShell, Zabbix, Cacti ...)


Quel que soit le logiciels, certains éléments se retrouvent souvent :

  • Une architecture de surveillance en mode passif ou en mode actif,
  • Une interface d'exploitation graphique Web,
  • Une centralisation possible des données et des évènements.
  • L'utilisation quasi général, du protocole SNMP,
  • L’exploitation du protocole Netflow (Cisco),
  • L'utilisation quasi général, du protocole Syslog pour la centralisation des journaux.

Les technologies sous-jacentes

MIB : Management Information Base

L’objectif même de la supervision suppose des échanges d’information entre les agents et le superviseur. Les informations échangées sont TOUJOURS des informations sur les agents.


La MIB (Management Information base) est la base de données des informations de gestion. Elle est gérée par l’objet supervisé (agent) auprès duquel le manager (superviseur) va venir pour s’informer.


Deux MIB publics ont été normalisées : MIB I et MIB II 

Les principales informations concernant les MIBs standards sont contenues dans les RFC 1157/1155/1213.

MIB I

Contient les variables globales telles que le nom de l’équipement, sa position géographique, le nombre de paquets transmis, etc..

MIB II

Contient les informations de la MIB 1 et toutes les variables relatives à SNMP.

La MIB se présente ainsi sous forme d'arbre avec :

  • une partie commune à tous les agents

  • une partie commune à tous les agents d'un même type de matériel

  • une partie spécifique à chaque constructeur.


MIB standardise la communication car un switch cisco ne stocke pas ses informations avec le même nom de variable ou au même endroit qu’un switch hp (par exemple). MIB utilise un requête avec des chiffres, sorte de commande standardisée, qui évite les problèmes de noms/localisations différentes


La MIB est une structure de données arborescente dont chaque nœud est identifié par un code numérique ou OID (Object Identifier).

Pour accéder aux données souhaitées, on utilisera l’OID (Object Identification) qui désigne son emplacement dans la MIB. snmp mib structure oid


Par exemple pour accéder 

  • Aux adresses IP d’un routeur il faut accéder à l’OID .1.3.6.1.2.1.4.20 

  • À la table de routage d’un routeur il faut accéder à l’OID .1.3.6.1.2.1.4.21. 

La MIB contient :

  • Une partie commune à tous les agents SNMP, 

  • Une partie commune à tous les agents SNMP d’un même type de matériel (routeur par exemple), et 

  • Une partie spécifique à chaque constructeur.


Remarque : Les éléments utiles pour la supervision des matériels d’un réseau informatiques ont tous un OID qui commence par .1.3.6.1


Le protocole SNMP

Voir la fiche dédiée.

Les objets de la supervision, la configuration 

Les objets principaux

Ci-dessous les objets simples

 

Hôtes (Host)

Les hôtes, ce sont les équipements gérés contenant donc les agents SNMP. Ils possèdent nécessairement une configuration IP. 

Le contrôle permet en général de définir 3 états pour nos hôtes : OK, DOWN, UNREACHEABLE.

Service

la supervision peut suivre le fonctionnement d’un service particulier présent sur un hôte 

Contact 

la supervision permet d’envoyer des alertes (courriel ou sms) à des utilisateurs définis

Action

la supervision

 

La supervision met en œuvre deux catégorie d’actions souvent appelées commandes (command) :

  • Le test de réponse (check command) : exécutée à intervalle régulier pour vérifier l’état de l’élément surveillé

  • Le traitement d’événement (event handler) : déclenché lorsque l’élément surveillé change d’état.

Attention, ici une « commande » correspond souvent à un script et pas à une commande shell

Plages horaires (Timeperiod)

Paramètre de surveillance qui permet de définir des horaires d’activité de surveillance différents d’un élément à l’autre

Les objets de type groupe

Pour simplifier et rendre plus souple la configuration de la supervision, il est possible de définir des éléments de configuration sur des groupes. 

Un élément configuré sur un groupe s’applique à tous les membres du groupe.


Exemple de configuration sur le superviseur

La définition de ces objets se trouve le plus souvent dans des fichiers de configuration sous forme textuelle. Des logiciels peuvent offrir néanmoins une interface graphique de définition des objets.

 

Exemple : 

define host {
    host_name SRV-AD
    alias Windows 2019DC
    address 172.16.101.100
    hostgroups Windows, Serveurs
    check_command check_ping
    max_check_attempts 3
    check_interval 5
    retry_interval 2
    check_period 24x7
    contacts michel, kelia
    contact_groups administrateurs
    notification_interval 30
    notification_period 8x5
    }

Les « plus » de certaines solutions 

Les dépendances entre agents

Principe

Les dépendances sont utilisées afin de répondre à deux principaux besoins :

  • Limiter l’envoi de notifications

  • Cibler les alertes

 

la dépendance évidente entre un service et l’hôte qui l’héberge ne rentre pas dans ce contexte.


Les dépendances physiques

Les dépendances physiques concernent ls équipements donc les objets Hôtes. Cela consiste à prendre en compte les liens physiques entre les équipements résultant des connexions physiques du réseau.

Par exemple : un ordinateur A situé de l’autre côté d’un switch S par rapport à la station de supervision. Si le switch tombe il est normal de ne plus pouvoir joindre l’ordinateur. Alors l’ordinateur A dépend du switch B

Cette dépendance liée aux circuits du réseau est parfois appelée lien de parenté. L’hôte dépendant est considéré comme l’enfant. 


S’il existe plusieurs chemins entre le superviseur et un hôte, il possible de définir pour lui plusieurs parents. Dans ce cas, tous les parents d’un hôte doivent être dans un état non-OK pour que l’hôte soit considéré comme injoignable. Dans le cas où au moins un chemin d’accès est opérationnel, le superviseur continue de surveiller cet hôte.


Les dépendances logiques

Les dépendances logiques consistent prendre en compte des liens de dépendance logicielle, c’est-à-dire essentiellement dépendance entre des services.


Par exemple : Un service S chargé de superviser l’accès à un serveur web W est soumis à une authentification basée sur un annuaire LDAP A. Si le serveur LDAP A est en panne, l’accès pour S au serveur W sera impossible. Dans cette situation, la notification envoyée à l’opérateur de surveillance ne doit concerner que pour le serveur LDAP A et non le serveur web W.

Escalade de notifications

D'une manière générale, en cas de déclenchement d'une alerte, une notification permet de contacter un ou plusieurs contacts (groupes de contacts). 

Une escalade de notifications permet, lorsqu’une même notification de reproduit, 

de changer de contact ou de changer le moyen de notification (remplacer les mails par un SMS). 

 

La centralisation des journaux d’événements

Les objectifs 

Le rôle des journaux

Rappel : parmi les fonctions de la supervision on trouve la mémorisation de événements, l’affichage d’historiques et la recherche d’événements passés.

Un journal d’événement est un fichier dans lequel un système enregistre des événements qu’il gère. Ces événements peuvent être de simples notifications, des alertes ou des erreurs. 

Les journaux permettent de :

  • Expliquer une erreur, un comportement anormal…

  • Retracer les actions d’un utilisateur, d’une application, d’un paquet sur un réseau ….

  • Informer d’un comportement, d’une action, d’une modification…

Aujourd’hui, la grande majorité des systèmes, applications et éléments réseau produisent des journaux d’événements qui sont stockés en local. 

Emplacements : 

  • Les journaux d’événements sous Windows sont accessibles via l’observateur d’événement
  • Le dossier “/var/log” sous Linux a vocation à stocker l’ensemble des logs systèmes et applicatifs sous Linux.
  • Sous Cisco, certains messages sont inscrits directement sur le terminal en temps réel, mais, sauf configuration particulière, aucun log n’est sauvegardé, faute de mémoire.  

Les avantages de la centralisation

La centralisation des logs consiste à stocker sur une même plateforme, l’ensemble des journaux des systèmes, applications et services des machines environnantes. 

On parle de point unique de communication, ou de contact (Single Point Of Contact – SPOC) pour l’analyse des logs. 

On peut citer deux avantages principaux :

  • Permettre une vue d’ensemble : la centralisation des logs permet la mise en relation d’événements enregistrés sur les systèmes différents du réseau et les journaux existent et recèlent de nombreuses informations exploitables.

  • La préservation des logs. En cas de panne d’une machine il n’est parfois plus possible d’accéder à ses logs s’ils ne sont stockés qu’en local


Les points critiques de la centralisation des journaux

L’objectif de « mise en relation » d’événements provenant de diverses sources suppose de relier des événements issus de journaux différents.  

  • La principale difficulté vient de la grande variété des journaux que produisent les matériels qui constituent le réseau. 

  • Les événements enregistrés sont de nature très différente et, de plus, 

  • Pour des informations de même type, leur format varie en fonction du système d’exploitation qui les gère.


Journaux d’hôtes

Les PC des collaborateurs travaillent le plus souvent sur Windows qui enregistre les événements selon le classement suivant : 

  • Journaux d'applications : contiennent les événements enregistrés par diverses applications.

  • Journaux système : contiennent les événements concernant le fonctionnement des pilotes, des processus et du matériel.

  • Journaux d'installation : ils enregistrent des informations sur l'installation des logiciels, notamment les mises à jour Windows.

  • Journaux de sécurité : ils enregistrent les événements relatifs à la sécurité, tels que les tentatives de connexion et les opérations liées à la gestion des fichiers ou des objets et aux accès.

  • Journaux de ligne de commande —Les attaquants exécutent parfois des commandes à partir de l'interface de ligne de commande. 


Journaux de serveurs

Les journaux de serveur sont une source essentielle de données pour la surveillance de la sécurité réseau.

Les journaux du Proxy. Les journaux du serveur proxy DNS sont particulièrement importants, car ils documentent toutes les requêtes et les réponses DNS qui se produisent sur le réseau

On retiendra deux fichiers journaux qu'il est important de comprendre : les journaux d'accès du serveur web Apache et les journaux d'accès de Microsoft Internet Information Server (IIS).


Journaux du réseau

On peut citer en particulier :

  • Les journaux des pares-feux,

  • Les journaux des périphériques réseau,

  • Les journaux des divers périphériques de sécurité…


La mise en œuvre

La centralisation des journaux s’appuie sur :

  • Des protocoles, dont principalement syslog. Le transport des logs doit donc être conforme au format syslog tcp selon la RFC 3195. Syslog est souvent disponible sur les matériels réseau.

  • Des outils d’analyse de journaux


Les outils spécialisés

Ils exploitent des fichiers d’événements particuliers pour produire des diagnostiques précis. 

Par exemple, Fail2Ban et DeniHost sont des outils de détection d’intrusions.


Les outils de recherche

Ils proposent une indexation des logs permettant une recherche plus facile. Ils peuvent parfois proposer la production de statistiques graphiques.


Les outils de Gestion des Informations et Evénements de Sécurité   

Les systèmes SIEM sont des solutions combinent les fonctions essentielles de gestion des événements liés à la sécurité et de gestion des informations liées à la sécurité pour fournir une vue d'ensemble du réseau de l'entreprise à l'aide des fonctions suivantes

  • Collecte des journaux– Ces enregistrements d'événement à partir de sources de l'ensemble de l'entreprise fournissent des données d'investigation importantes et aident à respecter les exigences réglementaires.

  • Normalisation– Il s'agit d'un processus qui consiste à convertir les messages de journaux provenant de différents systèmes dans un modèle de données commun afin d'analyser les événements de sécurité associés, même s'ils étaient consignés initialement dans des formats sources différents.

  • Corrélation– Permet d'examiner les journaux et les événements de différents systèmes ou applications, d'accélérer la détection et la possibilité de réaction

  • Agrégation– Permet de réduire le volume des données d'événement en consolidant les enregistrements d'événement dupliqués : un même événement n’est alors stocké qu’une fois.

  • Rapport– Il présente les données d'événement corrélées et agrégées sous forme de résumés de surveillance en temps réel et sur le long terme, notamment des tableaux de bord interactifs graphiques.

  • Conformité– Il s'agit de rapports permettant de satisfaire aux exigences des diverses réglementations de conformité.

Exemples : Splunk, Elastik

 

L’analyse des flux : Le protocole NetFlow

Présentation générale

Netflow est un protocole propriétaire Cisco, qui a ensuite servi de base à un standard IETF appelé IPFIX. 

Ce protocole s'appuie sur la notion de flux pour effectuer ces mesures. Un flux se définit par des constantes dans les trames qui le constituent :

  • Adresses IP source et destination

  • Protocole (TCP, UDP, ICMP..)

  • Type de Service (ToS)

  • Ports applicatifs

  • Interfaces d'entrée et de sortie du périphérique réseau qui collecte le flux.


Matériel configuré

Un routeur sur lequel Netflow est activé possède en mémoire une table des flux actifs : le "Cache NetFlow". 

Celui-ci permet de compter le nombre de paquets et d'octets reçus pour un même flux. 

A chaque paquet reçu le routeur met à jour la table soit en créant une nouvelle entrée soit en incrémentant le compteur d'une entrée existante. 


Une entrée de la table expire lorsque :

Elle a été inactive pendant un certain temps (par défaut 15 sec)

Elle a été active trop longtemps (par défaut 30 min)

S'il s'agit d'un flux TCP et que les flags FIN ou RST ont été détectés par le routeur.


Lorsqu'un flux a expiré il est supprimé du cache NetFlow et les informations sont envoyées vers une machine de collecte. 


Le Collecteur et l'analyser Netflow

Le collecteur (NetFlowCollector) est un serveur qui stocke les données reçues des différents routeurs. Il réalise également une première phase de traitement, afin notamment de trier puis d'agréger les données.


Nous voyons donc ci-dessous un rapport sur un routeur, pour une durée d'une heure. On en haut un aperçu du trafic global, minute par minute. 

 Graph Netflow1

Dessous, le trafic est décomposé par application.

 Enfin la troisième partie indique les adresses sources et destinations ayant généré le plus de trafic. 


Graph Netflow2


NetFlow permet un ensemble de services destinés aux applications IP comme :

  • La journalisation du trafic réseau

  • La facturation basée sur l'utilisation

  • La planification réseau

  • La sécurité et la surveillance générale du réseau.