Upload
mahsa
View
185
Download
10
Tags:
Embed Size (px)
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
Citation preview
Michaël VOLLERIN – Introduction au protocole SNMP 1
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
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
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.
Michaël VOLLERIN – Introduction au protocole SNMP 5
Architecture de SNMP
Michaël VOLLERIN – Introduction au protocole SNMP 6
Le modèle OSI
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
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
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
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 »
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
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
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.
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
Michaël VOLLERIN – Introduction au protocole SNMP 15
Présentation de
SNMPv1 et SNMPv2c
Michaël VOLLERIN – Introduction au protocole SNMP 16
La Trame
Michaël VOLLERIN – Introduction au protocole SNMP 17
Détail du PDU (Packet Data Unit)
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
Michaël VOLLERIN – Introduction au protocole SNMP 19
SNMPv3 : La sécurité avant tout
Michaël VOLLERIN – Introduction au protocole SNMP 20
Architecture d’un agent SNMPv3
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 )
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
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)
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
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 »)
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)
Michaël VOLLERIN – Introduction au protocole SNMP 27
La trame de SNMPv3
Michaël VOLLERIN – Introduction au protocole SNMP 28
Synthèse
Michaël VOLLERIN – Introduction au protocole SNMP 29
Le moteur SNMP
Schema pasge 73. Si possible faire un mix avec 76
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é