Skip to content

About

Plataforma OSINT open source para investigaciones éticas en Argentina y Latinoamérica

Topics

Resources

Contributing

Security policy

Stars

11 stars

Watchers

0 watching

Forks

Repository files navigation

OSINTArgy - Open Source Intelligence para Argentina y Latinoamérica

Reportar un issue · Contribuir

License MIT React Node.js MongoDB

Etiquetas: osint argentina latam open-source-intelligence react nodejs

OSINTArgy

OSINTArgy es una plataforma open source para investigaciones OSINT éticas, con foco en Argentina y Latinoamérica. Reúne herramientas, dorks, recursos categorizados y módulos de automatización en una interfaz visual pensada para analistas, periodistas, investigadores, equipos de seguridad y personas que necesitan trabajar con fuentes abiertas de forma ordenada.

La descripción corta del proyecto es: Plataforma OSINT open source para investigaciones éticas en Argentina y Latinoamérica.

Características

  • Catálogo curado de herramientas OSINT con categorías, tags, dificultad, región e indicadores de uso.
  • Bienvenida animada de cinco segundos con galaxia de estrellas y marca OSINTArgy, opción de saltar y movimiento reducido.
  • Galaxia con constelaciones animadas, órbitas suaves, estrellas titilantes y pulsos en las conexiones; etiquetas fijas, pausa manual y respeto por movimiento reducido. Incluye foco por categoría, zoom, desplazamiento y navegación por teclado.
  • Catálogo de 505 recursos, incluidos 84 enlaces a repositorios, con búsqueda sin acentos y filtros combinables por región, tipo, costo, registro, dificultad, idioma, estado y repositorio.
  • Apartado Modelos IA para OSINT (/ai-models): ocho modelos de descarga gratuita con enlace directo a Hugging Face, filtros por tarea y entrada, comparación de hasta tres opciones, fichas descargables y creación de casos con checklist de evaluación. La ejecución de los modelos se realiza en el entorno del investigador.
  • Generador de dorks para Google, Yandex, Bing y DuckDuckGo.
  • Búsqueda de usernames en múltiples plataformas.
  • Módulos para OSINT de emails, análisis de archivos y reconocimiento de infraestructura.
  • Tablero local de investigación con entidades, relaciones, ubicaciones OpenStreetMap, autoguardado e intercambio JSON.
  • Cuatro academias: fundamentos OSINT, infraestructura defensiva, investigación corporativa y verificación de evidencia; 18 módulos con progreso, reanudación y aprobación del 80%.
  • Certificados descargables e imprimibles, evaluación final y datos para agregar la credencial a LinkedIn. Modo local disponible; emisión pública firmada y registro persistente preparados.
  • API REST con Express, MongoDB, autenticación JWT, rate limiting, CORS y logging estructurado.
  • Frontend React + Vite con rutas SPA, servicios API y componentes modulares.

Uso Responsable

OSINTArgy está pensado para investigación sobre fuentes públicas, auditoría defensiva, aprendizaje y documentación. Usalo solo con autorización, respetando leyes aplicables, términos de servicio y privacidad de terceros. El proyecto no promueve intrusión, abuso, acoso, doxxing ni acceso no autorizado.

Stack

Capa Tecnología
Frontend React 18, Vite, React Router, D3, Framer Motion, Lucide React
Backend Node.js, Express, Mongoose, JWT, Helmet, Winston
Base de datos MongoDB
DevOps Docker Compose, Nginx, npm scripts

Requisitos

  • Node.js 20 o superior.
  • npm 10 o superior.
  • MongoDB 5 o superior para desarrollo local.
  • Docker y Docker Compose si preferís levantar el entorno containerizado.

Instalación Local

git clone https://github.com/IAZARA/OSINTArgy_v01.git
cd OSINTArgy_v01
npm run install:all

Configurá variables de entorno desde los ejemplos:

cp backend/.env.example backend/.env
cp frontend/.env.example frontend/.env

Levantá frontend y backend con el script local:

npm start

URLs por defecto:

Servicio URL
Frontend http://localhost:5173
Backend API http://localhost:3001/api
Health check http://localhost:3001/api/health

También podés correr cada servicio por separado:

cd backend
npm run dev
cd frontend
npm run dev

Docker

Entorno de desarrollo:

docker compose up --build

Entorno de producción:

cp .env.production.example .env.production
docker compose --env-file .env.production -f docker-compose.prod.yml up -d --build

En producción, reemplazá MONGO_PASSWORD y JWT_SECRET por valores fuertes antes de levantar los servicios. También configurá FRONTEND_URL con el origen real autorizado para CORS.

Scripts

Comando Descripción
npm start Inicia frontend y backend con gestión local de puertos.
npm run dev Inicia frontend y backend en paralelo.
npm run build Genera el build del frontend.
npm run install:all Instala dependencias de raíz, frontend y backend.
npm run sync:data Regenera frontend/src/data/tools.json desde los JSON por categoría.
npm run validate:data Valida estructura, IDs, categorías y fallback del catálogo.
npm run check:links Revisa URLs externas del catálogo y puede generar reportes JSON/Markdown.
npm run test Ejecuta smoke tests de scripts, frontend y backend.
cd frontend && npm run lint Ejecuta ESLint sobre el frontend.
npm run clean Detiene procesos locales de Vite, Nodemon y Node asociados al proyecto.

Estructura

OSINTArgy/
├── backend/                 # API Express, modelos, rutas, controladores y scripts de datos
├── frontend/                # Aplicación React + Vite
├── .github/                 # CI, CodeQL, Dependabot y plantillas
├── docs/                    # Documentación técnica y catálogo
├── docs/assets/             # Branding y recursos visuales del repositorio
├── scripts/                 # Scripts auxiliares versionados
├── docker-compose.yml       # Entorno Docker de desarrollo
├── docker-compose.prod.yml  # Entorno Docker de producción
└── README.md

No se versionan builds, logs, bases locales, .env, carpetas MCP ni configuraciones personales. Esos artefactos están cubiertos por .gitignore para mantener el historial limpio y reproducible.

Módulos Principales

Módulo Descripción
Galaxy View Exploración visual de categorías y herramientas OSINT.
Dork Generator Plantillas y generación de búsquedas avanzadas.
Email OSINT Validación y enriquecimiento inicial de correos.
Username OSINT Búsqueda de presencia de usuarios en plataformas públicas.
File Analysis Extracción de metadatos y análisis de archivos.
Infrastructure Scanner Reconocimiento defensivo de dominios, IPs y servicios.
OSINT Academy Formación interactiva en fundamentos, infraestructura defensiva e investigación corporativa, con lecciones, audio y laboratorios.

API

Endpoints principales:

GET    /api/certificates/assessment/:courseId
POST   /api/certificates/issue
GET    /api/certificates/:certificateId
GET    /api/health
GET    /api/tools
GET    /api/tools/:id
GET    /api/tools/search
POST   /api/tools/:id/use
POST   /api/auth/register
POST   /api/auth/login
GET    /api/users/favorites
POST   /api/users/favorites/:toolId
DELETE /api/users/favorites/:toolId
GET    /api/search/tools
GET    /api/search/suggestions
POST   /api/dorks/generate

Academia y certificados

Entrá a /academy para elegir un trayecto, buscar por temas, filtrar por nivel o estado y retomar la última lección. Cada módulo exige recorrer su contenido y aprobar la evaluación con al menos 80%. El progreso anterior se conserva como lectura revisada: debe reevaluarse para obtener una credencial.

En /academy/certificates, una vez aprobadas las lecciones del trayecto, podés rendir una evaluación final de cinco preguntas. La constancia local se guarda en el navegador, se descarga como HTML imprimible y permite guardar un PDF desde el diálogo de impresión. El panel de LinkedIn abre el formulario oficial y ofrece cada dato para copiar; no publica en la cuenta automáticamente.

La emisión pública opcional corrige la evaluación en el backend, guarda la credencial en MongoDB y comprueba su firma y revocación en /certificates/:certificateId, sin exigir acceso a la academia. Es formación no reglada y el nombre es declarado por el estudiante. Los requisitos, la configuración y los límites se detallan en docs/certificados-despliegue.md.

Las 32 fuentes agregadas y sus controles están registrados en docs/catalogo-fuentes-2026-09.md.

Datos y Herramientas

Las herramientas se mantienen como JSON en frontend/src/data/tools/ y datos backend en backend/src/data/. Para agregar una herramienta, usá una estructura consistente:

{
  "id": "herramienta-unica",
  "name": "Nombre de la herramienta",
  "description": "Descripción breve",
  "url": "https://ejemplo.com",
  "category": "categoria-id",
  "tags": ["osint", "argentina"],
  "type": "web",
  "region": "argentina",
  "language": "es",
  "difficulty_level": "beginner",
  "is_free": true,
  "requires_registration": false
}

Calidad del Repositorio

  • Mantener secretos y configuraciones locales fuera de Git.
  • No commitear frontend/dist/, logs/, data/*.db, node_modules/, .claude/ ni mcp-*.
  • Validar el catálogo con npm run validate:data antes de publicar cambios.
  • Sincronizar el fallback con npm run sync:data cuando cambie el catálogo.
  • Revisar links externos con npm run check:links -- --report-only --markdown link-check-report.md.
  • Documentar cambios funcionales en el README o en archivos dentro de docs/.
  • Agregar tests cuando el cambio toque API, autenticación, parsing, carga de datos o flujos de usuario.
  • Validar con npm run build antes de abrir un PR cuando se modifique frontend.
  • La documentación de arquitectura está en docs/arquitectura.md.

Seguridad

  • JWT_SECRET, MONGODB_URI y FRONTEND_URL son obligatorios en producción.
  • CORS solo permite orígenes configurados por entorno; localhost queda reservado para desarrollo.
  • Las subidas de archivos validan MIME, firma binaria y tamaño máximo.
  • El scanner de infraestructura valida dominios, bloquea entradas locales/IP y limita redirecciones.
  • El contenido HTML del frontend se sanitiza antes de renderizarse.
  • Ejecutar npm audit --omit=dev en raíz, backend/ y frontend/ antes de publicar cambios.
  • Ver SECURITY.md para reporte responsable y alcance.

Catálogo

La ampliación de fuentes y los criterios del apartado de IA están documentados en docs/modelos-ia-y-fuentes.md.

El formato editorial del catálogo está documentado en docs/catalogo.md. Usá npm run sync:data para actualizar el fallback del frontend y npm run validate:data para verificar estructura, IDs únicos, categorías, subcategorías, tipos, indicadores, campos obligatorios y sincronización.

Automatización

  • CI valida catálogo, fallback, tests, build y audits en cada push o PR a main.
  • CodeQL analiza JavaScript/TypeScript de forma automática.
  • Dependabot revisa npm, GitHub Actions y Docker semanalmente.
  • Link Check corre semanalmente o manualmente en modo reporte para detectar URLs caídas sin bloquear cambios por fallos transitorios externos.

Roadmap

  • Mejorar cobertura de tests en API y componentes críticos.
  • Normalizar datos de herramientas y categorías.
  • Agregar documentación técnica de endpoints.
  • Incorporar guías de contribución y plantillas de issues.
  • Ampliar recursos OSINT específicos para Argentina y LATAM.

Contribuir

  1. Hacé un fork del repositorio.
  2. Creá una rama descriptiva: git checkout -b feature/nombre-del-cambio.
  3. Realizá cambios chicos y revisables.
  4. Revisá CONTRIBUTING.md.
  5. Ejecutá build o tests según corresponda.
  6. Abrí un Pull Request con contexto, capturas si aplica y pasos de verificación.

Licencia

Este proyecto se distribuye bajo licencia MIT. Ver LICENSE.

Autor

Ivan Agustin Zarate


OSINTArgy busca aportar herramientas abiertas, trazables y útiles para la comunidad OSINT hispanohablante.

About

Plataforma OSINT open source para investigaciones éticas en Argentina y Latinoamérica

Topics

Resources

Contributing

Security policy

Stars

11 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages