Skip to content
KitploitKITPLOIT
HerramientasExploitsBlog
Log in
Enviar
HerramientasExploitsBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
Reel — Framework de simulación de phishing y concienciación para campañas basadas en nodos, captura de credenciales, entrega SMTP, CAPTCHA y reproducción opcional de credenciales del navegador. | Kitploit
Herramientas/GitHubGitHub/trustedsec/reel
Herramientas de PhishingHerramientas de SuplantaciónPhishingPruebas de PenetraciónIngeniería SocialAprendizaje y EducaciónRed TeamingSeguridad de Correo ElectrónicoTop en Herramientas de Suplantación #18Top en Phishing #15
50327hace 1 mesRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir
Top en Herramientas de Phishing #15
GitHubtrustedsec/reel

Reel

Framework de simulación de phishing y concienciación para campañas basadas en nodos, captura de credenciales, entrega SMTP, CAPTCHA y reproducción opcional de credenciales del navegador.

Ver Repositorio

Reel

Marco de simulación de phishing y concienciación en seguridad con flujos de trabajo configurables, gestión de campañas y proxy de credenciales opcional.


Inicio rápido (USO OPS)

  1. Clona el repositorio y entra en él con cd.
  2. Ejecuta ./deploy.sh; esto configurará los requisitos previos por ti, asumiendo que estás en Ubuntu.
  3. Ejecuta ./start.sh --preload-ml. Esto iniciará los servidores y precargará los modelos de ML que usamos.

Obtienes la interfaz de administración (Admin UI) en http://localhost:8000 y el servidor de phishing en http://localhost:1234. Inicio de sesión por defecto: admin / admin123. Cambia la contraseña después del primer inicio de sesión.

Reenvía el puerto 8000 a tu equipo local mediante SSH para acceder al panel de administración. NO expongas el panel de administración ni el servidor Flask (puerto 1234) directamente a Internet.

deploy.sh instalará un servidor Caddy en el mismo host; todo está construido asumiendo que usarás Caddy como proxy inverso. No es obligatorio, pero aquí hay dragones.

Banderas opcionales para start.sh:

  • --with-caddy — Inicia Caddy mediante Docker (solo para pruebas locales).
  • --preload-ml — Descarga previamente el modelo de detección de phishing (~1.3GB); evita la demora del primer uso al utilizar el plugin Phishing Detector.
  • --reset-db — Restablece la base de datos y la reinicializa.
  • --admin-only — Inicia solo el servidor de administración (puerto 8000).
  • --phishing-only — Inicia solo el servidor de phishing (puerto 1234).
  • --skip-init — Omite la inicialización de la base de datos.
  • --skip-setup — Omite la configuración del venv/dependencias; solo carga .env e inicia los servidores.

Sin start.sh, después de instalar las dependencias e inicializar la base de datos, puedes ejecutar ambos servidores con: uv run python -m cli start.


Dependencias

Python: Consulta requirements.txt. El stack principal incluye Flask, SQLAlchemy, Jinja2, Pydantic, Flask-Login, python-jose, passlib, cryptography y Flask-WTF. El plugin Phishing Detector usa transformers y torch. El proxy de credenciales usa Playwright; las integraciones opcionales usan OpenAI/Anthropic y boto3 (AWS Connect).

Desarrollo: requirements-dev.txt añade pytest, pytest-cov y herramientas de prueba relacionadas. Instala con uv pip install -r requirements-dev.txt para ejecutar pruebas y cobertura.

Sistema (producción): El script de despliegue está dirigido a Ubuntu/Debian. Instala uv, Caddy (proxy inverso) y paquetes del sistema como libmagic1. Para el proxy de credenciales, start.sh ejecuta uv run playwright install chromium para instalar Chromium.


Scripts

deploy.sh

Preparación para producción en Ubuntu. Idempotente. Hace lo siguiente:

  1. Comprueba que sea Ubuntu/Debian.
  2. Instala paquetes del sistema (curl, ca-certificates, libmagic1, etc.).
  3. Instala uv si no está presente.
  4. Instala Caddy como proxy inverso (APT).
  5. Crea un entorno virtual e instala las dependencias de Python desde requirements.txt.
  6. Crea .env a partir de .env.example si no existe y genera SECRET_KEY y JWT_SECRET_KEY si no están definidas.
  7. Crea los directorios requeridos (storage/caddy/data, storage/caddy/config, storage/uploads, storage/templates, storage/assets, instance).
  8. Inicializa opcionalmente la base de datos con --init-db (ejecuta uv run python -m cli init --force).

No inicia la aplicación. Para producción: inicia Caddy (proxy inverso) y luego arranca la aplicación con ./start.sh o un administrador de procesos para que todo el tráfico llegue a la aplicación a través del proxy.

start.sh

Arranque de desarrollo y local. Hace lo siguiente:

  1. Carga .env y garantiza SECRET_KEY y JWT_SECRET_KEY (las genera si hay valores por defecto presentes).
  2. Verifica que uv esté instalado.
  3. Crea un entorno virtual si falta.
  4. Instala las dependencias desde requirements.txt.
  5. Ejecuta uv run playwright install chromium para el proxy de credenciales.
  6. Descarga opcionalmente por adelantado el modelo de detección de phishing con --preload-ml (~1.3GB).
  7. Inicializa la base de datos si no existe ningún archivo de base de datos (salvo que se use --skip-init). Usa --reset-db para borrarla y reinicializarla.
  8. Inicia opcionalmente Caddy mediante Docker con --with-caddy (solo para pruebas locales).
  9. Inicia los servidores: por defecto tanto el de administración como el de phishing mediante uv run python -m cli start; usa --admin-only o --phishing-only para ejecutar solo uno.

Despliegue en producción

En producción, la aplicación debe ejecutarse detrás de un proxy inverso. No expongas los servidores de desarrollo de Flask directamente a Internet.

El proxy inverso es responsable de la terminación TLS, las cabeceras Host correctas, el enrutamiento por ruta y dominio, y de separar el tráfico de administración del tráfico de campañas. La aplicación escucha en localhost o en un puerto interno; el proxy gestiona el HTTPS público y reenvía al servidor de administración (p. ej. puerto 8000) y al servidor de phishing (p. ej. puerto 1234) según tu configuración.

Recomendado: Usa Caddy como proxy inverso. deploy.sh instala Caddy mediante APT. El proyecto incluye ejemplos de Caddyfile (p. ej. Caddyfile.minimal). Después de ejecutar deploy.sh, inicia Caddy (p. ej. caddy run --config /path/to/Caddyfile.minimal) y luego arranca la aplicación con ./start.sh o un administrador de procesos. Cualquier proxy inverso equivalente (nginx, Traefik, etc.) es aceptable siempre que la aplicación no esté expuesta directamente.


Propósito del proyecto

Reel es un marco de simulación de phishing y concienciación en seguridad. Los operadores usan la interfaz de administración (admin UI) para gestionar campañas, flujos de trabajo, plantillas y objetivos. El servidor de phishing sirve las páginas de aterrizaje de las campañas y ejecuta flujos de trabajo—grafos basados en nodos de plugins—en cada petición.

Hay dos puntos de entrada de la aplicación en app.py: create_app() para el servidor de phishing y create_admin_app() para la interfaz de administración. Las campañas pueden ser entrantes (inbound) (un visitante sigue un enlace; los flujos de trabajo GET y POST gestionan las vistas de página y los envíos de formularios) o salientes (outbound) (el sistema envía correos o llamadas mediante flujos de trabajo de envío). Caddy puede usarse para el enrutamiento de campañas basado en dominios. El proxy de credenciales usa Playwright para la automatización del navegador y reproducir las credenciales capturadas en los sitios objetivo.


Conceptos de flujos de trabajo

Inbound (entrante)

Un usuario visita una URL de campaña (p. ej. /<campaign_uid>). El servidor de phishing enruta por UID de campaña. Para peticiones GET ejecuta el flujo de trabajo GET de la campaña (p. ej. renderizar página de aterrizaje, CAPTCHA); para peticiones POST ejecuta el flujo de trabajo POST (p. ej. validar la entrada, capturar credenciales, redirigir). Los flujos de trabajo son de tipo campaign y declaran soporte de métodos HTTP (GET, POST o AMBOS). El contexto de ejecución incluye campaign, request, session y variables. La respuesta se toma de claves del contexto como _response_html, _response_redirect o _response_json. Los flujos de trabajo entrantes se usan para páginas de aterrizaje, CAPTCHA, captura de credenciales, redirecciones y registro de eventos.

Outbound (saliente)

Descargar herramienta