SNMPv2 – ¿Protocolo inseguro? Usa SNMPv3 en tu red (CISCO)

Ya vimos como configurar SNMP en un servidor Linux:

https://principiatechnologica.com/wp-content/uploads/2013/04/07/configuracion-de-snmp-en-linux/

Hoy tocan dispositivos CISCO.

Como ya hemos hablado de SNMP en el blog, vamos a hacer un poco de historia del protocolo:

SNMPv1 Este protocolo surgió en el año de 1990, definido en la RFC 1157, muestra una manera de administrar y supervisar las redes de computo para identificar y resolver problemas. Esta implementando en la capa de aplicaciones.
SNMPv2 Este protocolo surgió en 1992, se implemento perfeccionar la seguridad y funcionamiento. Este protocolo trabaja bajo el concepto de objetos.
SNMPv3

Este protocolo de maneja seguridad de acceso a los dispositivos por medio de una autenticación y encriptacion de datos que pasan por la red.

Por todo profesional de las redes, uno de los caballos de batalla en contra de SNMP es sin duda la seguridad. Y es que, efectivamente es un protocolo de lo más inseguro, además de antiguo como veíamos en la tabla.

VERSIÓN 1

Los mensajes de la primera versión del protocolo incluyen una cadena de caracteres denominada nombre de comunidad que se utiliza como un sencillo mecanismo de control de acceso a la información. Los agentes que implementan dicha versión del protocolo disponen generalmente de dos comunidades. Las que venían por defecto en el protocolo eran “public”, cuyos objetos eran únicamente accesibles para lectura y “private”, cuyos objetos podían leerse o escribirse.

Cierto es que los nombres de las comunidades podían cambiarse, pero toda la seguridad proporcionada por el sistema se basa en el hecho de que es necesario conocer el nombre asignado a una comunidad para conseguir el acceso a la información proporcionada por sus variables. El nivel de protección ofrecido por la versión original del protocolo es, por tanto, muy débil. En cualquier red con SNMP un ataque “Man in the middle” averiguaría el nombre de la community porque todos los mensajes circulaban completamente en claro.

VERSIÓN 2

El marco de trabajo SNMPv2, cuya definición tampoco contiene ningún estándar en cuanto a seguridad, se asocia con otros modelos administrativos bajo el concepto de objetos, objetos que se agrupan en MIBs. Y aparecen tres nuevas versiones del protocolo: SNMPv2c,  SNMPv2*, SNMPv2u.

La versión SNMPv2c (Community-based SNMPv2), la única mejora introducida consiste en una mayor flexibilidad de los mecanismos de control de acceso, ya que se permite la definición de políticas de acceso consistentes en asociar un nombre de comunidad con un perfil de comunidad formado por una vista MIB y unos derechos de acceso a dicha vista (read-only o read-write). Aparecen las denominadas view, a las que se puede dar acceso a una community concreta.

La versión SNMPv2* es la primera en realizar cambios en su modelo administrativo para introducir los conceptos de integridad y privacidad así como para mejorar el control de acceso a la información. Proporciona niveles de seguridad adecuados, pero no alcanzó el necesario nivel de estandarización, y el protocolo prácticamente no vio la luz.

La versión SNMPv2u (User-based SNMPv2) es la que introduce la noción de usuario. Esta versión sí ha sido más usada, pero este concepto prácticamente avanzaba una remodelación del protocolo, que dio lugar finalmente a la versión 3.

VERSIÓN 3

La principal novedad introducida en la versión 3 del protocolo SNMP es la modularidad. En dicha versión una entidad SNMP se considera compuesta por un motor y unas aplicaciones. A su vez el motor se divide en cuatro módulos: dispatcher, subsistema de proceso de mensajes, subsistema de seguridad y subsistema de control de acceso.

Se observa, por tanto, que en la versión SNMPv3 se independizan los mecanismos utilizados para la seguridad (autenticación y privacidad).

Es decir, se crea un sistema de vistas orientadas al usuario en vez de a la comunidad VACM (View-based Access Control Model) y se provee al protocolo de privacidad (cifrado DES/AES de las comunicaciones).

IMPLEMENTACIÓN DE VERSIÓN 3 EN CISCO

En nuestros dispositivos CISCO la configuración de SNMPv3 es relativamente sencilla.

1. Lo primero que se recomienda es crear una lista de acceso simple que determine las IP ORIGEN que deben acceder al servidor SNMP. No es necesario que ninguna otra IP lo haga:

access-list 12 permit IP1

access-list 12 permit IP2

2. Este dispositivo, aunque no se recomienda, podría tener habilitado simultáneamente SNMPv2:

snmp-server community <MyCommunity> RO 12

Y tendrá un grupo de usuarios de SNMPv3:

snmp-server group <MyGROUPv3> v3 auth access 12

Sólo IPs de la lista 12 pueden acceder a la comunidad SNMPv2 o al grupo SNMPv3. Para la comunidad basta con conocer su nombre, pero el acceso al grupo no es sólo conocer el nombre, sino la clave, y esta clave viaja encriptada en MD5 o SHA.

3. Creamos los usuarios y su forma de acceso:

Sintaxis.

snmp-server user username [groupname remote ip-address [udp-port port] {v1 | v2c | v3[encrypted] [auth {md5 | sha} auth-password [priv des56 priv password]]

hostname# snmp-server user <usuario> <MyGROUPv3> v3 auth md5 mysecretpass priv des56 passphrase 

Podríamos restringir incluso dentro del grupo con qué IP ha de acceder a este usuario.

En este caso por lo tanto, tenemos autenticación del usuario y privacidad o encriptación con password también.

Ya es más difícil que un intruso acceda al servidor SNMPv3.

CONCLUSIÓN

El nivel de seguridad proporcionado por las versiones originales del protocolo SNMP no es adecuado para las necesidades actuales. En caso de utilizar una gestión basada en dicha versión es imprescindible estar informado de los riesgos involucrados, debido a la sensibilidad de la información accesible a través de dicho protocolo.

Ya se recomienda emplear SNMPv3, pero además, se debe intentar en la medida de lo posible disminuir la influencia de dichos riesgos utilizando, por ejemplo, passwords fuertes y listas de acceso. Incluso se puede restringir el acceso utilizando mecanismos externos al protocolo, como por ejemplo listas de control de acceso implementadas sobre firewalls.

One thought on “SNMPv2 – ¿Protocolo inseguro? Usa SNMPv3 en tu red (CISCO)

  • octubre 9, 2015 at 5:03 pm
    Permalink

    Sería bueno dejar el nombre del autor del artículo, así se nos facilita el poder hacer referencias. Mientras tanto, la referencia para esta página es “Autor anónimo”..

    Reply

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *