2 points par GN⁺ 2025-05-20 | 1 commentaires | Partager sur WhatsApp
  • Le service de vérification de fuites de données Have I Been Pwned a été entièrement repensé
  • Avec un nouveau design, les fonctionnalités des principales pages web ont été largement modifiées et améliorées
  • La fonction de recherche devient plus intuitive, tandis que la méthode de vérification des comptes et les explications sur différents cas de violation de données ont été renforcées
  • Diverses nouvelles fonctionnalités et améliorations ont été ajoutées, comme le tableau de bord utilisateur, la recherche de domaine et la documentation API
  • Les performances web et la sécurité reposent sur une infrastructure cloud moderne, offrant une expérience utilisateur rapide et sûre

Présentation et contexte

  • Have I Been Pwned (ci-après HIBP) 2.0 est désormais disponible dans une version entièrement renouvelée après une longue période de développement
  • Après un premier commit en février 2023, un soft launch en mars 2024 et un passage en open source, le site a été rouvert avec une reconstruction complète et une nouvelle identité de marque
  • L’architecture et les fonctionnalités de l’ensemble du site ont été repensées, avec de nouvelles fonctions ainsi que l’ouverture d’une boutique de produits dérivés

Fonction de recherche

  • La grande barre de recherche en page d’accueil, fonctionnalité emblématique de HIBP, a été améliorée avec une expérience plus intuitive et une présentation plus fraîche (animation de confettis)
  • Afin de ne pas alourdir l’expérience utilisateur, l’approche évite une atmosphère trop lourde ou négative et se concentre sur la fourniture d’informations pratiques fondées sur les faits
  • La recherche par nom d’utilisateur et par numéro de téléphone a été retirée du site web (mais reste inchangée via l’API)
    • La recherche basée sur l’adresse e-mail est mieux adaptée en matière de parsing, d’alertes et de cohérence du service
    • Les numéros de téléphone et noms d’utilisateur impliquent une charge de traitement élevée et sont en pratique très peu utilisés, d’où leur suppression pour réduire la confusion

Pages de cas de violation de données

  • Une page de détail dédiée est désormais proposée pour chaque violation de données
  • Avec une mise en page plus intuitive et plus agréable qu’auparavant, elle présente la situation, les mesures à prendre et des conseils concrets et actionnables adaptés au contexte
  • Des ajouts sont prévus en coopération avec d’autres organismes (par ex. le NCSC), notamment des informations adaptées selon les régions
  • À l’avenir, des détails supplémentaires seront ajoutés, comme la prise en charge de la 2FA, des passkeys et des guides personnalisés

Tableau de bord

  • Plusieurs fonctions existantes (consultation des violations sensibles, gestion des domaines, gestion des abonnements, etc.) sont désormais réunies dans un tableau de bord unifié
  • Le tableau de bord est accessible via une authentification par e-mail, et de nouveaux modes d’authentification comme les passkeys devraient être ajoutés par la suite
  • Il offre aussi une base évolutive pour de futures extensions, comme des alertes pour les comptes familiaux

Fonction de recherche de domaine

  • La fonction de vérification/recherche de domaine a été entièrement repensée, avec une interface plus propre et la prise en charge de divers filtres (par ex. n’afficher que les fuites les plus récentes)
  • Construite comme une véritable single-page app (SPA), elle fournit rapidement les résultats au format JSON via l’API
  • Le processus de vérification de propriété du domaine a également été simplifié
  • Les méthodes d’authentification autres que l’e-mail feront l’objet d’améliorations séparées

API

  • Dans cette mise à jour, aucun changement ni aucune interruption de l’API
  • Une documentation API basée sur OpenAPI avec l’outil Scalar est en préparation, mais pour l’instant la documentation existante est conservée tout en étant harmonisée avec le nouveau style
  • Une transition vers une documentation moderne basée sur Scalar est prévue ultérieurement

Produits dérivés et autocollants

  • La boutique officielle de produits dérivés HIBP est ouverte, avec le lancement de la vente d’articles comme des t-shirts (basée sur Teespring, sans marge)
  • Les autocollants continuent d’être proposés via la boutique Sticker Mule, et les visuels sont open source et librement réutilisables

Technologies et infrastructure

  • Le backend du site repose sur Microsoft Azure, avec App Service, Functions, Hyperscale SQL, Storage, etc.
  • Les principales applications web sont développées en C#, .NET 9.0 et ASP.NET MVC (.NET Core)
  • Cloudflare est utilisé de manière essentielle pour le WAF, le caching, Turnstile (anti-bot), le stockage R2, etc.
  • Côté frontend, une interface moderne a été construite à partir des dernières versions de Bootstrap, SASS et TypeScript
  • Grâce aux contributions de membres clés comme le développeur islandais Ingiber, le site atteint un haut niveau de finition et une interface soignée
  • Le poids des pages web et le nombre de requêtes ont été réduits d’environ 28 % et 31 % respectivement, pour une optimisation plus efficace qu’il y a 11 ans
  • Les éléments inutiles comme le tracking et les données publicitaires sont totalement exclus, avec une forte priorité donnée à la vie privée des utilisateurs

Utilisation de l’IA

  • Lors de cette refonte du site, Chat GPT a été activement utilisé pour résoudre divers problèmes de développement, comme le CSS, les recommandations d’icônes, la configuration de Cloudflare ou certaines particularités de .NET Core
  • Grâce à la rapidité des suggestions de l’IA et à l’automatisation du code, l’équipe a constaté un fort gain de productivité
  • Son utilité et sa précision ont été confirmées pour les migrations rapides et l’automatisation de nombreuses tâches

Parcours de développement et conclusion

  • De nombreux travaux peu visibles, comme la mise à jour des documents juridiques, ont nécessité beaucoup de temps et de coûts
  • Avant et après le lancement, plusieurs corrections urgentes et publications répétées ont permis de résoudre rapidement les problèmes
  • Sans perdre de vue l’esprit d’origine, le service a réussi son redémarrage en préservant son expertise, son extensibilité et son confort d’utilisation
  • HIBP est le fruit d’une passion à laquelle un quart de vie a été consacré depuis 2013, et cette version 2.0 devrait marquer un nouveau départ comme service communautaire

1 commentaires

 
GN⁺ 2025-05-20
Avis de Hacker News
  • Idée partagée : nouer un partenariat avec un cabinet d’avocats, publier un appel à l’action pour lancer des class actions à chaque fuite de données due à la négligence (donc, en pratique, presque toutes), puis s’appuyer sur les services bancaires de paiement pour verser directement les indemnités à des millions de personnes ; cela ferait de quelqu’un un héros des temps modernes. Importance soulignée de collaborer avec des avocats capables d’obtenir de vraies décisions douloureuses pour les entreprises fautives ; avertissement aussi que de simples petits règlements amiables risquent surtout de perpétuer une gestion irresponsable. Mention, à titre optionnel, de la possibilité de vendre à des sociétés d’investissement des données sur les poursuites imminentes ; souhait, à terme, de voir s’installer un climat social où la seule annonce d’une fuite de données ferait naturellement chuter l’action de l’entreprise concernée.
    • Souhait exprimé : s’il était possible de faire automatiquement un petit don à une bonne cause à chaque indemnisation, cela donnerait encore plus envie de participer à une class action.
    • À propos de ce service bancaire, plaisanterie inquiète sur le délai avant que les données stockées dans un tel système ne finissent elles aussi par fuiter.
    • Crainte qu’un tel système produise en fait l’effet inverse : alors qu’il est déjà difficile pour les entreprises de divulguer une fuite, une structure de ce type ne ferait qu’augmenter le risque et les inciter davantage à cacher l’incident ; opinion selon laquelle il vaut mieux savoir que ses données ont fuité pour pouvoir changer son mot de passe.
    • Expression d’un mécontentement persistant en attendant toujours d’être indemnisé par Blue Shield après la vente de données personnelles à Google, tout en disant être preneur d’un tel service.
  • Étonnement de voir qu’au cours de la dernière décennie à peine, un site gigantesque comme LinkedIn stockait encore des mots de passe sans sel ; incompréhension sur la manière dont une telle erreur reste possible aujourd’hui.
    • Explication du fait que ce genre d’incident peut arriver bien plus facilement qu’on ne le pense : vu depuis une couche middleware intermédiaire, un champ password dans des données JSON peut n’être perçu que comme un champ parmi d’autres, et si une API ou un système de logs enregistre l’intégralité du corps de la requête, le problème devient bien réel. Stocker directement des mots de passe non salés dans un magasin de mots de passe serait rare, mais un oubli similaire peut se produire, par exemple, sur la passerelle API d’une application Android si un flux du type « mot de passe oublié » n’est pas identifié comme contenant des données sensibles ; retour d’expérience à l’appui.
    • Remarque humoristique selon laquelle ce genre d’erreur survient parce qu’on ne pose pas assez de problèmes Leetcode Hard en entretien d’ingénierie.
    • On parle souvent de l’AI Slop, mais il est rappelé que le problème de l’Outsourced Slop existe lui aussi depuis longtemps et de manière sérieuse. D’après l’expérience partagée, il est très probable que les productions de développeurs externalisés aient été une cause majeure chez LinkedIn ; seul un manager solide et compétent, capable de fixer des standards de qualité et de les vérifier, permettrait d’éviter des produits qui ont l’air corrects en surface mais sont fragiles à l’intérieur.
    • Suggestion que ce type d’erreur provient aussi de vieux systèmes hérités, comme d’anciens mainframes, laissés à l’abandon faute de temps ou de budget pour les maintenir ou les migrer. Dans les grandes entreprises, l’inertie de ces systèmes critiques devient telle qu’une interruption d’à peine une heure est déjà perçue comme une « perte » de plusieurs millions, ce qui rend toute remise à niveau encore plus impossible ; critique d’un problème structurel.
  • Beaucoup de gens utilisent régulièrement Have I Been Pwned et pensent que l’intégration avec 1Password est l’une des meilleures options. La promotion avec 1Password est citée comme une excellente collaboration ; suggestion de rendre le texte du bandeau plus visible, avec une formulation du type « fortement recommandé ». Il est rappelé que la majorité des piratages de comptes sociaux vient de la réutilisation des mots de passe, et qu’à ce titre, l’éducation à de meilleures pratiques ainsi que l’orientation vers un gestionnaire de mots de passe sont très positives. Félicitations pour la refonte, avec mention de plus de 20 cas concrets aidés à résoudre au cours de l’année écoulée.
  • Appréciation d’une fonctionnalité aussi impressionnante qu’angoissante : afficher tout l’historique des fuites de données sous forme de défilement vertical avec logos et textes de présentation.
    • Sentiment d’impuissance face aux fuites de données, avec l’impression qu’en dehors du gel du crédit il n’y a presque aucune mesure concrète à prendre.
  • Curiosité sur le détenteur du meilleur « palmarès » en matière de fuites : partage d’une expérience personnelle selon laquelle l’adresse email principale est apparue dans 40 fuites jusqu’ici, la plus ancienne datant de juin 2011 (HackForums, totalement oublié), et la plus récente de septembre 2024 (FrenchCitizens, sans aucun lien avec la France).
    • Réponse indiquant que quelqu’un a battu ce record d’une seule fuite.
    • Partage du chiffre étonnant de 322 fuites pour l’adresse john@yahoo.com.
  • Astuce donnée : pour davantage de confidentialité, le service propose une fonction d’opt-out permettant de masquer les résultats de recherche associés à son adresse email.
  • Comme plusieurs alias email sont utilisés, souhait exprimé d’avoir une fonction permettant de lancer une recherche d’un seul coup au niveau du domaine plutôt que de devoir vérifier chaque adresse une par une.
    • Réponse expliquant qu’en passant par « The Domain Search Feature », il est possible de vérifier la propriété du domaine et de consulter tous les résultats d’un coup.
  • Commentaire disant que le site est vraiment excellent, avec l’espoir que les pouvoirs publics prennent ce sujet bien plus au sérieux. L’usurpation d’identité, le détournement de comptes et bien d’autres problèmes commencent au fond par des fuites de données, et aujourd’hui le piratage d’un compte numérique est présenté comme une catastrophe plus grave qu’un cambriolage réel. En cas d’intrusion physique, il existe clairement des numéros d’urgence, des signalements, un suivi ; en cas d’atteinte numérique, il n’y a ni interlocuteur clair ni véritable processus de résolution, d’où un appel à faire évoluer la réponse collective.
  • Évaluation très positive du redesign, avec l’idée qu’il est toujours agréable de suivre les mises à jour de Troy, même si cela a parfois quelque chose d’un humour noir. Impression toutefois que la timeline est triée des fuites les plus anciennes aux plus récentes, alors que les dates affichées correspondent non pas au moment de la fuite, mais à celui de sa divulgation, ce qui crée une confusion. Proposition : faire reposer à la fois le tri et l’affichage sur la « date de divulgation », tout en indiquant dans chaque carte la date réelle de la fuite dans un format standard, pour plus de clarté.