SNMPwalk: Enumeración de servicios SNMP
El protocolo SNMP suele pasar desapercibido en routers, switches, impresoras y servidores, pero cuando mantiene una community string por defecto puede revelar muchísima información sin necesidad de credenciales. SNMPwalk es la herramienta clásica para recorrer ese árbol de información y extraer datos valiosos durante la fase de enumeración.
¿Qué es SNMPwalk? 📡
SNMPwalk es una herramienta de línea de comandos que permite:
✔ Recorrer (walk) el árbol de OIDs expuesto por un dispositivo.
✔ Obtener información del sistema, interfaces de red y tablas de enrutamiento.
✔ Enumerar procesos en ejecución y software instalado.
✔ En algunos sistemas Windows, listar incluso cuentas de usuario locales.
Forma parte del proyecto Net-SNMP y funciona contra dispositivos que hablan SNMPv1, SNMPv2c (mediante community strings) o SNMPv3 (con autenticación y cifrado).
Instalación de SNMPwalk ⚙️
En distribuciones basadas en Debian, como Kali Linux o Parrot OS, las herramientas de Net-SNMP suelen venir preinstaladas. Si necesitas instalarlas manualmente:
sudo apt install snmp
Para verificar la instalación:
snmpwalk --version
Uso básico de SNMPwalk 🔍
🔹 Enumeración completa del árbol MIB
snmpwalk -c public -v2c 192.168.1.100
-v1 y luego con -v2c.🔹 Información del sistema
snmpwalk -c public -v2c 192.168.1.100 1.3.6.1.2.1.1
🔹 Interfaces de red
snmpwalk -c public -v2c 192.168.1.100 1.3.6.1.2.1.2.2
🔹 Procesos en ejecución
snmpwalk -c public -v2c 192.168.1.100 1.3.6.1.2.1.25.4.2.1.2
🔹 Software instalado
snmpwalk -c public -v2c 192.168.1.100 1.3.6.1.2.1.25.6.3.1.2
🔹 Cuentas de usuario (sistemas Windows)
snmpwalk -c public -v2c 192.168.1.100 1.3.6.1.4.1.77.1.2.25
Tabla de OIDs útiles para enumeración 📋
| OID | Descripción |
|---|---|
1.3.6.1.2.1.1 | Información general del sistema. |
1.3.6.1.2.1.2.2 | Interfaces de red. |
1.3.6.1.2.1.25.1.6.0 | Número de procesos en ejecución. |
1.3.6.1.2.1.25.4.2.1.2 | Procesos en ejecución (detalle). |
1.3.6.1.2.1.25.6.3.1.2 | Software instalado. |
1.3.6.1.4.1.77.1.2.25 | Cuentas de usuario en Windows. |
1.3.6.1.2.1.6.13.1.3 | Puertos TCP locales en escucha. |
Enumeración avanzada 🚀
🔹 Descubrir community strings válidas
Antes de profundizar con SNMPwalk, puedes usar onesixtyone para identificar rápidamente qué hosts responden y con qué community string:
onesixtyone -c community.txt 192.168.1.0/24
🔹 Consultas más rápidas con snmpbulkwalk
En árboles MIB grandes, snmpbulkwalk suele ser más eficiente al usar peticiones GETBULK:
snmpbulkwalk -c public -v2c 192.168.1.100 .
snmpwalk normal.Exportación de resultados 📄
Puedes guardar toda la salida de SNMPwalk en un archivo para analizarla más tarde:
snmpwalk -c public -v2c 192.168.1.100 > snmp_resultados.txt
Para filtrar, por ejemplo, los procesos en ejecución detectados:
grep -i "hrSWRunName" snmp_resultados.txt
Esto mostrará solo las líneas correspondientes a los nombres de procesos enumerados.
Desafío para ti 🎯
Utiliza SNMPwalk para enumerar la información de sistema, interfaces y procesos de un dispositivo de prueba:
snmpwalk -c public -v2c 192.168.1.100