Lucrecia - Honeypot FTP

Iniciado por ???????, Marzo 25, 2020, 02:47:21 PM

Tema anterior - Siguiente tema

0 Miembros y 1 Visitante están viendo este tema.

Marzo 25, 2020, 02:47:21 PM Ultima modificación: Marzo 25, 2020, 02:52:12 PM por Kirari
Lucrecia - Honeypot FTP




Buenas a todos Underc0ders! Como están? Espero que muy bien  ;D

Mis disculpas por haber publicado el post anteriormente, fue un mal error de tipeo y le di a publicar.

Hoy les traigo una herramienta  llamada Lucrecia. Esta es un honeypot con servicio FTP fácil de usar desarrollada en Python. Pero antes, para los nuevos, les daré una breve explicación de lo que es un honeypot.




¿Qué es un Honeypot?

Un honeypot es un sistema trampa o señuelo que sirve para atraer atacantes. Cuando decimos que es un sistema trampa, nos referimos  a que está expuesto a ser atacado por un tercero.
Esta no es una solución de seguridad, es solo una herramienta para entender las técnicas que usan los atacantes en un sistema y así poder idear planes para mejorar las medidas de
protección de las empresas.

¿Qúe tipos de Honeypots existen?

Hay tres tipos de honeypots dependiendo la interacción que tenga el honeypot con el atacante:

- Baja interacción: en estos casos el honeypot no son servicios reales sino que se encarga de emular un servicio, una aplicación o un sistema que es vulnerable. No dan acceso al atacante,
  están en sistemas operativos emulados, con riesgos bajos, datos limitados a solo los intentos de conexión, con una fácil configuración y mantenimiento.

- Media interacción: se aumenta la relación entre el sistema y el atacante. En este caso se emulan servicios que responden al atacante, que puede llegar a conseguir acceso a recursos falso como pueden ser un
  servidor de FTP o un SSH. En definitiva, los honeypots de media interacción dan acceso limitado al atacante, están en sistemas operativos emulados, con riesgo medio, con una recolección de datos variable según
  los conocimientos del atacante, una configuración baja/media y un mantenimiento medio.

- Alta interacción: En esta ocasión están construidos con máquinas reales con un sistema operativo vulnerable real que son ofrecidos a los atacantes. Son colocados en la red interna de la organización en producción
  y aunque presentan un alto riesgo, cuando detectan actividad, suele ser importante. En si, dan acceso total al atacante, están en sistemas operativos reales, con riesgo alto, con una recolección de datos total, y una
  configuración y mantenimiento difícil.

Nota: En caso de Lucrecia Honeypot FTP, es de media interacción.

Para más información acerca de honeypots:

- No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
- No tienes permitido ver los links. Registrarse o Entrar a mi cuenta




Dejando de lado la teoría, pasaré a cómo usar Lucrecia...

Clonar repositorio e instalar dependencias

Código: php

git clone https://github.com/Kirari-Senpai/Lucrecia.git
cd Lucrecia/
pip3 install -r requirements.txt


Configurar el servidor a través del archivo "server.conf"

Abrimos el archivo "server.conf" con el editor que les parezca más cómodo. Entonces editan como más les guste:

Código: php


[DEFAULT]

HOST = 0.0.0.0
PORT = 21


[FTP]

USER = lucrecia
PASSWORD = toor
CURRENT_DIRECTORY = /home/lucrecia/ftp/
MSG = Welcome to Lucrecia's FTP server (vsFTPd 3.0.3)
DIRECTORY_FILES = client.py,test.c,prototype.c




Constantes FTP:

- USER,PASS: usuario y contraseña que utilizarán para el servidor FTP.
- CURRENT_DIRECTORY: es una ruta de *directorio actual* falsa.
- MSG: mensaje de bienvenida al momento de conectarse al servidor.
- DIRECTORY_FILES: archivos falsos que se mostrará al atacante.


Configurar el servidor a través de argumentos

Para poder configurar, primero debes pasarle como argumento el host. En esta imagen se ven ejemplos de como se utiliza:



El parametro "-h" es obligatorio si es que se quiere configurar de esta manera, en cuanto a los otros no.


Iniciar Honeypot

Para iniciar el honeypot utilizando el archivo, utilizaremos lo siguiente:

Código: php

sudo python3 lucrecia.py -f server.conf


Y por argumentos, haremos esto:

Código: php

sudo python3 lucrecia.py -h 192.168.0.18 <parámetros opcionales>






Escaneo básico con NMAP

Al hacer un escaneo básico con Nmap, vemos que el puerto 21 con servicio FTP está abierto:



Accediendo al servidor trampa

Ahora como atacantes, intentaremos entrar al servidor, mediante un ataque de diccionario, utilizaremos Hydra como ejemplo:



Y como podemos ver, se ha encontrado las credenciales para acceder.

Mientras tanto, del lado del servidor, obtendremos esto:



Se ha registrado toda actividad de login del atacante.

Ahora bien, el atacante accederá con las credenciales encontradas:



Lado del honeypot:



Bien, ahora el atacante comienza a ejecutar comandos libremente pensando que está en un servidor FTP genuino:



Mientras que en el servidor se ve su actividad:



Como el programa todavía sigue en desarrollo, entonces hay algunos comandos que no se podrán ejecutar, por lo que les aparecerá un permiso denegado:





Está claro que el atacante no va a poder hacer modificaciones de los archivos o directorios, porque son completamente falsos, pero trabajo en eso para una emulación mucho mejor.

Si el atacante se desconecta, se avisará también al servidor:



Adicionalmente, se creará un log con toda la actividad del intruso para que podamos revisarla cuando queramos:






Bueno compañeros, eso es todo por hoy. Sé que le falta muchas cosas por hacer, pero se irá de poco a poco. Se está tratando de implementar una pantalla de monitoreo para que sea mucho mejor el seguimiento de actividades.

Espero que haya sido de su agrado  ;D
Saludos!
Kirari-

Está muy bueno como para una intranet de juegos, en que se suele crear servidores ftp para compartir.
Siempre hay un pillo inventando.

Muy bueno. Es Ud. muy creativo.



No tienes permitido ver los links. Registrarse o Entrar a mi cuenta