Informe Grupo4 Honeypot 1

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 18

UNIVERSIDAD TÉCNICA DEL NORTE

FACULTAD DE INGENIERIA EN CIENCIAS APLICADAS

CARRERA DE INGENIERIA EN ELECTRÓNICA Y REDES DE


COMUNICACIÓN

SEGURIDAD EN REDES
INFORME HONEYPOT

GRUPO 4:
- GÓMEZ PAOLA
- MONCAYO DAVID
- REVELO MAURICIO
- YAMBERLA DARIO

IBARRA 20 DE JUNIO DE 2018


CONTENIDO
1.- Tema........................................................................................................................................ 2
2.- Objetivos ................................................................................................................................. 2
2.1.- Objetivo General ............................................................................................................. 2
2.2.- Objetivos Específicos ...................................................................................................... 2
3.- Marco Teórico ........................................................................................................................ 2
Honeypot .................................................................................................................................. 2
Tipos de honeypot ................................................................................................................... 3
Honeypot pentbox ................................................................................................................... 4
Funciones: ............................................................................................................................ 4
Honeypot Cowrie……………………………………………………………………………..4
Servicio SSH………………………………………………………………………………….5
4.- Desarrollo ............................................................................................................................... 6
Topología de Red ..................................................................................................................... 6
Honeypot Instalación ............................................................................................................ 12
5.- Conclusiones ......................................................................................................................... 15
6.- Recomendaciones ................................................................................................................. 16
7.- Bibliografía ........................................................................................................................... 16

1
1.- Tema
Honeypot para el servicio ssh

2.- Objetivos
2.1.- Objetivo General
 Realizar un ataque de fuerza bruta al servicio de ssh utilizando herramientas de
honeypot, además de una maquina en kali Linux.

2.2.- Objetivos Específicos


 Realizar un ataque de fuerza bruta con las herramientas existentes.
 Instalar y configurar un honeypot para el desarrollo de la práctica.
 Elaborar una guía de uso básico del honeypot.

3.- Marco Teórico


Honeypot
Es una herramienta que se usa casi exclusivamente en el campo de la seguridad
informática. Su función se basa en atraer y analizar ataques realizados por bots o hackers
y su su objetivo es atraer atacantes para ver sus pautas de ataque, generar diccionarios
para recopilar que palabras usan en ataques (para no usarlas en tu sistema), conocer al
enemigo y su perfil.

Una de las opciones más utilizadas es usar un honeypot en forma de programa. Hay
honeypots que simulan ser una red local de múltiples equipos, ips falsas, directorios
inventados, equipos no presentes, etc… para crear gran confusión al atacante y/o para
detectar nuevos métodos de ataque y poder aplicar defensas a nuestra red real.

También pueden guardar usuario y contraseña que el atacante introduce, bien


manualmente, o por medio de diccionarios para así poder excluir todos esos caracteres
alfanuméricos o no de contraseñas en nuestra red real.

2
Tipos de honeypot

Tradicionalmente las honeypots se clasifican en honeypots de alta y baja interacción,


aunque es posible encontrar clasificaciones con más niveles según la interacción con los
atacantes. Como se refleja en la siguiente taxonomía.

3
Honeypot pentbox
Es una Suite de Seguridad orientada a Penetration_test y viene a ser un conjunto de
programas, que pueden ser ejecutados individualmente, sin dependencia de la Suite en sí.
Además, el proyecto puede ir creciendo fácilmente grácias a la comunidad, por lo fácil
que es implementar nuevos programas individualmente.

Funciones:
 Crackeador de Hash MD5, SHA1, SHA256 y SHA512 mediante fuerza bruta
numérica.
 Creador rápido de Honeypot.
 Generador de contraseñas seguras ante Ataque_de_fuerza_bruta y
Ataque_de_diccionario.
 Generadores de tráfico masivo en la red para probar posibles denegaciones de
servicio.
 Escáner de puertos.

Cowrie Honeypot

Tiene características muy interesantes, como por ejemplo simular un sistema de archivos
completo con la posibilidad de crear y borrar archivos, de esta manera, un posible atacante
podrá creerse que está en el sistema operativo real, cuando en realidad está dentro del
Honeypot. Otra característica interesante es que podremos añadir ficheros falsos para que
si por ejemplo el atacante hace un “cat” a un archivo como /etc/passwd se crea que está
leyendo todos los usuarios del propio sistema.
Todos los logs son almacenados en un formato UML compatible, de esta manera,
podremos estudiar detalladamente todos los pasos que ha realizado un posible atacante.
Cowrie también es capaz de guardar archivos descargados de Internet a través de wget o
cURL, o también de archivos subidos a través del protocolo SFTP o SCP para
posteriormente estudiar a fondo qué son esos archivos que el ciberdelincuente ha
intentado colarnos en el sistema. El protocolo SFTP permite tanto la subida de archivos
al servidor como también la descarga, los archivos subidos estarán en el directorio “dl/”
donde también estarán todos los archivos descargados con wget.
Cowrie está basado en el honeypot Kippo, pero tiene características adicionales que lo
hacen mucho más interesante. Por ejemplo, soporta comandos ejecutados a través de SSH
(SSH exec), de esta manera, el atacante podrá enviar comandos.
También es capaz de hacer un log de todos los intentos de conexiones TCP que intente
realizar. También es capaz de hacer un reenvío de las conexiones SMTP a un honeypot
SMTP diseñado para tal fin. El único requisito para hacer funcionar esta herramienta
Cowrie Honeypot es tener instalado Python 2.7, actualmente Python3 no lo soporta, y
también necesitamos Python-virtualenv.

4
Servicio SSH
Es un protocolo de administración remota que permite a los usuarios controlar y modificar
sus servidores remotos a través de Internet. El servicio se creó como un reemplazo seguro
para el Telnet sin cifrar y utiliza técnicas criptográficas para garantizar que todas las
comunicaciones hacia y desde el servidor remoto sucedan de manera encriptada.
Proporciona un mecanismo para autenticar un usuario remoto, transferir entradas desde
el cliente al host y retransmitir la salida de vuelta al cliente.

SSH está diseñado para reemplazar los métodos más viejos y menos seguros para
registrarse remotamente en otro sistema a través de la shell de comando, tales como telnet
o rsh. Un programa relacionado, el scp, reemplaza otros programas diseñados para copiar
archivos entre hosts como rcp. Ya que estas aplicaciones antiguas no encriptan
contraseñas entre el cliente y el servidor, evite usarlas mientras le sea posible. El uso de
métodos seguros para registrarse remotamente a otros sistemas reduce los riesgos de
seguridad tanto para el sistema cliente como para el sistema remoto.

El protocolo SSH proporciona los siguientes tipos de protección:

 Después de la conexión inicial, el cliente puede verificar que se está conectando


al mismo servidor al que se conectó anteriormente.

 El cliente transmite su información de autenticación al servidor usando una


encriptación robusta de 128 bits.

 Todos los datos enviados y recibidos durante la sesión se transfieren por medio de
encriptación de 128 bits, lo cual los hacen extremamente difícil de descifrar y leer.

 El cliente tiene la posibilidad de reenviar aplicaciones desde el servidor. Esta


técnica proporciona un medio seguro para usar aplicaciones gráficas sobre una
red.

5
4.- Desarrollo
Topología de Red

Kali Linux Atacante


Dos routes Cisco Conexión diferentes redes.
Ubuntu Victima, honeypot

Desarrollo del Ataque.


 Asignamos las IP a cada una de nuestras maquinas y equipos
KALI

UBUNTU

6
 Comprobamos conectividad

 Procedemos a realizar los pasos para nuestro ataques por fuerza bruta a ssh.
Directorio donde estará nuestros diccionarios.

Nombre y extensión de nuestro diccionario esto se lo realiza tanto para las claves
como para los usuarios.

Y escribimos algunas combinaciones de claves, este procedimiento también se lo


puede realizar con generadores de claves automaticas para diccionarios mas extensos.

7
Y los diccionarios nos queda de esta forma.

Nos dirigimos a nuestro honeypot Ubuntu para activar la herramienta cowrie la


cual estamos utilizando para el servicio SSH.

Habilitamos cowrie

Directorio Cowrie

Iniciamos cowrie

8
Cowrie se queda en background lo cual vamos a ponerlo en modo escucha para
visualizar los procesos que se realizan.

Ejecución de ataque con sparta

Activo sparta nos vamos a brute

9
Ip de nuestra victima

Buscamos los diccionarios que creamos anteriormente

Y corremos nuestro sparta

10
En el honeypot visualiza cuantas veces quiere ingresar y las claves que han utilizado

Y al ingresar manualmente no nos permite ya que esta activo el honeypot

Honeypot

11
Honeypot Instalación

Instalando Cowrie

 Instalar dependencias
Primero instalamos soporte para entornos virtuales Python y otras dependencias. Los
paquetes reales de Python se instalan más tarde.
En sistemas basados en Debian (verificado por última vez en Debian 9, 2017-07-25):

$ sudo apt-get install git python-virtualenv libssl-dev libffi-dev build-essential libpython-dev


python2.7-minimal authbind

 Cree una cuenta de usuario


Se recomienda encarecidamente que se instale en un id. De usuario no root dedicado:

$ sudo adduser --disabled-password cowrie

Agregar usuario `cowrie '...

Agregar nuevo grupo `cowrie '(1002) ...

Agregar un nuevo usuario `cowrie '(1002) con el grupo` cowrie' ...

Cambiar la información del usuario para cowrie

Ingrese el nuevo valor, o presione ENTER para el valor predeterminado

Nombre completo []:

Número de habitación []:

Teléfono del trabajo []:

Teléfono de casa []:

Otro []:

Es la información correcta? [S / n]

$ sudo su - cowrie

 Verifica el código

$ git clone http://github.com/micheloosterhof/cowrie

Clonación en 'cowrie' ...

remoto: Contando objetos: 2965, hecho.

12
remoto: Compresión de objetos: 100% (1025/1025), hecho.

remoto: Total 2965 (delta 1908), reutilizado 2962 (delta 1905), paquete-reutilizado 0

Recepción de objetos: 100% (2965/2965), 3,41 MiB | 2.57 MiB / s, hecho.

Resolución de deltas: 100% (1908/1908), hecho.

Comprobando la conectividad ... hecho.

$ cd cowrie

 Configuración del entorno virtual


A continuación, debe crear su entorno virtual:

$ pwd

/ inicio / cowrie / cowrie

$ virtualenv cowrie-env

Nuevo ejecutable de python en ./cowrie/cowrie-env/bin/python

Instalando setuptools, pip, wheel ... done.

Activar el entorno virtual e instalar paquetes

$ fuente cowrie-env / bin / activate

(cowrie-env) $ pip install -upgrade pip

(cowrie-env) $ pip install -upgrade -r requirements.txt

 Paso 5: Instale el archivo de configuración


La configuración de Cowrie se almacena en cowrie.cfg.dist y cowrie.cfg. Ambos archivos
se leen, donde las entradas de cowrie.cfg tienen prioridad. El archivo .dist se puede
sobrescribir en las actualizaciones, cowrie.cfg no se cambiará. Para ejecutar con una
configuración estándar, no hay necesidad de cambiar nada. Para habilitar telnet, por
ejemplo, cree cowrie.cfg e ingrese solo lo siguiente:

[telnet]

enabled = true

 Generar una clave DSA


Este paso no debería ser necesario, sin embargo, algunas versiones de twisted no son
compatibles. Para evitar problemas de antemano, ejecuta:

$ datos de cd

13
$ ssh-keygen -t dsa -b 1024 -f ssh_host_dsa_key

$ cd ..

 Activación de cowrie
Cowrie se implementa como un módulo para Twisted, pero para importar correctamente
todo lo que necesita el directorio de origen de nivel superior en os.path de python. Esto a
veces no sucederá correctamente, así que explícalo:

#o otro camino a la carpeta cowrie de nivel superior

$ export PYTHONPATH = / home / cowrie / cowrie

Comience con Cowrie con el comando cowrie. Puede agregar el directorio cowrie / bin a su ruta si lo
desea. Si el entorno virtual se llama "cowrie-env", se activará automáticamente. De lo contrario,
deberás activarlo manualmente

$ bin / cowrie start

Activando virtualenv "cowrie-env"

Iniciando cowrie con argumentos adicionales [] ...

 Redireccionamiento de puertos
 Cowrie se ejecuta de manera predeterminada en el puerto 2222. Esto se puede modificar en
el archivo de configuración. La siguiente regla de firewall reenviará el tráfico entrante en el
puerto 22 al puerto 2222.

$ sudo iptables -t nat -A PREROUTING -p tcp --dport 22 -j REDIRECT - to-port 2222

Tenga en cuenta que debe probar esta regla solo desde otro host; no se aplica a las conexiones de
bucle invertido. Alternativamente, puede ejecutar authbind para escuchar como no raíz en el puerto
22 directamente:

$ apt-get install authbind

$ touch / etc / authbind / byport / 22

$ chown cowrie: cowrie / etc / authbind / byport / 22

$ chmod 770 / etc / authbind / byport / 22

O para telnet:

$ apt-get install authbind

$ sudo touch / etc / authbind / byport / 23

$ sudo chown cowrie: cowrie / etc / authbind / byport / 23

$ sudo chmod 770 / etc / authbind / byport / 23

 Edite bin / cowrie y modifique la configuración AUTHBIND_ENABLED

14
 Cambia listen_port a 22 en cowrie.cfg

La actualización de Cowrie
Updating es un proceso fácil. Primero, detén tu honeypot. A continuación, obtenga las
actualizaciones de GitHub, como paso siguiente, actualice sus dependencias de Python.

bin / cowrie stop

git pull

instalación de pip --upgrade -r requirements.txt

bin / cowrie start

5.- Conclusiones
 Un honeypot nos permite detectar intrusos que intentan ingresar a nuestra red de
forma no segura.
 Algunos honeypot que hay simulan ser una red local de múltiples equipos, ips
falsas, directorios inventados, equipos no presentes
 Se pueden guardar usuario y contraseña que el atacante introduce, bien
manualmente, o por medio de diccionarios para así poder excluir todos esos
caracteres alfanuméricos o no de contraseñas en nuestra red real.
 Los honeypots los hay de distintos tipos, unos son más fáciles de usar, otros más
complejos, pero altamente configurables, aunque la forma más fácil de saber cuál
va a cubrir nuestras necesidades será probándolos.

 El objetivo de los honeypots es detectar ataques gracias a la simulación o puesta


real de sistemas o dispositivos para posteriormente analizar los datos obtenidos.
Por ello, es necesaria una implementación de respuestas frente a ataques y una
monitorización de los datos a analizar.
 El tipo de honeypot que queremos implementar en nuestro sistema y la ubicación
que se le va a dar al mismo también son detalles a tener en cuenta. En el caso de

15
exponer el honeypot a Internet, será necesario segmentar la red para evitar salto
entre redes y que el atacante pueda obtener más información de la que deseamos.
 Puede llegar a existir una responsabilidad legal en el despliegue de una honeypot
que es necesario analizar y tener en cuenta. Por ejemplo, si nuestra honeypot es
de alta interacción, o incluso si utilizamos un dispositivo real, el atacante tiene la
posibilidad de utilizar este sistema para realizar ataques a otros ajenos a nuestra
red, y eso puede convertirse en un problema legal. Es muy importante que nuestra
honeypot tenga filtrado el tráfico de salida para evitar esto.
 Es importante realizar una revisión y mantenimiento del honeypot para que esté
completamente operativo y cumpla las funciones para las que fue desplegado.

6.- Recomendaciones
 Estar seguro del objetivo con el que se despliega el honeypot y los datos que se
puedan recoger.
 Elegir bien el nivel de interacción que se requiere para el honeypot a usarse en
base al objetivo que tendrá el mismo. (Investigación, búsqueda, análisis de
malware, etc.)
 Configurar de forma correcta el honeypot para evitar que atacantes lo usen como
vía de entrada al sistema en el caso de romper todos los controles de seguridad.
 Analizar los datos obtenidos para sacar conclusiones con cierta regularidad.

7.- Bibliografía
Zhang, F., Zhou, S., Qin, Z., & Liu, J. (2003, August). Honeypot: a supplemented active
defense system for network security. In Parallel and Distributed Computing,
Applications and Technologies, 2003. PDCAT'2003. Proceedings of the Fourth
International Conference on (pp. 231-235). IEEE.

Zou, C. C., & Cunningham, R. (2006, June). Honeypot-aware advanced botnet


construction and maintenance. In Dependable Systems and Networks, 2006. DSN 2006.
International Conference on (pp. 199-208). IEEE.

Blake, K. W., Converse, V. K., Edmark, R. O. N., & Garrison, J. M. (2008). U.S. Patent
No. 7,412,723. Washington, DC: U.S. Patent and Trademark Office.

16
Provos, N. (2004, August). A Virtual Honeypot Framework. In USENIX Security
Symposium (Vol. 173, pp. 1-14).

17

También podría gustarte