
Una herramienta de simulación ligera y autoalojada para el entrenamiento de ingeniería social "ClickFix" (ClearFake). Simula de forma segura ataques de inyección de portapapeles con señuelos realistas y cargas útiles inofensivas.
Una herramienta de simulación ligera y autohospedada para ataques de ingeniería social de tipo "ClickFix".
Esta herramienta es SOLO PARA CAPACITACIÓN DE CONCIENCIACIÓN EN SEGURIDAD AUTORIZADA. El uso no autorizado de esta herramienta para atacar sistemas o usuarios sin permiso explícito es ilegal y poco ético. Los autores no son responsables del mal uso de este software.
ClickFix (también conocido como "ClearFake" o "Fake Update") es una técnica de ingeniería social en la que los atacantes engañan a los usuarios para que ejecuten manualmente comandos maliciosos (normalmente a través del cuadro de diálogo Ejecutar de Windows) para "arreglar" un error falso. Debido a que el usuario inicia la ejecución, esta técnica suele eludir los controles de seguridad tradicionales.
La Herramienta de Entrenamiento ClickFix permite a los equipos de seguridad simular estos ataques de forma segura para capacitar a los empleados.
Características principales:
Clona el repositorio:
git clone https://github.com/boredchilada/clickfix-simulator-2025.git
cd clickfix-simulator-2025
Inicia el contenedor:
docker-compose up -d
Accede a la herramienta:
https://localhost/admin (Usuario: admin, Contraseña: changeme_please)https://localhost/s/teams_error?uid=test_userRequisitos previos: Python 3.8+, pip, openssl (para certificados).
Instala las dependencias:
python -m venv venv
source venv/bin/activate # or venv\Scripts\activate on Windows
pip install -r requirements.txt
Inicializa la base de datos:
flask init-db
Genera certificados (requerido para la API del portapapeles):
mkdir certs
openssl req -x509 -newkey rsa:4096 -nodes -keyout certs/key.pem -out certs/cert.pem -days 365 -subj "/CN=localhost"
Ejecuta el servidor:
python run.py
La herramienta está construida con Flask (Python) y utiliza SQLite para el almacenamiento de datos.
run.py: Lógica principal de la aplicación, rutas y generación de payloads.cloner.py: Utilidad para clonar sitios web e inyectar trampas.templates/:
lures/: Plantillas de ataque de página completa.traps/: Fragmentos HTML (popups/overlays) inyectados en sitios clonados.scenarios/: Almacenamiento para sitios clonados.static/: CSS, JS e imágenes.Para recibir alertas en tiempo real cuando un usuario hace clic en el botón de arreglo o ejecuta el payload, establece la variable de entorno WEBHOOK_URL.
Formatos compatibles: Slack, Discord, Microsoft Teams (Webhook entrante).
environment:
- WEBHOOK_URL=https://hooks.slack.com/services/T000/B000/XXXX
Puedes anular la trampa predeterminada para cualquier campaña añadiendo ?t=<trap_name> a la URL.
Ejemplo: https://training.local/s/teams_error?uid=john&t=cloudflare
Por defecto, la herramienta utiliza SQLite (training_log.db). Para campañas de alto volumen o despliegues con balanceo de carga, puedes cambiar a PostgreSQL o MySQL configurando SQLALCHEMY_DATABASE_URI.
environment:
- SQLALCHEMY_DATABASE_URI=postgresql://user:pass@db_host:5432/clickfix
navigator.clipboard.writeText() requiere un contexto seguro (HTTPS o localhost). La herramienta no funcionará sobre HTTP simple en una red.docker-compose.yml o .env antes del despliegue.¡Las contribuciones son bienvenidas! Consulta CONTRIBUTING.md para conocer las pautas.
Este proyecto está bajo la Licencia MIT; consulta el archivo LICENSE para más detalles.