Utilizar SNMP para Obtener más Información con Snmp-check y Onesixtyone

  • Posted on: 19 March 2019
  • By: ReYDeS

Se pueden utilizar los hosts identificados a través del uso de la herrameinta Nmap, los cuales tengan puertos SNMP abiertos o servicios en funcionamiento para obtener más información.

Simple Network Management Protocol (SNMP), es un protocolo utilizado para proporcionar estado y configuración para diversos dispositivos, incluyendo servidores, estaciones de trabajo, aparatos de red, dispositivos IoT, y otros hosts. Este protocolo proporciona ya sea la funcionalidad de sólo-lectura y lectura-escritura. Frecuentemente los dispositivos han sido desplegados con la disponibilidad de sólo-lectura por defecto. Los administradores de red frecuentemente habilitan el acceso de lectura-escritura para propósitos de gestión. Las contraseñas por defecto para SNMP en muchos dispositivos es “public” para acceso de sólo-lectura, y “private” para acceso de lectura-escritura.

Existen tres tipos de SNMPs. Aunque la versión 1 ya no es frecuentemente utilizada, la versión 2 aún es bastante común, y la versión 3 está ganando uso debido a su mejor sistema de seguridad y autenticación. Para el siguiente ejemplo se utiliza la versión 2, al unísono de la herramienta “snmp-check”. Al ejecutar la herramienta con la opción “-h” se muestran sus opciones.

# snmp-check -h

Se procede a realizar un escaneo simple. Por defecto, muchas implementaciones SNMP utilizan las contraseñas “public” y “private”. Si se conoce la contraseña o se adivina, se puede substituir “public”, con la pertinente.

# snmp-check -v2c -c public 104.236.166.95

La opción “-v”define la versión de SNMP, por defecto será 1. la opción “-c” define la comunidad SNMP, por defecto será “public”.

Al observar los resultados obtenidos, se encuentra una gran cantidad de información sobre el host. Información de la interfaz de red, información de encaminamiento, servicios en ejecución, puertos TCP y UDP abiertos, como también diversa información del sistema.

En caso no se conozcan las credenciales utilizadas para SNMP, se puede intentar realizar un ataque por diccionario contra el host para adivinar las credenciales, utilizando la herramienta onesixtyone.

Al ejecutar la herramienta onesixtyone sin opciones se presenta un resumen de sus opciones.

# onesixtyone

Para el siguiente caso se utiliza la opción “-c” para definir un archivo conteniendo potenciales cadenas de comunidad (contraseñas).

# onesixtyone -c /usr/share/doc/onesixtyone/dict.txt 104.236.166.95

Finalizada la ejecución, se muestran las cadenas de comunidad (contraseñas) identificadas, las cuales son “public” y “private”.

Existen diversos archivos conteniendo listas de palabras más completas, lo cual incrementa consecuentemente las probabilidades de descubrir algo.

Fuentes:

https://en.wikipedia.org/wiki/Simple_Network_Management_Protocol
https://linux.die.net/man/1/snmpcheck
http://www.nothink.org/codes/snmpcheck/index.php
https://github.com/trailofbits/onesixtyone
https://github.com/danielmiessler/SecLists/tree/master/Miscellaneous

Sobre el Autor


Alonso Eduardo Caballero Quezada - ReYDeS
Instructor y Consultor en Hacking Ético, Forense Digital & GNU/Linux
Correo Electrónico: ReYDeS@gmail.com
Twitter: @Alonso_ReYDeS
LinkedIn: pe.linkedin.com/in/alonsocaballeroquezada
Facebook: https://www.facebook.com/alonsoreydes
Youtube: http://www.youtube.com/c/AlonsoCaballero
Resumen de mi CV: http://www.reydes.com/d/?q=node/1