HaveIBeenPwned? (個人情報の漏えい確認サイト)

Troy Hunt氏はCloudflareを使用してWebサイトとAPIを保護し、オンラインでの安全性を支援しています。

Troy Hunt氏は、Microsoftのリージョナルディレクターで、独立したインターネットセキュリティ研究者です。彼は、インターネットセキュリティに関するブログ(www.troyhunt.com)とHaveIBeenPwned(HIBP)サービスの両方でよく知られる人物です。HIBPは、データ漏えい事例を集約し、人々がWeb上の悪意あるアクティビティの影響を受けていないか確認できるようにしたサイトです。Hunt氏の目標は、自身の知識とサービスでできるだけ多くの人々を助けることです。

Troy Hunt氏の課題:犯罪者に利用されることなく人々を助けること

リソースが限られている場合、できるだけ多くの人を助けることが困難になることがあります。Hunt氏の主な課題は、MicrosoftのAzureインフラストラクチャで実行されているWebサイトとAPIへのトラフィックの急増を管理することです。このようなトラフィックの急増は、パフォーマンスの問題を引き起こし、帯域幅コストが増加し、信頼と整合性がすべてであるサービスのダウンタイムと信頼性の喪失を招きます。大規模な機関でのデータ漏えいが広く公表されると(最近のAshley MadisonやDropboxの情報漏えいなど)、Hunt氏のHIBPサービスでは、トラフィックが急増します。Hunt氏によると、こうしたトラフィックスパイクはCPUを使い果たし、より多くのインスタンスが配備されるまでパフォーマンスを低下させます。Azureの自動負荷処理であるオートスケールは、トラフィックが安定的に上昇するとみごとに機能しますが、トラフィックが突然チャートから外れた場合、パフォーマンスは低下します。」このようなトラフィックスパイクは、パフォーマンスの低下を意味するだけでなく、オートスケールがオンデマンドの負荷に順応するため、急増はHunt氏のウォレットに直接取り付けられたレバーのように機能します。

さらに、Hunt氏はHIBPのAPIを悪用する不正アクターを憂慮していました。APIは、データ漏えいの影響を受けているかを調べるために作成されましたが、Hunt氏は、「このところ、APIが作成された当初の目的にそぐわないような方法で使用されていることを示すさまざまな事例があるのです. . . 」と説明しています。こうした事態が続くことは避けたいのです。」

こうして、Hunt氏はトラフィックスパイクをきっかけにWebパフォーマンスを維持しながら、コストを軽減し、APIの悪用を防止するためのソリューションを探していました。

Troy Hunt氏のソリューション:悪意のある不正アクターのレート制限

Troy Hunt氏は、複数の要件に見合う単一のソリューションをCloudflareのレート制限サービスに見出しました。レート制限は、任意期間内に個別IPアドレスからWebサイトとAPIへ届くのリクエストの数をそれぞれ制限できるようにすることにより、トラフィックの急増を管理しやすくします。レート制限は各ユニークユーザーのリクエストを特定数に制限するため、トラフィック急増によるパフォーマンスの低下を防止します。Hunt氏は、WebサイトとAPIを悪用する活動を阻みながら通常のユーザーはサービスの変化を感じない程度に制限を設定することにより、APIが正当なトラフィックに対しては高いパフォーマンスと信頼性を維持し、悪用者を阻止・ブロックするようにしました。Hunt氏は、 「Cloudflareのおかげでサイト全体の安定性と安全性が高まり、正当なユーザーのトラフィックが高速化され、コスト削減もできました。」 と称賛しています。

HaveIBeenPwned? (個人情報の漏えい確認サイト)
関連導入事例
主な成果

レート制限により、悪意のあるアクターによるHIBPのAPIの乱用を防止

インフラストラクチャのコストを90%削減

リクエストの99.5%をCloudflareのキャッシュから直接配信

Rate Limitingによって、サービスを安定的に、コスト効率よく、倫理的に運用できます。

Troy Hunt氏