Laravel como honeypot

Laravel es un framework de php con código libre que sirve como herramienta de programación para evitar el código espagueti su funcion principal se enfoca en automatizar cotidianidades del programador como configuración con bases de datos, gestión de archivos, canales en tiempo real, archivos en la nube y mucho mas, esto lo hace una herramienta muy utilizada y común en el ámbito del desarrollo por lo que suele ser frecuentemente el objetivo de cibercriminales por eso es una opción viable para una versión alternativa de esta que funcione como Honeypot y herramienta de monitoreo continuo. (Krypton612 - Ronald Diaz)

¿Que se quiere y espera?

El proyecto consiste en crear un honeypot basado en Laravel con las características siguientes

  1. Registro de todos los intentos de acceso en rutas como /login, /search, etc.
  2. Total soporte ante múltiples ataques de fuerza bruta.
  3. Soporte para docker compose
    1. Integración con logstash
    2. Integración con elasitcsearch
    3. Integración con Banaba
  4. Respuesta realizaste ante intentos de intrusion basados en SQLI
  5. Respuesta a XSS expuestas en formularios.

Tares definidas para lograr la correcta culminazacion

En este apartado se definen las tareas a tomar en cuenta para la correcta programación, configuración y diseño del honeypot.

1. Definición del honeypot


  • Diseñar un honeypot web que simule servicios de la EMI.
  • Objetivo: capturar intentos de login, inyecciones SQL, ataques XSS y fuerza bruta.
  • Framework elegido: Laravel.
  • Salida de logs en formato JSON para integración con ELK.

2. Creación del proyecto Laravel

  • Crear proyecto base con laravel new honeypot-emi.

  • Configurar servidor local con php artisan serve —host=0.0.0.0 —port=8080.

  • Definir rutas principales:

    • /login → formulario falso que registra usuario/contraseña.
    • /search → endpoint que guarda consultas con posibles SQLi.
    • /admin → página ficticia restringida.
  • Implementar logging en config/logging.php con salida JSON.

  • Almacenar datos de cada petición: IP, User-Agent, payload, timestamp.


3. Seguridad y despliegue

  • Desplegar el honeypot en un entorno aislado (Docker o VLAN).
  • Exponer solo los puertos necesarios (80/443).
  • Restringir tráfico de salida para evitar pivoting.
  • Documentar la configuración de seguridad aplicada.

4. Integración con ELK

  • Configurar Filebeat para leer storage/logs/honeypot.json.

  • Crear pipeline en Logstash para parsear los logs y enviarlos a Elasticsearch.

  • Definir plantilla de índices en Elasticsearch para campos clave (ip, user, pass, query).

  • Configurar Kibana dashboards:

    • Top IPs atacantes.
    • Usuarios y contraseñas más intentados.
    • Queries sospechosas (SQLi/XSS).
    • Mapa de geolocalización de atacantes.

5. Pruebas de funcionamiento

  • Realizar ataques controlados con herramientas como:

    • sqlmap → inyección SQL.
    • hydra → fuerza bruta de login.
    • curl / burpsuite → fuzzing de parámetros.
  • Validar que los logs se generan correctamente en JSON.

  • Verificar que los eventos aparecen en Kibana tras pasar por Logstash y Elasticsearch.


6. Resultados

  • Confirmar que el honeypot captura interacciones maliciosas.
  • Analizar patrones en los dashboards de Kibana.
  • Generar evidencia con capturas de pantalla de logs y visualizaciones.

7. Documentación final

  • Incluir en la tesis el proceso completo: diseño, desarrollo, despliegue e integración

  • Adjuntar como anexos:

    • Código del honeypot en Laravel.
    • Configuración de Filebeat.
    • Pipeline de Logstash.
    • Dashboards de Kibana exportados.

Tareas generales

  • Definir Red e Infraestructura de docker
  • Crear el proyecto en laravel
  • Programar controladores, resources y routes en laravel
  • Tomar en cuenta Mysql
  • Crear contenedor de docker y docker compose
  • Integrar con el stack ELK
  • Probar funcionalidades en kibana

Tags: [#propio, desarrollo, honeypot, laravel header]