Descubrir la red de una empresa con consultas SNMP
El sábado por la tarde, tras finalizar mis charlas, se produjo el momento que más me gusta de Defcon y al que le dediqué un dibujo de No Lusers: El de tomar cervezas en el bar del hotel de la conferencia con los asistentes al evento, que siempre es diverso e interesante.
Allí nos juntamos un nutrido grupo de gente, entre los que se encontraban Dani Mende - creador de Loki - y John Matherly - creador de Shodan -. Entre cerveza y cerveza, haciendo un aparte los tres, John explicaba a Dani que España es el segundo país del mundo que más usa Shodan, y yo le contaba que hasta hemos publicado un libro de hacking con buscadores con una parte dedicada a Shodan. Al mismo tiempo, hablamos de la conferencia Troopers, que organiza la empresa donde trabaja Dani Mende (ENRW) en la ciudad de Heidelberg.
John es Suizo, y aunque está afincado en la Costa Oeste de los Estados Unidos, pensé que sería bueno repetir reunión en Alemania, así que, como soy un liante, le dije a John que tenía que animarse a dar alguna conferencia explicando los detalles de Shodan. John no suele dar charlas, porque dice que no se siente cómodo, pero... al final quedamos en que estaría muy divertido darla juntos allí, así que había que pensar algún tema divertido.
Como tenemos pendiente esto, quise darme este fin de semana un paseo por Shodan a ver cómo había evolucionado el proyecto un poco más en detalle y enredar por allí. Tras jugar un rato, me acordé del artículo de administrando el mundo con agentes SNMP y me animé a jugar un rato con los agentes SNMP de dispositivos CISCO.
Encontrar estos dispositivos en Shodan es una pasada de sencillo. Basta con buscar el banner de los dispositivos CISCO que te interesen, filtrar por el puerto 161, y ya tienes una buena cantidad de agentes SNMP esperando tus consultas, y la gran mayoría sin requerir ninguna password a cambio del trabajo. En la imagen me han salido 1411 equipos, pero dependiendo del banner que uses puedes encontrar muchas más.
Para conectarme a ellos, utilicé un sencillo visor de consultas SNMP que se llama MIB Browser, y me puse a ver si podía llegar a la información de las redes en las que estaba conectado el dispositivo, y lo que es mejor, a ver si podía pintarse la red interna de una empresa que publicara esto, ya sabéis, por si se puede integrar a FOCA en el futuro de manera automatizada.
Tras seleccionar SNMPv2 sin autenticación en las opciones, solo hay que conectarse a alguno de los que aparecen en Shodan y conectarse utilizando MIB Browser - disponible para Windows y Mac OS X -, se puede obtener mucha información jugosa de el entorno donde está conectada esa máquina. En el árbol de la izquierda están las estructuras de datos que se pueden consultar con SNMP.
Los atributos que tienen el icono de una tabla son datos en formato de tabla, que pueden ser descargados masivamente con una opción del botón derecho "Table View". El resto de iconos representa el tipo de dato que se almacena en ese atributo y, seleccionando en cada elemento, en el recuadro inferior izquierdo se puede acceder a la descripción del contenido más detallada.
Los atributos que tienen el icono de una tabla son datos en formato de tabla, que pueden ser descargados masivamente con una opción del botón derecho "Table View". El resto de iconos representa el tipo de dato que se almacena en ese atributo y, seleccionando en cada elemento, en el recuadro inferior izquierdo se puede acceder a la descripción del contenido más detallada.
Figura 2: Consultando el atributo atPhysAddress de AtTable |
En la Figura 2 se puede observar el atributo Physical Address de la Address Translation Table que recoge la dirección MAC y la dirección IP que este sistema ha almacenado. Es una especie de tabla caché ARP que permite, como se puede ver en este caso, descubrir los segmentos de la red interna, los equipos conectados y sus direcciones físicas. Con una sencilla consulta haces un escaneo a la red interna sin tirar un ping.
Para conocer más sobre el equipo, y el entorno donde está conectado y así dibujar más claramente la estructura de la red, se pueden analizar los interfaces que tiene el sistema, la marca y el modelo - que se obtienen en la información de sistema -, la tabla de enrutamiento y cualquier tabla de mapeo de direcciones físicas a lógicas. Todos estos datos pueden ser consultados por SNMP.
Figura 3: Tabla de interfaces obtenida por SNMP de un router CISCO |
La siguiente captura muestra la tabla de enrutamiento de un sistema. Con ella se puede saber cuáles son las redes conectadas directamente a los interfaces del equipo, las rutas descubiertas usando protocolos de enrutamiento - en este caso este sistema descubre rutas vía OSPF internamente y vía BGP entre sistemas autónomos - además de los nodos de conexión entre redes, lo que permiten hacer un dibujo más detallado de la red global.
Figura 4: Tabla de enrutamiento obtenida con una consulta SNMP |
La tabla IPNetToMedia, también muestra información similar a la Address Translation Table, en este caso traduciendo de dirección IP a dirección física, con lo que se obtienen de nuevo mapeos entre MAC-IP conocidos por el sistema.
Figura 5: Tabla InetToMedia consultada por SNMP a un sistema CISCO en Internet |
Por último, aunque la lista de datos que se pueden obtener son muy grandes, he obtenido la tabla de conexiones de un equipo, lo que deja ver qué otros puertos están abiertos en los sistemas, lo que desvelaría servicios en ejecución.
Figura 6: Tabla de conexiones del sistema |
Como podéis ver, información muy valiosa disponible en muchos miles de direcciones IP publicadas en Internet. Si ienes en tu red agentes SNMP, asegúrate de no dejarlos públicos, deshabilitar SNMPv1 y SNMPv2, y revisar a ver si si están indexados en Shodan.
Saludos Malignos!
13 comentarios:
Otra charla que no es tuya y en la que estaras,esta vez con john,al igual que hiciste con luis delgado.Pero para ayudarlos.todos lo sabemos.
@luser, la de Luís Delgado fue un favor que me pidió él. En Troopers daré con John una charla que prepararemos juntos. No seas ridículo y envidioso hombre.
Saludos!
A mis oidos llego que tu contastacte con luis,y la charla con john es de su obra,no importa que la preparen juntos.Pero a ayudar chema,no olvidamos
@luser, habla con Luís tontico, y se lo preguntas a él. Eres patético... te voy a banear, y luego en la Lacon vienes y hablamos cara a cara.
Saludos!
Ya estas presumuendo de la lacon?vaya vaya,si casi te dejan fuera.Que hiciste para que tus amigos dieran la cara por ti?en la lista no eres nuy bien recibido,sabes?pero este año puedes hacer algo,almenos pintar en tu aipayo
Buen post Chema. Ya tengo entretenimiento para una tarde estas vacaciones ;)
Chema, muy buen artículo. Siempre defino los artículos como buenos si aprendo cosas nuevas y este me encanta. Poco a poco.
Una duda que siempre tengo y que a lo mejor te apetece resolverme.
¿Tú cuando haces estas cosas usas proxys (aunque pueden no servir de mucho, jeje) o vas a cara descubierta? Porque si vas a cara descubierta igual alguien se enfada y últimamente con la reforma del CP en 2011 y con lo que dijeron desde la unión europea hace poco de regular el hacking a mi me acojonan... Supongo que tú tendrás asesoría legal, pero no se, yo soy un cagichas.
Saludos!!
@HardAlvaro
@luser, sabrás tú lo que se dice en la lista de la LaCON }XD. En la LaCON, si no eres bien recibido, como sabrás, no vas. Pero me gustará verte allí a ver si das la cara o te escondes como una ratita, como haces por aquí. Si quieres preguntamos a "mis amiguitos" de la LaCON y que te lo cuenten ellos.
Saludos!
@Maligno, no hagas caso de los nobodys HANONIMOUS, ya sabes que si te queremos en lac0n :)
Nos vemos en breve y nos tomamos un pulpo.
@atarasco
Yo creo que es Autonomous, mas que hanonimous :(
Como dice churrasco, en la lac0n se te quiere, incluso sin tener que presentar nada!!!
Chuparos las pollas unos a otros si veis que tal...jajaja
Pero que retrasado mental estás hecho...
Curioso, no conocía esta herramienta, siempre había usado snmpwalk en linux (y luego grep,cut,sed.. ;-) Saludos!
Publicar un comentario