Informe Grupo4 Honeypot 1
Informe Grupo4 Honeypot 1
Informe Grupo4 Honeypot 1
SEGURIDAD EN REDES
INFORME HONEYPOT
GRUPO 4:
- GÓMEZ PAOLA
- MONCAYO DAVID
- REVELO MAURICIO
- YAMBERLA DARIO
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.
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.
2
Tipos de honeypot
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.
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.
5
4.- Desarrollo
Topología de Red
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.
7
Y los diccionarios nos queda de esta forma.
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.
9
Ip de nuestra victima
10
En el honeypot visualiza cuantas veces quiere ingresar y las claves que han utilizado
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):
Otro []:
Es la información correcta? [S / n]
$ sudo su - cowrie
Verifica el código
12
remoto: Compresión de objetos: 100% (1025/1025), hecho.
remoto: Total 2965 (delta 1908), reutilizado 2962 (delta 1905), paquete-reutilizado 0
$ cd cowrie
$ pwd
$ virtualenv cowrie-env
[telnet]
enabled = true
$ 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:
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
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.
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:
O para telnet:
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.
git pull
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.
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.
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