
Uno strumento di simulazione leggero e self-hosted per la formazione sull'ingegneria sociale "ClickFix" (ClearFake). Simula in sicurezza attacchi di clipboard-injection con esche realistiche e payload innocui.
Uno strumento di simulazione leggero e self-hosted per attacchi di social engineering di tipo "ClickFix".
Questo strumento è SOLO per la FORMAZIONE AUTORIZZATA DI SECURITY AWARENESS. L'uso non autorizzato di questo strumento per prendere di mira sistemi o utenti senza esplicita autorizzazione è illegale e contrario all'etica. Gli autori non sono responsabili di qualsiasi uso improprio di questo software.
ClickFix (noto anche come "ClearFake" o "Fake Update") è una tecnica di social engineering in cui gli attaccanti inducono gli utenti a eseguire manualmente comandi dannosi (di solito tramite la finestra Esegui di Windows) per "correggere" un falso errore. Poiché l'esecuzione viene avviata dall'utente, questa tecnica spesso aggira i controlli di sicurezza tradizionali.
Lo strumento di formazione ClickFix consente ai team di sicurezza di simulare questi attacchi in modo sicuro per formare i dipendenti.
Caratteristiche principali:
Clona il repository:
git clone https://github.com/boredchilada/clickfix-simulator-2025.git
cd clickfix-simulator-2025
Avvia il container:
docker-compose up -d
Accedi allo strumento:
https://localhost/admin (Utente: admin, Password: changeme_please)https://localhost/s/teams_error?uid=test_userPrerequisiti: Python 3.8+, pip, openssl (per i certificati).
Installa le dipendenze:
python -m venv venv
source venv/bin/activate # or venv\Scripts\activate on Windows
pip install -r requirements.txt
Inizializza il database:
flask init-db
Genera i certificati (richiesti per la Clipboard API):
mkdir certs
openssl req -x509 -newkey rsa:4096 -nodes -keyout certs/key.pem -out certs/cert.pem -days 365 -subj "/CN=localhost"
Avvia il server:
python run.py
Lo strumento è sviluppato con Flask (Python) e utilizza SQLite per l'archiviazione dei dati.
run.py: logica principale dell'applicazione, route e generazione dei payload.cloner.py: utilità per clonare siti web e iniettare trappole.templates/:
lures/: modelli di attacco a pagina intera.traps/: frammenti HTML (popup/overlay) iniettati nei siti clonati.scenarios/: archivio per i siti clonati.static/: CSS, JS e immagini.Per ricevere avvisi in tempo reale quando un utente fa clic sul pulsante di correzione o esegue il payload, imposta la variabile d'ambiente WEBHOOK_URL.
Formati supportati: Slack, Discord, Microsoft Teams (Incoming Webhook).
environment:
- WEBHOOK_URL=https://hooks.slack.com/services/T000/B000/XXXX
Puoi sostituire la trappola predefinita per qualsiasi campagna aggiungendo ?t=<trap_name> all'URL.
Esempio: https://training.local/s/teams_error?uid=john&t=cloudflare
Per impostazione predefinita, lo strumento utilizza SQLite (training_log.db). Per campagne ad alto volume o distribuzioni con bilanciamento del carico, puoi passare a PostgreSQL o MySQL impostando SQLALCHEMY_DATABASE_URI.
environment:
- SQLALCHEMY_DATABASE_URI=postgresql://user:pass@db_host:5432/clickfix
navigator.clipboard.writeText() richiede un contesto sicuro (HTTPS o localhost). Lo strumento non funzionerà su semplice HTTP in una rete.docker-compose.yml o .env prima della distribuzione.I contributi sono benvenuti! Leggi CONTRIBUTING.md per le linee guida.
Questo progetto è concesso in licenza secondo i termini della Licenza MIT - consulta il file LICENSE per i dettagli.