Honeypot, aprendiendo de los ataques

Facebooktwitterlinkedinmail

24 enero, 2017

Esta entrada del blog será la primera de una serie de entradas dedicadas a HoneyPy. Un honeypot de baja interacción escrito en Python y mantenido por foospidy que es fácil de poner en funcionamiento, nos permite extender sus funcionalidades mediante el uso de plugins y también aplicar configuraciones personalizadas.

En primer lugar describiremos que es un honeypot. Un honeypot  es un sistema que tiene como objetivo recibir ataques para aprender de estos. Este simulará servicios que parecerán legítimos de cara al atacante pero que no tienen una utilidad real.

Esquema funcionamiento honeypot

La puesta en marcha de un sistema honeypot nos permitirá aprender de los ataques que recibimos. Además, podemos extraer información de este honeypot para realizar bloqueos con un nivel prácticamente nulo de falsos positivos, añadiendo así una capa de seguridad.

A continuación procedo a detallar como realizar la instalación de HoneyPy en un servidor CenOS versión 6.

Uno de los requisitos de HoneyPy es twisted, un framework de red para la programación dirigida por eventos,  en una versión superior a la 13.1 ya que utiliza la función twisted.internet.endpoints.connectProtocol. Esta librería a su vez requiere de una versión de Python superior o igual a la 2.7, que no es la que se encontrará en los repositorios de CentOS ya que este lleva instalada la versión de Python 2.6.

Esta versión de Python no puede ser remplazada de forma sencilla ya que es usada de forma interna por el sistema operativo, por lo tanto la solución más sencilla será utilizar The Software Collections Repository

Para realizar la instalación primero actualizaremos yum:

sudo yum update

Y después procederemos a instalar el repositorio:

sudo yum install centos-release-scl

Una vez instalado el repositorio podremos instalar la versión 2.7 de python:

sudo yum install python27

Con la versión 2.7 de Python instalada, la podremos usar llamando a otra shell en bash con python 2.7 habilitado:

scl enable python27 bash

Para utilizar HoneyPy deberemos descargar el código desde el repositorio oficial de GitHub e instalar las dependencias indicadas en el fichero requirements.txt que se encuentra en la raíz del repositorio descargado.

yum install pip

pip install requests

pip install twisted

Una vez instaladas las dependencias podremos hacer uso de HoneyPy  en modo consola con el comando:

python Honey.py

o en modo daemon con el comando:

python Honey.py -d &

Con esto tendremos nuestro honeypot funcionando con la configuración por defecto. En la próxima entrada describiré como configurar HoneyPy y como utilizar ipt-kit.