Le service HaveIBeenPwned

Troy Hunt utilise Cloudflare pour protéger son site web et son API en aidant ainsi les utilisateurs à rester en ligne en toute sécurité.

Troy Hunt est directeur régional chez Microsoft et expert indépendant en sécurité Internet. Il est bien connu pour son blog sur la sécurité Internet www.troyhunt.com, et son service HaveIBeenPwned (HIBP), qui centralise les fuites de données et permet aux utilisateurs de voir si leur informations personnelles ont été compromises par une activité malveillante sur le web. L'objectif de Hunt est d'aider le plus grand nombre de personnes possible grâce à ses connaissances et à son service.

Le défi de Troy Hunt : aider les utilisateurs légitimes et empêcher les pirates de nuire

Aider le plus grand nombre de personnes possible peut être difficile lorsque les ressources sont limitées. L'un des principaux défis de M. Hunt est de gérer les pics de trafic sur ses sites web et son API qui sont exécutées sur l'infrastructure Azure de Microsoft. Ces pics entraînent des problèmes de performances, augmentent les coûts de bande passante, et entraînent des temps d'arrêt et une perte de confiance pour un service où la confiance et l'intégrité sont primordiales. Lorsque les fuites de données des grandes institutions sont très médiatisées (comme celles survenues chez Ashley Madison et Dropbox), le service HIBP de Hunt connaît d'énormes pics de trafic. Selon M. Hunt, ces pics de trafic « dépassent la capacité des processeurs et dégradent les performances jusqu'à ce que d'autres instances soient exécutées. Autoscale, le système de mise à l'échelle automatique d'Azure, fonctionne à merveille lorsque le trafic augmente régulièrement, mais les performances sont fortement dégradées lorsque le trafic décolle soudainement. » Non seulement ces pics de trafic s'accompagnent d'une perte de performances, mais dans la mesure où Autoscale s'adapte à la charge à la demande, les pics ponctionnent directement le portefeuille de M. Hunt.

En outre, Troy Hunt s'est inquiété de l'utilisation de l'API de HIBP par certains acteurs malveillants. Bien que l'API ait été créée pour aider les utilisateurs à savoir s'ils ont été victimes d'une fuite de données, M. Hunt a expliqué que « récemment, divers indicateurs ont montré que l'API avait été utilisée d'une manière qui ne correspondait pas à l'esprit dans lequel elle avait été créée. Je n'ai pas envie que cela continue ».

M. Hunt cherchait donc une solution, d'une part pour maintenir les performances du web et atténuer les coûts en cas de pics de trafic, d'autre part pour empêcher que son API ne soit utilisée de manière abusive.

Solution de Troy Hunt : utiliser Rate limiting pour bloquer les acteurs malveillants

Troy Hunt a trouvé une solution unique pour ses exigences multiples dans le service Rate Limiting de Cloudflare. Rate Limiting aide Troy Hunt à gérer les pics de trafic en lui permettant de fixer une limite au nombre de requêtes provenant des différentes adresses IP qui accèdent respectivement à ses sites web et à son API sur une période donnée. Rate Limiting empêche les pics de trafic de réduire les performances, car chaque utilisateur unique est limité à un certain nombre de requêtes. Troy Hunt a fixé cette limite de manière à ce que les utilisateurs normaux ne voient aucun changement dans le service, tandis que les personnes qui abusent de ses sites web et de son API sont littéralement étranglés. Ainsi, l'API de Troy Hunt peut rester performante et fiable pour le trafic légitime, tandis que les acteurs malveillants sont gênés et bloqués. Troy Hunt s'est montré très satisfait : « Vous avez rendu l'ensemble du site plus stable, plus rapide pour les utilisateurs légitimes et plus sûr, tout en réduisant mes coûts ».

Le service HaveIBeenPwned
Études de cas associées
Résultats essentiels

Rate Limiting empêche les acteurs malveillants d'abuser de l'API de HIBP

90 % d'économies sur les coûts d'infrastructure

99,5 % des requêtes servies directement depuis le cache de Cloudflare

Troy Hunt

La limitation du débit me garantit que je peux continuer à exécuter mon service de manière fiable, rentable et éthique.

Troy Hunt