introduction au protocole snmp ( simple network management )

30
Michaël VOLLERIN – Introduction au protocole SNMP 1 INTRODUCTION AU PROTOCOLE SNMP ( Simple Network Management )

Upload: mahsa

Post on 07-Jan-2016

157 views

Category:

Documents


10 download

DESCRIPTION

INTRODUCTION AU PROTOCOLE SNMP ( Simple Network Management ). Sommaire. Qu’est ce que le protocole SNMP ? Architecture de SNMP SNMPv1 et SNMPv2c SNMPv3 : La sécurité avant tout Synthèse. Qu’est ce que le protocole SNMP ?. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: INTRODUCTION  AU  PROTOCOLE  SNMP  ( Simple  Network  Management )

Michaël VOLLERIN – Introduction au protocole SNMP 1

INTRODUCTION

AU

PROTOCOLE SNMP

( Simple Network Management )

Page 2: INTRODUCTION  AU  PROTOCOLE  SNMP  ( Simple  Network  Management )

Michaël VOLLERIN – Introduction au protocole SNMP 2

Sommaire

Qu’est ce que le protocole SNMP ?

Architecture de SNMP

SNMPv1 et SNMPv2c

SNMPv3 : La sécurité avant tout

Synthèse

Page 3: INTRODUCTION  AU  PROTOCOLE  SNMP  ( Simple  Network  Management )

Michaël VOLLERIN – Introduction au protocole SNMP 3

Qu’est ce que le protocole SNMP ?

SNMP est un protocole de gestion réseaux proposé par l’IETF (Internet Engineering Task Force)

Il s’appuie sur 4 composantes principales :

Des agents

Un ou plusieurs managers

Une MIB (Management Information Base)

Des trames

Page 4: INTRODUCTION  AU  PROTOCOLE  SNMP  ( Simple  Network  Management )

Michaël VOLLERIN – Introduction au protocole SNMP 4

Les différentes versions de SNMP

SNMPv1 (ancien standard) : Première version apparue en 1989.

SNMPsec (historique): Ajout de sécurité par rapport à la version 1

SNMPv2p (historique) : Ajout de nouveau type de données.

SNMPv2c (expérimental) : Amélioration des opérations du protocole

SNMPv2u (expérimental) : Implémente la version 2c en ajoutant la sécurité utilisateurs.

SNMPv2* (expérimental) : Combinaison des meilleures parties de v2u et v2p.

SNMPv3 (nouveau standard) : La sécurité avant tout.

Page 5: INTRODUCTION  AU  PROTOCOLE  SNMP  ( Simple  Network  Management )

Michaël VOLLERIN – Introduction au protocole SNMP 5

Architecture de SNMP

Page 6: INTRODUCTION  AU  PROTOCOLE  SNMP  ( Simple  Network  Management )

Michaël VOLLERIN – Introduction au protocole SNMP 6

Le modèle OSI

Page 7: INTRODUCTION  AU  PROTOCOLE  SNMP  ( Simple  Network  Management )

Michaël VOLLERIN – Introduction au protocole SNMP 7

La remontée d’informations Nous avons le choix entre deux méthodes complètement

différentes mais qui peuvent être complémentaires :

Le polling

L’émission de trap

Page 8: INTRODUCTION  AU  PROTOCOLE  SNMP  ( Simple  Network  Management )

Michaël VOLLERIN – Introduction au protocole SNMP 8

Les requêtes SNMP Recherche d’informations :

GetRequest : recherche d’une variable sur un agent.

GetNextRequest : recherche de la variable suivante.

GetBulkRequest : recherche d’un groupe de variables

Modification de valeurs :

SetRequest : permet de changer la valeur d’une variable d’un agent.

A titre d’information, d’autres requêtes existent (ex: InformRequest…) mais ne seront pas abordées dans cette présentation.

Envoie d’informations

Trap : détection d’un incident

Page 9: INTRODUCTION  AU  PROTOCOLE  SNMP  ( Simple  Network  Management )

Michaël VOLLERIN – Introduction au protocole SNMP 9

Les réponses SNMP

Une seule réponse existe.

Elle est différente s’il y a une erreur ou non.

Aucune erreur :

GetResponse : renvoie la ou les valeurs souhaitées

En cas d’erreur :

GetResponse mais accompagné d’un NoSuchObject

Page 10: INTRODUCTION  AU  PROTOCOLE  SNMP  ( Simple  Network  Management )

Michaël VOLLERIN – Introduction au protocole SNMP 10

MIB (Management Information Base) Ensemble d’objets structurés de manière arborescente

Accès à un objet via un Object Identifier (OID)

Deux MIB normalisées: MIB I et MIB II

Références des informations réseau (interfaces, ip …)

MIB privée sous le nœud enterprises

Une MIB n’est pas une base de données mais une « dispatch table »

Page 11: INTRODUCTION  AU  PROTOCOLE  SNMP  ( Simple  Network  Management )

Michaël VOLLERIN – Introduction au protocole SNMP 11

Exemple d’accès à un objet d’une MIB

Objet de type simple (une seule variable)

+--accelance(9697)

+--general(1)

+-- -R-- String release(1)

+-- -R-- INTEGER nbeProcessus(2)

+-- -R-- String currentDate(3)

Accès à la variable realease :

.1.3.6.1.4.1.9697.1.1.0

enterprises

Numéro défini par IANA

Correspond à l’entreprise Accelance

Information souhaitée

Convention

Page 12: INTRODUCTION  AU  PROTOCOLE  SNMP  ( Simple  Network  Management )

Michaël VOLLERIN – Introduction au protocole SNMP 12

Objet complexe (ex : Tableau)

Exemple d’accès à un objet d’une MIB (2)

Accès à la variable ifSpeed :

.1.3.6.1.2.1.2.2.1.5.x

interfaces

Information souhaitée

Index

Page 13: INTRODUCTION  AU  PROTOCOLE  SNMP  ( Simple  Network  Management )

Michaël VOLLERIN – Introduction au protocole SNMP 13

ASN.1 (Abstrat Syntax Notation One )

Standard ISO (ISO 8824) qui définit plusieurs types autorisés dans SNMP (ex : INTEGER, DisplayString …)

Effectue la correspondance entre un OID et un nom

ASN.1 se localise au niveau de la couche Présentation dans le modèle OSI.

Page 14: INTRODUCTION  AU  PROTOCOLE  SNMP  ( Simple  Network  Management )

Michaël VOLLERIN – Introduction au protocole SNMP 14

Exemple de fichier ASN.1

Affectation de la branche general à la branche accelance via l’OID 1

ACCELANCE-MIB DEFINITIONS ::= BEGIN

accelance MODULE-IDENTITY

::= { enterprises 9697 }

general OBJECT IDENTIFIER ::= { accelance 1 }

release OBJECT-TYPE

SYNTAX DisplayString

MAX-ACCESS read-only

STATUS current

DESCRIPTION

"Type d’OS utilisé"

::= { general 1 }

Identification d’un fichier ASN.1

Rattachement de la branche Accelance à la branche enterprises via l’OID 9697

Définition de la variable realease

&

Rattachement de celle-ci à la branche general

Désormais nous pouvons accéder à la variable release de la manière suivante :

.iso.dod.internet.private.enterprises.accelance.general.release.0

Page 15: INTRODUCTION  AU  PROTOCOLE  SNMP  ( Simple  Network  Management )

Michaël VOLLERIN – Introduction au protocole SNMP 15

Présentation de

SNMPv1 et SNMPv2c

Page 16: INTRODUCTION  AU  PROTOCOLE  SNMP  ( Simple  Network  Management )

Michaël VOLLERIN – Introduction au protocole SNMP 16

La Trame

Page 17: INTRODUCTION  AU  PROTOCOLE  SNMP  ( Simple  Network  Management )

Michaël VOLLERIN – Introduction au protocole SNMP 17

Détail du PDU (Packet Data Unit)

Page 18: INTRODUCTION  AU  PROTOCOLE  SNMP  ( Simple  Network  Management )

Michaël VOLLERIN – Introduction au protocole SNMP 18

Les faiblesses de SNMPv1 – SNMPv2c

L’authentification

Le cryptage du PDU

Le manque de confidentialité

En un mot :

LA SECURITE

Page 19: INTRODUCTION  AU  PROTOCOLE  SNMP  ( Simple  Network  Management )

Michaël VOLLERIN – Introduction au protocole SNMP 19

SNMPv3 : La sécurité avant tout

Page 20: INTRODUCTION  AU  PROTOCOLE  SNMP  ( Simple  Network  Management )

Michaël VOLLERIN – Introduction au protocole SNMP 20

Architecture d’un agent SNMPv3

Page 21: INTRODUCTION  AU  PROTOCOLE  SNMP  ( Simple  Network  Management )

Michaël VOLLERIN – Introduction au protocole SNMP 21

Le modèle de sécurité de SNMPv3

Il est basé sur deux concepts :

USM ( User-based Security Model )

VACM ( View-based Access Control Model )

Page 22: INTRODUCTION  AU  PROTOCOLE  SNMP  ( Simple  Network  Management )

Michaël VOLLERIN – Introduction au protocole SNMP 22

USM (User Security Model)

Ce module de sécurité se compose en 3 opérations :

L’authentification

Le cryptage

L’estampillage du temps

Page 23: INTRODUCTION  AU  PROTOCOLE  SNMP  ( Simple  Network  Management )

Michaël VOLLERIN – Introduction au protocole SNMP 23

L’authentification Nous avons deux méthodes à notre disposition :

HMAC-MD5-96

HMAC-SHA-96(HMAC = Keyed-Hashing for Message Authentication)

Page 24: INTRODUCTION  AU  PROTOCOLE  SNMP  ( Simple  Network  Management )

Michaël VOLLERIN – Introduction au protocole SNMP 24

Le cryptage du PDU A l’heure actuelle un seul mécanisme de cryptage est

proposé :

DES (Data Encryption Standard)

Émetteur Récepteur

Page 25: INTRODUCTION  AU  PROTOCOLE  SNMP  ( Simple  Network  Management )

Michaël VOLLERIN – Introduction au protocole SNMP 25

L’estampillage du temps

Trame effective sur un temps restreint

S’il y a une différence supérieur à 150 ms entre la date de création de la trame et son traitement, elle est détruite. Cette donnée est paramétrable.

Empêche la réutilisation d’une trame (inhibe le système contre le « replay attack »)

Page 26: INTRODUCTION  AU  PROTOCOLE  SNMP  ( Simple  Network  Management )

Michaël VOLLERIN – Introduction au protocole SNMP 26

Permet le contrôle d’accès au MIB.

Possibilité de restriction d’accès en lecture et/ou écriture pour un groupe ou par utilisateur.

VACM (View Access Control Model)

Page 27: INTRODUCTION  AU  PROTOCOLE  SNMP  ( Simple  Network  Management )

Michaël VOLLERIN – Introduction au protocole SNMP 27

La trame de SNMPv3

Page 28: INTRODUCTION  AU  PROTOCOLE  SNMP  ( Simple  Network  Management )

Michaël VOLLERIN – Introduction au protocole SNMP 28

Synthèse

Page 29: INTRODUCTION  AU  PROTOCOLE  SNMP  ( Simple  Network  Management )

Michaël VOLLERIN – Introduction au protocole SNMP 29

Le moteur SNMP

Schema pasge 73. Si possible faire un mix avec 76

Page 30: INTRODUCTION  AU  PROTOCOLE  SNMP  ( Simple  Network  Management )

Michaël VOLLERIN – Introduction au protocole SNMP 30

Conclusion

Manque de sécurité évidente dans SNMPv1 & SNMPv2. Ceci a été corrigé par SNMPv3 avec les systèmes de sécurité :

User Security Model (USM)

View Access Control Model (VACM)

Depuis mars 2002, le standard est SNMPv3 mais SNMPv1 encore beaucoup utilisé.

Conseil : Migrer vers la version 3 pour des raisons de sécurité