
Panel de inteligencia de amenazas 3D que visualiza infraestructura maliciosa desde fuentes OSINT como AbuseIPDB y OpenPhish, con un feed de amenazas en vivo, pings geográficos en un globo terráqueo y tarjetas de contexto de indicadores para conciencia situacional.
Panel de inteligencia de amenazas OSINT: un globo terráqueo 3D y un feed en vivo que muestran infraestructura maliciosa de fuentes públicas como AbuseIPDB y OpenPhish.
https://github.com/user-attachments/assets/e4f6a4fa-6ff4-4ad1-8e5c-5b50ce6ad722
DarkGrid visualiza infraestructura sospechosa de internet a nivel global:
El enfoque es la conciencia situacional de la infraestructura, no de individuos.
backend/ – API OSINT FastAPI + SQLite
/api/indicators/latest – indicadores más recientes para el feed/api/map – grupos por país para el globo terráqueofrontend/ – Aplicación Next.js 16 (interfaz DarkGrid)
src/app/page.tsx – diseño principal del panelsrc/components/ThreatGlobeViewer.tsx – globo terráqueo 3Dsrc/hooks/useThreatDataPolling.ts – consulta periódica a la API de amenazasdocker-compose.yml – pila local (backend + frontend)Crear .env en este directorio (misma carpeta que docker-compose.yml):
copy .env.example .env
Editar .env y establecer:
ABUSEIPDB_API_KEY – obtener una clave gratuita de https://www.abuseipdb.com/.Iniciar la pila:
docker-compose up -d
O ejecutar en primer plano para ver registros:
docker-compose up
Abrir la interfaz y la API:
http://localhost:3000http://localhost:8000http://localhost:8000/healthBase de datos: SQLite, creada automáticamente al iniciar el backend por primera vez.
backend_data en /app/data/threat_intel.db.backend/data/threat_intel.db.Recolectores (se ejecutan al inicio y cada 15 minutos):
AbuseIPDB (requiere ABUSEIPDB_API_KEY):
type=ip, source=abuseipdb con geo.country.OpenPhish (no requiere clave):
type=url, source=openphish (sin geo).Solución de problemas: globo/feed vacío:
Requisitos:
cd backend
python -m venv .venv
.venv\Scripts\activate # on Windows
pip install -r requirements.txt
python main.py # serves on http://localhost:8000
Asegúrate de que tu .env raíz tenga ABUSEIPDB_API_KEY para la ingesta.
cd frontend
npm install
Crear frontend/.env.local (solo para desarrollo local):
NEXT_PUBLIC_THREAT_API_URL=http://localhost:8000
Luego ejecutar:
npm run dev
Abrir http://localhost:3000.
Este proyecto es un trabajo en progreso y representa un MVP preliminar del panel de inteligencia de amenazas DarkGrid. Espera cambios disruptivos a medida que se refinan el backend, los recolectores y la interfaz.
Las etapas futuras planificadas incluyen:
Reconstruir tras cambios en el código:
docker-compose up -d --build
.env y asegurarse de que ABUSEIPDB_API_KEY esté configurada y sea válida.docker-compose up -d.