Logo

Modern HoneyPot Network: dejando un tarro de miel en internet

Todos tenemos nuestros router y ordenadores conectados permanentemente a internet con una dirección publica, estos equipos son susceptibles a recibir ataques sobre vulnerabilidades propias de los mismos. Por lo general pensamos que a nadie le interesa perder el tiempo y recursos para vulnerar nuestra seguridad, ya que no tenemos nada interesante a ofrecer. Pero en realidad existen ataques que se realizan automáticamente sin intervención humana, son botnets o redes de ordenadores infectados con software malicioso con la única función de escanear todos los servicios publicados por cualquier equipo conectado a internet y descubrir si este es susceptible a ser vulnerable para comprometer esos equipos y extraer la mayor información posible o usarlos para fines ilegales sin tu autorización.

Notion Image

Todos estos ataques son capaces por si mismos de saltarse servicios con vulnerabilidades ya conocidas y explotarlas a favor del administrador de la botnet.

El propósito de este articulo es demostrar que estos ataques existen y que todos estamos expuestos a ellos minuto a minuto, para ello voy a publicar en internet lo que se hace llamar como Tarro de Miel o HoneyPot, en este caso voy a usar Modern Honey Network instalado en un Ubuntu 14.04 LTS.

Lo que vamos a conseguir con ello es simular ser un ordenador conectado a internet con varios servicios activos y aparentemente vulnerables, aunque en realidad no existan, de esta forma nuestro atacante muerde el anzuelo y se convierte en nuestra victima pudiendo analizar todos los pasos que esta realizando para intentar comprometer la seguridad de un servicio aparentemente real.

Instalar Modern Honey Pot Network

Primero de todo deberemos tener instalado Ubuntu 14.04 LTS sin ningún componente adicional ni entorno de escritorio, es decir, una instalación limpia.

Una vez instalado nuestro Ubuntu accedemos mediante SSH como usuario root y una vez logueado nos vamos a dirigir al directorio /opt/

cd /opt/
Notion Image

Para instalar MHN necesitamos instalar los siguientes paquetes:

  • Sudo
  • GIT
  • Ppython 2.6
  • GCC
  • Automake

Antes de empezar la instalación debemos instalar estos paquetes en el sistema, siempre y cuando no los tengas ya en tu Ubuntu:

apt-get install sudo git python gcc automake -y
Notion Image

Una vez instalados todos los paquetes procedemos a descargar una copia de MHN desde github.com mediante GIT:

git clone https://github.com/threatstream/mhn.git
Notion Image

Nos posicionamos en la carpeta nhm/scripts:

cd mhn/scripts/
Notion Image

Y a continuación ejecutamos los scripts de instalación necesarios para instalar MHN:

sudo ./install_hpfeeds.sh
Notion Image
sudo ./install_mnemosyne.sh
Notion Image
sudo ./install_honeymap.sh
Notion Image

Por ultimo vamos ejecutar el script que nos va ayudar a instalar y a configurar el servidor:

sudo ./install_mhnserver.sh

Se iniciara el asistente de instalación de MHN y lo configuraremos con los parámetros siguientes:

Notion Image

Pide si queremos ejecutar en modo depuración, seleccionamos No

Pide poner dos veces la contraseña de acceso

Pide que URL queremos que tome como base para acceder mediante web, lo dejamos por defecto

Pide la URL del mapa a tiempo real como base para acceder mediante web, también lo dejamos por defecto

El servidor de correo, por defecto localhost

El puerto del servidor de correo, por defecto el 25

En la opción de usar TLS para el correo, seleccionamos No

En la opción de usar SSL para el correo, seleccionamos No

Dejamos en blanco el usuario del servidor de correo

Dejamos en blanco la contraseña del servidor de correo

Dejamos la ruta del fichero mhn.log por defecto

Notion Image

Una vez confirmados los datos de configuración va a tardar unos minutos en cargar todas las reglas en la base de datos...

Notion Image

Una vez finalizada toda la configuración se reiniciara el servidor web nginx.

Notion Image

Una vez instalado podemos comprobar si Nginx el Supervisor y MHN están corriendo, ejecutando los siguientes comandos:

sudo /etc/init.d/nginx status
Notion Image

Si todo funciona correctamente ya podemos acceder mediante el navegador web a la URL indicada en la configuración y autenticarnos mediante el correo y contraseña seleccionados durante la misma.

Notion Image

El concepto de los Sensores

Es muy importante entender que el sensor es una aplicación externa al Managementent de MHN, este sensor se puede instalar en el propio servidor de Modern Honey Pot, pero a la vez también podemos ir desplegando "Sensores" en otros servidores remotos, de esta forma vamos a poder desplegar tantos HoneyPot como queramos y todos los datos se van a cruzar en la consola de administración central, pudiendo filtrar no solo la procedencia y el tipo de ataque que reciben los sensores, sino que ademas podremos filtrar por destinos. En el caso de instalar sensores en varios servidores VPS por diferentes países, también vamos a tener una idea de que países o proveedores de redes son los mas susceptibles a ser atacados y no solo eso, también la información de que tipo de ataques se hacen en cada zona geográfica, aparte de que tipo de ataques son mas comunes dependiendo de la procedencia de los mismos. En verdad es muy divertido ver todo esto en directo, por lo que os animo a emplazar el máximo de "Sensores" que os sea posible.

Instalar el Sensor

En este ejemplo voy a mostrar como desplegar el sensor en el mismo servidor donde instalamos el MHN, para ello accedemos dentro de la administración y dentro de ella en la seccion "Deploy"

Notion Image

En este caso vamos a desplegar un sensor basado en Dionaea, este sensor simula abrir puertos comunes susceptibles a ser atacados, los puertos abiertos por Dionaea son:

PuertoServicioDescripción
80httpServidor Web
443httpsServidor web seguro
69tftpTransferencia de archivos
21FTPTransferencia de archivos
445SMB/CIFSCompartición de ficheros e impresoras
5060sipComunicación de voz sobre ip
1433mssqlServidor de base de datos de Microsoft
3306mysqlServidor de base de datos de MySQL

Para ejecutar el sensor seleccionamos en el desplegable "Ubuntu - Dionaea" nos va a generar un script que debemos insertar en el interprete de comandos de nuestro Ubuntu.

Notion Image

Pegamos el script en el interprete de comandos de Ubuntu y se instalara el sensor que volcara los datos en nuestro panel de control.

Notion Image

Una vez instalado el sensor, volvemos a la administración web, accedemos a "Sensors" >> "View Sensors" y observamos que efectivamente se ha creado correctamente el enlace a nuestro sensor, con todos los datos para identificarlo, la etiqueta Name es totalmente personalizable y a la derecha observamos el numero de veces que ha recibido ataques, lo normal es 0 cuando el sensor es nuevo, pues deberemos esperar unos minutos para empezara ver intentos de intrusión.

Notion Image

Lo mas divertido de Modern HoneyPot Network, es el mapa interactivo, que si lo dejamos abierto durante unos minutos nos aparecen a tiempo real todos los ataques que se están realizando hacia nuestros sensores, los puntos amarillos indican la posición de nuestros sensores y los rojos la situación de los atacantes, cuando dos puntos parpadean significa que hay un atacante (rojo) accediendo a un sensor o victima (amarillo).

Notion Image

Instalar sensores adicionales

Podemos desplegar sensores en cualquier lugar, por ejemplo contratando un servidor VPS o instalando un PC con Ubuntu en tu casa o en la oficina, emplazándolo en la zona DMZ de tu router o firewall.

La base es la misma, necesitamos un Ubuntu 14.04 LTS sin ningún componente adicional ni entorno de escritorio, es decir, una instalación limpia.

Primero de todo vamos a actualizar el repositorio de apt.

apt-get update

Una vez actualizado vamos a instalar todos los paquetes necesarios para desplegar el Sensor.

apt-get install sudo git python gcc automake software-properties-common python-software-properties -y

Para desplegar el nuevo Sensor accedemos a la administración web y dentro de ella en la seccion "Deploy" y seleccionamos en el desplegable "Ubuntu - Dionaea" esto nos va a generar un script que debemos insertar en el interprete de comandos de nuestro Ubuntu remoto que actuara como un sensor adicional.

Notion Image

Para ello copiamos el script, lo pegamos en el interprete de comandos de Ubuntu y se instalara el sensor que volcara los datos en nuestro panel de control.

Notion Image

Si el sensor se instala satisfactoriamente nos saldrá el siguiente resultado por pantalla: "dionaea: added process group"

Notion Image

Una vez instalado el sensor, volvemos a la administración web, vamos a "Sensors" >> "View Sensors" y observamos que efectivamente se ha creado un segundo sensor, con todos los datos relacionados al servidor, la etiqueta Name se puede personalizar.

Notion Image

Podemos crear una red de sensores

No hay limite, podemos añadir tantos sensores como queramos. En mi caso he desplegado 4 sensores repartidos geográficamente.

  1. Servidor de OVH situado en Francia con Ubuntu (MHN Server)
  2. VM en mi casa con Ubuntu, situada en la zona DMZ del router.
  3. VPS de host1plus situado en Reino Unido con Ubuntu.
  4. VPS de OVH situado en Canada con Ubuntu.

Este es el resultado de mi despliegue:

Notion Image

Observando los resultados

Después de dejar varias horas los sensores obteniendo datos de todas las conexiones recibidas cuando accedemos a la pagina principal de MHN Manager muestra un resumen de los ataques recibidos en las ultimas 24 horas.

Notion Image
← Volver al inicio
Modern HoneyPot Network: dejando un tarro de miel en internet