SNMP (Simple Network Management Protocol)
🔎 Introduction
Le protocole SNMP permet de superviser, configurer et gérer à distance des équipements réseau tels que les routeurs, switches, serveurs, imprimantes ou objets connectés. Il est présent dans trois versions principales : SNMPv1, SNMPv2c, et SNMPv3.
SNMP repose sur un modèle client-serveur :
Le serveur SNMP ("agent") est installé sur l'équipement supervisé.
Le client SNMP ("manager") interroge ou configure l'agent.
Les communications s'effectuent via :
UDP port 161 : requêtes classiques (get, set, etc.)
UDP port 162 : messages d'alerte appelés traps
🌐 MIB (Management Information Base)
Pour standardiser les accès SNMP entre équipements de différents constructeurs, la MIB définit tous les objets SNMP disponibles sous forme de hiérarchie arborescente. Une MIB :
Est un fichier texte (ASN.1) listant tous les objets interrogeables
Contient des OID (Object Identifiers)
Décrit les droits d'accès, types et descriptions de chaque objet
🔢 OID (Object Identifier)
Un OID identifie de manière unique chaque objet SNMP dans une arborescence hiérarchique. Il est représenté par une série de chiffres séparés par des points (ex: 1.3.6.1.2.1.1.1.0).
Plus la chaîne est longue, plus l'objet visé est précis.
🏛️ Versions du protocole
🔹 SNMPv1
Première version
Aucune authentification ni chiffrement
Données transmises en clair
🔹 SNMPv2c
Version communautaire ("community-based")
Fonctionnalités améliorées
Pas de sécurité supplémentaire : les community strings sont en clair
🔹 SNMPv3
Authentification par nom d'utilisateur + mot de passe
Chiffrement des communications (authPriv)
Beaucoup plus sûr, mais plus complexe à configurer
🔐 Community Strings
Les community strings sont des "mots de passe" d'accès aux données SNMP.
public: souvent utilisé pour lecture seuleprivate: souvent utilisé pour lecture/écriture
Ces chaînes sont transmises en clair dans SNMPv1 et v2c, ce qui les rend vulnérables.
⚙️ Configuration par défaut (Linux SNMP Daemon)
⚡ Paramètres à risque
rwuser noauth
Accès complet à l'arbre OID sans authentification
rwcommunity <community> <IP>
Accès en lecture/écriture sans restriction d'origine
🕵️♂️ Footprinting & Enumeration
🔹 snmpwalk
snmpwalkPermet de parcourir l'arbre MIB et de récupérer toutes les données disponibles.
Extrait :
🔹 onesixtyone
onesixtyoneBrute-force de community strings (avec SecLists) :
🔹 braa
braaBrute-force des OID individuellement :
🔫 Utilisation offensive
Si la configuration est trop permissive (v1/v2c +
publicouvert), il est possible de récupérer :Liste des paquets installés
Interfaces réseau
Processus actifs
Informations système (nom d'hôte, uptime, etc.)
📚 Ressources utiles
Enumerate the SNMP service and obtain the email address of the admin. Submit it as the answer.
Afin de répondre à cette question ainsi qu'aux prochaines, nous exécutons la commande suivante :
Concernant cette question, nous relevons la ligne suivante :
Le mail de l'administrateur est donc devadmin@inlanefreight.htb.
What is the customized version of the SNMP server?
Nous observons la ligne suivante :
La version du serveur est donc InFreight SNMP v0.91.
Enumerate the custom script that is running on the system and submit its output as the answer.
La même commande me permets de voir la ligne suivante :
Nous obtenons ainsi le flag :
Last updated