SNMP

Protocole et version

SNMP, pour simple network management, est un protocole courant de gestion de noeud IP.

Il est défini par la RFC 1157 datant de 1990 et s'appuie sur des MIB (management information base), des bibliothèques d'objets, spécifiées dans la RFC 1156.

Le SMI, en tant que recommandation globale, préconise que chaque protocole sur un réseau IP soit gérable et donc dispose de sa MIB. SNMP est dédié à l'interrogation des MIB.

Une MIB est une structure arborescente, une MIB s'appliquant à un équipement sur internet aura des OID commençant par “.1.3.6.1”.

Un objet contenu dans une MIB est appelé OID.

Pour plus d'informations sur ce sujet voir : http://www.bortzmeyer.org/1155.html

# Schéma en cours

Les versions les plus importantes du protocole SNMP sont :

Version 1 :

  • Niveau : noAuthNoPriv
  • Authentification : Community String
  • Chiffrement : Non
  • Utilise une chaine de caractères pour l'authentification.

Version 2c :

  • Niveau : noAuthNoPriv
  • Authentification : Community String
  • Chiffrement : Non
  • Utilise une chaine de caractères pour l'authentification.
  • Ajout du support des counter 64bits depuis cette version

Version 3 :

  • Niveau : noAuthNoPriv
  • Authentification : Nom d'utilisateur
  • Chiffrement : Non
  • Utilise un nom d'utilisateur pour l'authentification.

Version 3 :

  • Niveau : authNoPriv
  • Authentification : MD5 ou SHA
  • Chiffrement : Non
  • Utilise l'algorithme MD5 ou SHA pour l'authentification.

Version 3 :

  • Niveau : authPriv
  • Authentification : MD5 ou SHA
  • Chiffrement : DES
  • Utilise l'algorithme MD5 ou SHA pour l'authentification. Utilise l'algorithme DES pour le chiffrement.

Plus d'informations sur les counters SNMP (sur équipement Cisco) : http://www.cisco.com/c/en/us/support/docs/ip/simple-network-management-protocol-snmp/26007-faq-snmpcounter.html

Port et intégration à la pile IP

Le service SNMP est en écoute sur le port 161 et sur le port 162 (réservé aux “trap”).

Le protocole SNMP se situe en couche 7 (application) du modèle OSI et s'appuie sur le protocole UDP, couche 4 (transport).

Fonctionnement général

# Schema en cours

  • Installation :
  • yum -y install net-snmp net-snmp-utils

snmpget

Permet de récupérer la valeur d'une OID.

# snmpget -v <version snmp> -c <communauté snmp> <adresse IP du noeud snmp> <OID>

snmpwalk

Permet de récupérer toutes les valeurs d'un sous-arbre.

# snmpwalk -v <version snmp> -c <communauté snmp> <adresse IP du noeud snmp> <OID>

snmptable

Identique à snmpwalk mais la sortie est présentée sous forme de tableau plus lisible.

# snmptable -v <version snmp> -c <communauté snmp> -Cb <adresse IP du noeud snmp> <OID>

snmpcheck

Outil d'énumération snmp

#snmpcheck -t <adresse IP du noeud snmp>

scapy

Outil permettant de forger des paquets. Application à snmp :

i=IP(src=“192.168.2.100”,dst=“192.168.2.150”)/UDP(sport=161,dport=161) s1=SNMP(community=“private”,PDU=SNMPset(varbindlist=[SNMPvarbind(oid=ASN1_OID(“1.3.6.1.4.1.9.9.96.1.1.1.1.14.112”),value=6)]))

Utilisation de scapy :

nmap

Outil de scan réseau généraliste Usage spécifique à SNMP (source : https://nmap.org)

snmp-info

Example Usage

nmap -sV <target>

Script Output
  • 161/udp open snmp udp-response ttl 244 ciscoSystems SNMPv3 server (public)
  • | snmp-info:
  • | enterprise: ciscoSystems
  • | engineIDFormat: mac
  • | engineIDData: 00:d4:8c:00:11:22
  • | snmpEngineBoots: 6
  • | snmpEngineTime: 358d01h13m46s

snmp-brute

Example Usage

nmap -sU –script snmp-brute <target> [–script-args snmp-brute.communitiesdb=<wordlist> ]

Script Output
  • PORT STATE SERVICE
  • 161/udp open snmp
  • | snmp-brute:
  • | dragon - Valid credentials
  • |_ jordan - Valid credentials

snmp-sysdescr

Example Usage

nmap -sU -p 161 –script snmp-sysdescr <target>

Script Output
  • | snmp-sysdescr: HP ETHERNET MULTI-ENVIRONMENT,ROM A.25.80,JETDIRECT,JD117,EEPROM V.28.22,CIDATE 08/09/2006
  • |_ System uptime: 28 days, 17:18:59 (248153900 timeticks)

snmp-interfaces

Example Usage

nmap -sU -p 161 –script=snmp-interfaces <target>

Script Output
  • | snmp-interfaces:
  • | eth0
  • | IP address: 192.168.221.128
  • | MAC address: 00:0c:29:01:e2:74 (VMware)
  • | Type: ethernetCsmacd Speed: 1 Gbps
  • |_ Traffic stats: 6.45 Mb sent, 15.01 Mb received
Vous pourriez laisser un commentaire si vous étiez connecté.