Seguridad egosearch:
- Sanitizar query: elimina null bytes y caracteres de control (<x00-x1F)
- Limitar longitud a 150 chars (antes 300)
- Limitar tamaño de respuesta SearXNG a 500KB (anti memory exhaustion)
- Validar URLs de resultados: solo http/https, descarta el resto
- Acotar title/snippet a 300/500 chars antes de procesar
Infraestructura (pendiente de aplicar con sudo):
- /tmp/resetea-api.service: systemd service para el backend Node
- /tmp/resetea-nginx.conf: nginx con proxy /api/ -> 127.0.0.1:8787
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Backend:
- Nuevo route GET /api/egosearch con rate limit (8 req/min)
- Usa Google Custom Search API si GOOGLE_API_KEY+CSE_ID configurados
- Fallback a instancias públicas SearXNG con JSON API (sin API key)
- Devuelve top 5: title, url, snippet, domain, engine
Frontend egosurfing.html:
- Barra de búsqueda prominente con 5 modos (nombre/email/usuario/teléfono/libre)
- Resultados en cards: dominio, título, snippet, acciones (ver, RTBF, GDPR)
- RTBF link contextual según el dominio del resultado
- Google dorking rápido: plantillas con 1 clic que se lanzan al buscador
- Herramientas complementarias: HIBP, TinEye, WhatsMyName, formularios RTBF
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>