
Dashboard di threat intelligence 3D che visualizza le infrastrutture dannose da fonti OSINT come AbuseIPDB e OpenPhish, con un feed di minacce in tempo reale, ping geografici sul globo e schede di contesto degli indicatori per la consapevolezza situazionale.
Dashboard OSINT di threat intelligence: un globo 3D e un feed in tempo reale che mostrano infrastrutture dannose da fonti pubbliche come AbuseIPDB e OpenPhish.
https://github.com/user-attachments/assets/e4f6a4fa-6ff4-4ad1-8e5c-5b50ce6ad722
DarkGrid visualizza le infrastrutture internet sospette a livello globale:
L'attenzione è sulla consapevolezza situazionale delle infrastrutture, non sugli individui.
backend/ – API OSINT FastAPI + SQLite
/api/indicators/latest – indicatori più recenti per il feed/api/map – bucket per paese per il globofrontend/ – App Next.js 16 (interfaccia DarkGrid)
src/app/page.tsx – layout principale del dashboardsrc/components/ThreatGlobeViewer.tsx – globo 3Dsrc/hooks/useThreatDataPolling.ts – polling dell'API delle minaccedocker-compose.yml – stack locale (backend + frontend)Crea un file .env in questa directory (stessa cartella di docker-compose.yml):
copy .env.example .env
Modifica il file .env e imposta:
ABUSEIPDB_API_KEY – ottieni una chiave gratuita da https://www.abuseipdb.com/.Avvia lo stack:
docker-compose up -d
Oppure esegui in primo piano per vedere i log:
docker-compose up
Apri l'interfaccia e l'API:
http://localhost:3000http://localhost:8000http://localhost:8000/healthDatabase: SQLite, creato automaticamente al primo avvio del backend.
backend_data in /app/data/threat_intel.db.backend/data/threat_intel.db.Collector (eseguiti all'avvio e ogni 15 minuti):
AbuseIPDB (richiede ABUSEIPDB_API_KEY):
type=ip, source=abuseipdb e geo.country.OpenPhish (nessuna chiave richiesta):
type=url, source=openphish (senza geo).Risoluzione dei problemi: globo o feed vuoto:
Requisiti:
cd backend
python -m venv .venv
.venv\Scripts\activate # su Windows
pip install -r requirements.txt
python main.py # serve su http://localhost:8000
Assicurati che il tuo file .env principale contenga ABUSEIPDB_API_KEY per l'ingestione.
cd frontend
npm install
Crea frontend/.env.local (solo per sviluppo locale):
NEXT_PUBLIC_THREAT_API_URL=http://localhost:8000
Poi esegui:
npm run dev
Apri http://localhost:3000.
Questo progetto è in fase di sviluppo e rappresenta un MVP grezzo del dashboard di threat intelligence DarkGrid. Sono previste modifiche sostanziali mentre il backend, i collector e l'interfaccia vengono perfezionati.
Le fasi future pianificate includono:
Ricostruisci dopo modifiche al codice:
docker-compose up -d --build
.env e assicurati che ABUSEIPDB_API_KEY sia impostata e valida.docker-compose up -d.