Skip to content
KitploitKITPLOIT
StrumentiExploitsBlog
Log in
Invia
StrumentiExploitsBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

FeedContattoPrivacy© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
phishcollector — PhishCollector è un framework di ricerca per raccogliere, analizzare e tracciare siti di phishing. | Kitploit
Strumenti/GitHubGitHub/olizimmermann/phishcollector
OSINT (Open Source Intelligence)Strumenti di PhishingRicognizioneFeed e Aggregatori di MinacceRaccolta InformazioniPhishingSicurezza WebThreat IntelligencePaper e RicercaApprendimento e FormazioneCrawler
233307 mesi faRevisionato da Kitploit

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi
GitHub
olizimmermann/phishcollector

phishcollector

PhishCollector è un framework di ricerca per raccogliere, analizzare e tracciare siti di phishing.

Vedi Repository

PhishCollector

PhishCollector è un framework di ricerca per raccogliere, analizzare e tracciare siti di phishing. È intenzionalmente progettato come punto di partenza: le regole di rilevamento, le firme tecnologiche, le wordlist e i plugin sono tutte strutture dati in chiaro che i ricercatori sono invitati a leggere, estendere e adattare al proprio panorama di minacce.

Invia un URL sospetto e PhishCollector:

  • Caricherà la pagina in un browser Chromium headless (JavaScript abilitato, User-Agent casuale, misure anti-bot stealth)
  • Catturerà l'HTML completamente renderizzato, uno screenshot a pagina intera e ogni richiesta di rete
  • Scaricherà tutte le risorse JavaScript e CSS collegate
  • Fingerprinting del sito: IP/ASN/geo, certificato TLS, WHOIS, stack tecnologico, hash del favicon (mmh3 compatibile con Shodan), analisi dei form, rilevamento di indicatori di phishing
  • Spider dei link scoperti, percorsi robots.txt e URL della sitemap (fuzzing opzionale con wordlist)
  • Interrogherà URLhaus e/o VirusTotal per la reputazione delle minacce
  • Salverà tutto in PostgreSQL per ricerche incrociate e analisi delle tendenze

Tutti i risultati sono accessibili tramite API REST, dashboard web e CLI.


Schermate

Dashboard

Collection detail


Avvio rapido

cp .env.example .env          # configure (see below)
docker compose up --build     # starts db + app + frontend
ServizioURL
GUIhttp://localhost:3000
Documentazione APIhttp://localhost:8000/docs
DBlocalhost:5432

Configurazione

Tutte le impostazioni sono variabili d'ambiente con il prefisso PHISH_. Copia .env.example in .env e modifica.

VariabilePredefinitoDescrizione
PHISH_DATABASE_URLpostgres://…DSN PostgreSQL
PHISH_API_KEY(vuoto)Se impostata, tutte le richieste richiedono X-API-Key: <valore>
PHISH_DATA_DIR/dataRadice di archiviazione per screenshot, HTML, asset
PHISH_BROWSER_TIMEOUT30000Timeout caricamento pagina in ms
PHISH_REQUEST_TIMEOUT15Timeout richiesta HTTP secondaria in secondi
PHISH_MAX_SPIDER_PAGES50Numero massimo di URL visitati dallo spider per job
PHISH_MAX_ASSET_SIZE10485760Dimensione massima file JS/CSS da memorizzare (byte)
PHISH_PROXY_URL(vuoto)Proxy in uscita — vedi sotto
PHISH_PROXY_SSL_VERIFYtrueImposta false per proxy intercettanti — vedi sotto
PHISH_URLHAUS_ENABLEDfalseAbilita controllo reputazione URLhaus
PHISH_VIRUSTOTAL_API_KEY(vuoto)Chiave API VirusTotal v3 (lascia vuoto per disabilitare)

Configurazione proxy

Instradare tutto il traffico in uscita attraverso un proxy mantiene nascosto l'IP dell'analista dal server di phishing.

Tor (anonimizzazione)

PHISH_PROXY_URL=socks5://127.0.0.1:9050
PHISH_PROXY_SSL_VERIFY=true   # Tor does not intercept TLS

Burp Suite (ispezione del traffico)

Burp agisce come intermediario TLS e presenta il proprio certificato CA per ogni connessione HTTPS. Senza disabilitare la verifica SSL, ogni richiesta HTTPS attraverso il proxy fallirà.

PHISH_PROXY_URL=http://127.0.0.1:8080
PHISH_PROXY_SSL_VERIFY=false  # required for Burp / intercepting proxies

Nota: PHISH_PROXY_SSL_VERIFY=false influisce solo sulle connessioni HTTPS in uscita effettuate dal backend Python (plugin, fingerprinter, spider). Il browser Playwright opera già con ignore_https_errors=true indipendentemente da questa impostazione.

Attenzione: Non impostare mai PHISH_PROXY_SSL_VERIFY=false senza un proxy configurato — disabiliterà la validazione dei certificati per tutte le chiamate API esterne (URLhaus, VirusTotal).


API REST

Percorso base: /api/v1

MetodoPercorsoDescrizione
POST/collectionsInvia un URL per la raccolta
GET/collectionsElenca tutte le raccolte
GET/collections/{id}Dettagli completi + fingerprint
GET/collections/{id}/screenshotPNG a pagina intera
GET/collections/{id}/htmlHTML catturato (scaricato come testo semplice)
GET/collections/{id}/requestsRegistro delle richieste di rete
GET/collections/{id}/spiderRisultati dello spider
GET/collections/{id}/pluginsRisultati del plugin di threat intelligence
POST/collections/{id}/plugins/refreshRiesegue i plugin (ad es. recupera risultato VT in sospeso)
POST/collections/{id}/rescanRaccoglie nuovamente lo stesso URL (l'originale viene conservato)
PATCH/collections/{id}Aggiorna tag e note
GET/collections/{id}/export?format=json|csvEsporta dati della raccolta
DELETE/collections/{id}Elimina una raccolta e tutti i suoi artefatti
GET/searchCerca fingerprint per IP, hash del favicon, tecnologia, paese, titolo

Documentazione interattiva completa su /docs (Swagger UI).

Invia una scansione

curl -X POST http://localhost:8000/api/v1/collections \
  -H 'Content-Type: application/json' \
  -d '{"url": "https://suspicious-site.example.com", "use_wordlist": true}'

CLI

# Install (inside container or local venv with requirements.txt)
pip install -e .

# Invia un URL e attendi il completamento
phishcollector collect https://target.example.com --wait

# Con fuzzing tramite wordlist
phishcollector collect https://target.example.com --wordlist --wait

# Elenca i job recenti
phishcollector list

# Visualizza dettaglio completo
phishcollector detail <job-id>

# Scarica screenshot
phishcollector screenshot <job-id> -o capture.png

# Cerca per stack tecnologico / hash favicon / paese
phishcollector search --tech WordPress --country RU
phishcollector search --favicon-hash -1234567890

Plugin di threat intelligence

URLhaus (abuse.ch)

Richiede una chiave di autenticazione gratuita da auth.abuse.ch.

PHISH_URLHAUS_ENABLED=true
PHISH_URLHAUS_API_KEY=<your-auth-key>

VirusTotal

Richiede una chiave API gratuita o a pagamento da virustotal.com.

PHISH_VIRUSTOTAL_API_KEY=<your-key>

Quando un URL non è ancora stato analizzato da VT, PhishCollector lo invia per la scansione e recupera automaticamente il risultato ogni 30 secondi fino a quando non viene risolto.

Aggiungere i propri plugin

Ogni plugin è un singolo file in phishcollector/plugins/ che espone una funzione asincrona:

# phishcollector/plugins/myplugin.py
from . import CheckResult

async def check(url: str, proxy_url=None, ssl_verify=True) -> CheckResult:
    # query your feed / API here
    return CheckResult(
        plugin_name="myplugin",
        status="malicious",   # malicious | suspicious | clean | unknown | error
        score=0.95,           # 0.0–1.0, or None
        result={"raw": ...},  # stored as JSONB, displayed in the GUI
    )

Quindi registralo in phishcollector/plugins/runner.py:

from .myplugin import check as myplugin_check
tasks.append(myplugin_check(url, proxy_url=settings.proxy_url, ssl_verify=settings.proxy_ssl_verify))

Non sono necessarie altre modifiche: il risultato viene automaticamente memorizzato, visualizzato nella dashboard e incluso nel punteggio di minaccia.


Personalizzazione degli indicatori di phishing

Scarica lo strumento