
Strumento automatizzato per screenshot web per attività di ricognizione, che cattura immagini dei siti, header del server e identifica credenziali predefinite. Supporta molteplici formati di input inclusi XML di Nmap e Nessus.
EyeWitness è progettato per scattare screenshot di siti web, fornire informazioni sulle intestazioni del server e identificare credenziali predefinite se note. Ora basato sul browser Chromium per una maggiore affidabilità e installazione più semplice.
EyeWitness ora utilizza ambienti virtuali Python per tutte le installazioni, fornendo:
eyewitness-venv/ per rimuovere tuttoeyewitness-venv/ con Python isolatoEyeWitness/
├── eyewitness-venv/ # 🔒 Ambiente virtuale (pacchetti Python isolati)
│ ├── bin/activate # Script di attivazione Linux/macOS
│ └── Scripts/activate.bat # Script di attivazione Windows
├── Python/
│ └── EyeWitness.py # 📜 Script principale (eseguito nell'ambiente virtuale)
└── setup/ # Script di setup e requisiti
🔥 NOVITÀ: EyeWitness ora utilizza ambienti virtuali Python per zero conflitti e installazione a prova di proiettile su tutte le piattaforme!
Nota: Il supporto Docker è attualmente in sviluppo. Utilizza le opzioni di installazione native qui sotto per ora.
Setup automatizzato con ambiente virtuale Python:
# 1. Apri PowerShell come amministratore
# 2. Vai alla directory EyeWitness
cd percorso\di\EyeWitness\setup
# 3. Esegui lo script di setup (crea l'ambiente virtuale)
.\setup.ps1
# 4. Testa l'installazione attivando l'ambiente virtuale
cd ..
eyewitness-venv\Scripts\activate.bat
python Python\EyeWitness.py --single https://example.com
Cosa viene installato:
Setup pronto per la produzione con ambiente virtuale Python:
# 1. Vai alla directory setup
cd EyeWitness/setup
# 2. Esegui lo script di setup (crea l'ambiente virtuale)
sudo ./setup.sh
# 3. Testa l'installazione attivando l'ambiente virtuale
cd ..
source eyewitness-venv/bin/activate
python Python/EyeWitness.py --single https://example.com
Cosa viene installato:
🎯 Vantaggi:
Distribuzioni Linux Supportate:
Setup basato su Homebrew con ambiente virtuale Python:
# 1. Installa Chrome tramite Homebrew
brew install --cask google-chrome
# 2. Vai alla directory setup ed esegui il setup
cd EyeWitness/setup
sudo ./setup.sh
# 3. Testa l'installazione attivando l'ambiente virtuale
cd ..
source eyewitness-venv/bin/activate
python Python/EyeWitness.py --single https://example.com
Cosa viene installato:
Dopo aver eseguito lo script di setup, attiva l'ambiente virtuale ed esegui EyeWitness:
🐧 Linux/macOS:
# 1. Attiva l'ambiente virtuale
source eyewitness-venv/bin/activate
# 2. Esegui EyeWitness (ora sei nell'ambiente isolato)
python Python/EyeWitness.py --single https://example.com
python Python/EyeWitness.py -f urls.txt
python Python/EyeWitness.py -x nmap_scan.xml
python Python/EyeWitness.py -f urls.txt -d /percorso/di/output
# 3. Al termine, disattiva l'ambiente virtuale
deactivate
🪟 Windows:
# 1. Attiva l'ambiente virtuale
eyewitness-venv\Scripts\activate.bat
# 2. Esegui EyeWitness (ora sei nell'ambiente isolato)
python Python\EyeWitness.py --single https://example.com
python Python\EyeWitness.py -f urls.txt
python Python\EyeWitness.py -x nmap_scan.xml
python Python\EyeWitness.py -f urls.txt -d C:\percorso\di\output
# 3. Al termine, disattiva l'ambiente virtuale
deactivate
# Attiva prima l'ambiente virtuale
source eyewitness-venv/bin/activate # Linux/macOS
eyewitness-venv\Scripts\activate.bat # Windows
# Crea un file di configurazione di esempio
python Python/EyeWitness.py --create-config
# Usa un file di configurazione
python Python/EyeWitness.py -f urls.txt --config ~/.eyewitness/config.json
# Attiva prima l'ambiente virtuale
source eyewitness-venv/bin/activate # Linux/macOS
eyewitness-venv\Scripts\activate.bat # Windows
# Valida gli URL senza scattare screenshot
python Python/EyeWitness.py -f urls.txt --validate-urls
# Salta la validazione (usa con cautela)
python Python/EyeWitness.py -f urls.txt --skip-validation
# Attiva prima l'ambiente virtuale
source eyewitness-venv/bin/activate # Linux/macOS
eyewitness-venv\Scripts\activate.bat # Windows
# Regola i thread in base al sistema (predefinito: rilevamento automatico)
python Python/EyeWitness.py -f urls.txt --threads 5
# Aumenta il timeout per connessioni lente
python Python/EyeWitness.py -f urls.txt --timeout 30
# Aggiungi ritardi e jitter
python Python/EyeWitness.py -f urls.txt --delay 2 --jitter 5
# Usa un proxy
python Python/EyeWitness.py -f urls.txt --proxy-ip 127.0.0.1 --proxy-port 8080
# Directory di output personalizzata
python Python/EyeWitness.py -f urls.txt -d /percorso/di/output
# Riprendi una scansione precedente
python Python/EyeWitness.py --resume /percorso/di/output/ew.db
EyeWitness rileva automaticamente le risorse del sistema e si adatta di conseguenza:
Crea un file di configurazione per salvare le tue impostazioni preferite:
{
"threads": 10,
"timeout": 30,
"delay": 0,
"jitter": 0,
"user_agent": "User Agent Personalizzato",
"proxy_ip": "127.0.0.1",
"proxy_port": 8080,
"output_dir": "./sessions",
"prepend_https": false,
"show_selenium": false,
"resolve": false,
"skip_validation": false,
"results_per_page": 25,
"max_retries": 2
}
Chromium/ChromeDriver non trovato:
sudo ./setup.sh nella directory setup/.\setup.ps1 come amministratore nella directory setup\sudo ./setup.sh nella directory setup/ (dopo brew install --cask google-chrome)Problemi con l'ambiente virtuale:
Timeout di connessione:
--timeout 60Utilizzo elevato di memoria:
--threads 5Errori di permessi:
Tutti gli errori ora includono passaggi specifici per la risoluzione. Ad esempio:
EyeWitness genera:
report.html - Report principale con screenshotscreens/ - Immagini degli screenshotsource/ - Codice sorgente della paginaew.db - Database SQLite per la capacità di ripresavenv (standard nella maggior parte delle installazioni Python)📝 Nota: Lo script di setup gestisce automaticamente tutte le dipendenze. Hai solo bisogno di Python 3.7+ e privilegi di amministratore.
Questo fork include una modernizzazione significativa:
E-Mail: GetOffensive [@] redsiege [dot] com
EyeWitness è concesso in licenza sotto la GNU General Public License v3.0.