- El servicio de verificación de filtraciones de datos Have I Been Pwned fue renovado por completo
- Junto con el nuevo diseño, las principales funciones de las páginas web cambiaron y mejoraron de forma importante
- La función de búsqueda ahora es más intuitiva, y se reforzó la orientación sobre cómo verificar cuentas y sobre distintos casos de brechas de datos
- Se añadieron varias funciones nuevas y mejoradas, como panel de usuario, búsqueda de dominios y documentación de la API
- El rendimiento web y la seguridad se implementaron sobre una infraestructura moderna en la nube, ofreciendo una experiencia rápida y segura para el usuario
Introducción y contexto
- Have I Been Pwned (en adelante, HIBP) 2.0 se presentó completamente renovado tras un largo período de desarrollo
- El primer commit fue en febrero de 2023, y tras un soft launch en marzo de 2024 y el proceso de open source, el sitio abrió con una reconstrucción total y una nueva identidad de marca
- Se rediseñaron por completo la estructura y las funciones del sitio, y junto con nuevas características también se abrió una tienda de merchandising
Función de búsqueda
- El buscador principal, la función más representativa de HIBP, se mejoró para ser más intuitivo y con una presentación más fresca (animación de confeti)
- Para que la experiencia de usuario no se sintiera pesada, se evitó una atmósfera demasiado negativa y se puso el foco en ofrecer al usuario información práctica basada en hechos
- La búsqueda por nombre de usuario y número telefónico fue eliminada del sitio web (aunque en la API se mantiene como antes)
- La búsqueda basada en direcciones de correo electrónico es más adecuada en términos de parsing, alertas y consistencia del servicio
- Se decidió excluir números telefónicos y nombres de usuario para reducir confusión, ya que implican una alta carga de procesamiento de datos y casi no se usan en la práctica
Página de casos de brechas de datos
- Ahora cada incidente de brecha o filtración cuenta con una página dedicada de detalle
- Con un diseño más intuitivo y agradable que antes, se ofrece orientación concreta y accionable sobre el impacto y cómo responder
- Se planea añadir más información, como datos adaptados por región, en colaboración con otras instituciones (por ejemplo, NCSC)
- Más adelante se incorporarán detalles como soporte para 2FA, passkeys y guías personalizadas para usuarios
Panel
- Varias funciones existentes (verificación de brechas sensibles, gestión de dominios, gestión de suscripciones, etc.) se unificaron en un panel integrado
- El panel se accede mediante verificación por correo electrónico, y más adelante también se agregarán nuevos métodos de autenticación como passkeys
- También abre la posibilidad de evolucionar hacia una plataforma ampliable con funciones futuras como alertas para cuentas familiares
Función de búsqueda de dominios
- La función de verificación y búsqueda de dominios fue rediseñada por completo, con una UI más limpia y soporte para varios filtros (por ejemplo, ver solo filtraciones recientes)
- Con una estructura completamente de aplicación de página única (SPA), los resultados de búsqueda se entregan rápidamente en JSON a través de la API
- El proceso de verificación de propiedad del dominio también se simplificó desde cero
- Se prevén mejoras aparte para métodos de autenticación distintos del correo electrónico
API
- En esta actualización no hubo absolutamente ningún cambio ni interrupción en la API en sí
- Para la documentación de la API se prepara la adopción de la herramienta Scalar basada en OpenAPI, pero por ahora se mantiene la documentación existente con un nuevo estilo unificado
- Más adelante se migrará a documentación moderna basada en Scalar
Merchandising y stickers
- Se abrió oficialmente la tienda de productos de marca de HIBP, comenzando con la venta de camisetas y otros artículos (basada en Teespring, sin margen de ganancia)
- Los stickers siguen disponibles en la tienda de Sticker Mule, y el arte se puede usar libremente porque es open source
Tecnología e infraestructura
- El backend del sitio está basado en Microsoft Azure, usando App Service, Functions, Hyperscale SQL, Storage y más
- La aplicación web principal está escrita con C# y .NET 9.0, usando ASP.NET MVC (.NET Core)
- Cloudflare se aprovecha ampliamente para WAF, caché, Turnstile (anti-bot), almacenamiento R2 y más
- En el frontend se implementó una interfaz moderna sobre Bootstrap reciente, SASS y TypeScript
- Gracias a las contribuciones de miembros clave como el desarrollador islandés Ingiber, se logró un alto nivel de acabado y una UI atractiva
- Se redujo aproximadamente en 28% el peso de las páginas web y en 31% la cantidad de solicitudes, logrando una optimización más efectiva que hace 11 años
- Se eliminaron por completo elementos innecesarios como tracking y datos publicitarios, priorizando la privacidad del usuario
Uso de IA
- Durante la reconstrucción del sitio se utilizó activamente Chat GPT para resolver diversos problemas de desarrollo, como CSS, recomendaciones de íconos, configuración de Cloudflare y particularidades de .NET Core
- Con las sugerencias rápidas de la IA y la automatización de código, se experimentó una gran mejora en productividad
- También se comprobó una alta precisión y utilidad en migraciones rápidas y automatización de tareas
Recorrido de desarrollo y conclusión
- Diversas tareas poco visibles, como la actualización de documentos legales, requirieron mucho tiempo y costo
- Antes y después del lanzamiento se realizaron varias correcciones urgentes y lanzamientos iterativos para resolver problemas con rapidez
- Sin perder la esencia original, se completó este relanzamiento manteniendo la especialización, escalabilidad y comodidad del servicio
- HIBP es el resultado de una pasión a la que se ha dedicado una cuarta parte de la vida desde 2013, y con esta versión 2.0 se espera un nuevo impulso como servicio para la comunidad
1 comentarios
Opiniones de Hacker News
passworddentro de un JSON puede verse simplemente como otro campo más, y si una API o un sistema de logging guarda el cuerpo completo de la solicitud, el problema puede ocurrir de verdad. Guardar contraseñas sin sal directamente en un almacén de contraseñas sería raro, pero comparten la experiencia de que algo parecido puede suceder si, por ejemplo, en el gateway de API de una app Android se omite que un flujo como “recuperar contraseña” contiene información sensible.john@yahoo.comapareció en nada menos que 322 filtraciones.