Don't miss out on the action at this year's Chrome Dev Summit, happening on Oct 23rd and 24th. Learn more.

HTTPS を使用する理由

機密性の高くない通信を扱うウェブサイトの場合でも、必ず HTTPS を使用してすべてのウェブサイトを保護する必要があります。 ウェブサイトとユーザーの個人情報について重要なセキュリティおよびデータの整合性を実現する以外にも、HTTPS は多くのブラウザの新機能の要件になっています。特に、Progressive Web App では必須です。

TL;DR

  • 悪意の有無にかかわらず、侵入者はウェブサイトとユーザー間で、保護されていないすべてのリソースを利用します。
  • 多くの侵入者は、行動を集約してユーザーを特定します。
  • HTTPS は、ウェブサイトの悪用を防ぐだけではありません。多くの最新機能の要件にもなっており、Service Worker など、アプリと同様の機能に必要なテクノロジーを使用可能にします。

HTTPS によるウェブサイトの整合性の保護

HTTPS は、ウェブサイトとユーザーのブラウザ間の通信を侵入者が改ざんすることを防ぎます。 侵入者には、明確な悪意のある攻撃者と、ページに広告を注入する ISP やホテルなどの、合法だが煩わしい企業が含まれます。

侵入者は保護されていない通信を悪用し、機密情報の提供やマルウェアのインストールをユーザーが行うように仕向けたり、サイトのリソースに自分の広告を挿入したりします。 たとえば、サードパーティによっては、ユーザー エクスペリエンスを損ない、セキュリティ上の脆弱性を引き起こす可能性のある広告をウェブサイトに注入する場合があります。

侵入者は、ウェブサイトとユーザー間でやり取りされる、保護されていないあらゆるリソースを悪用します。 画像、Cookie、スクリプト、HTML、これらはすべて悪用可能です。 侵入は、ネットワーク上のどこでも起こり得ます。ユーザーのマシン、Wi-Fi アクセス ポイント、侵害された ISP など、これらはほんの数例でしかありません。

HTTPS によるユーザーのプライバシーとセキュリティの保護

HTTPS は、侵入者がウェブサイトとユーザー間の通信を傍受できないように保護します。

HTTPS が必要になるのは、機密性の高い通信を扱うウェブサイトのみであると一般的に思われていますが、これは誤りです。 保護されていないすべての HTTP リクエストから、ユーザーの振る舞いやアイデンティティに関する情報が漏れる可能性があります。 保護されていないウェブサイトの 1 つに 1 回アクセスしても問題ないように見えますが、侵入者の中にはユーザーのブラウジング アクティビティを総合的に監視し、ユーザーの振る舞いと意図を推測して、ユーザーのアイデンティティを非匿名化するものがいます。 たとえば、従業員が保護されていない医療記事を読むとします。これだけで、秘密にしている健康状態を意図せずに雇用主に明かしてしまう可能性があります。

HTTPS はウェブの未来

getUserMedia() を使用した写真の撮影や音声の録音、Service Worker によるオフラインでのアプリの使用の有効化、プログレッシブ ウェブアプリの作成といった、ウェブ プラットフォームの強力な新機能を実行するには、事前にユーザーからの明示的な許可が必要です。 Geolocation API などの古い API の多くも、実行に許可を必要とするようにアップデートされています。 HTTPS は、これらの新機能とアップデートされた API の両方の許可ワークフローにとって重要なコンポーネントです。