Cloudflareは本日、S2 Systems社を買収したことを発表しました。S2 Systems社は、現在市場に出回っている他のソリューションとは異なる革新的なリモートブラウザー分離ソリューションを構築したシアトルに拠点を置くスタートアップ企業です。エンドポイントでの侵害の大半は、Webブラウザーに関連しています。ユーザーのデバイスとWebコードの実行場所の間に距離を置く、ブラウザー分離により、エンドポイントのセキュリティが大幅に強化されます。このブログ記事では、ブラウザー分離とは何か、その重要性、S2 Systemsクラウドブラウザーの仕組み、より良いインターネット環境を構築することをサポートするCloudflareの目標にどのように寄与するのかについて説明します。

Webブラウジングの何が問題なのか?

Tim Berners-Lee氏が、後にワールドワイドウェブと呼ぶようになったものの基盤となる技術を定義するプロジェクト提案書を作成したのは30年以上前になります。Berners-Lee氏が「多くが非常にクリエイティブで共通の目標に向けて取り組んでいる数千人」[1]にとって有益だと思い描いたものは、商業、事業、世界経済の基本的な部分になり、世界人口の58%以上が使用する社会にとって不可欠な部分に成長しました[2]。

言うまでもなく、ワールドワイドウェブやWebブラウザーは、人々が日々生産的に働く(および遊ぶ)ためのプラットフォームになりました。しかし、Webが普及していくにつれて、犯罪者に与えられる機会も増えました。毎日のように大規模な新しいサイバーセキュリティ侵害のニュースが報道されています。サイバー犯罪を前例のないレベルに押し上げている要因はいくつかあります。たとえば、ハッキングツールの販売、サービスとしてのマルウェアの出現、資金力のある国民国家や組織犯罪、あらゆる犯罪者による「対象を限定しない収益化」を可能にする暗号通貨の開発などです。

セキュリティ侵害の大部分は、Webから発生します。米国の調査会社Gartner社は、パブリックインターネットを「攻撃の巣」と呼び、7割のエンドポイント侵害の主犯格はWebブラウザーだとしています[3]。これは驚くにはあたりません。現代版のWebブラウザーは素晴らしいものですが、多くの基礎的なアーキテクチャに関する決定は、セキュリティプライバシー企業統治コンプライアンスといった概念が問題または検討対象となる前の1990年代に下されました。中核となるWebブラウジング機能(基礎となるWWWアーキテクチャ全体を含む)は、異なる時代における状況を想定して設計・構築されました。

現在の世界において、Webブラウジングに関する仮説のいくつかは時代遅れであり、危険でさえあります。Webブラウザーとその基盤技術であるサーバー テクノロジーには、多岐にわたる複雑に関係し合うテクノロジーが含まれます。これらのテクノロジーは、活気に満ちたオープンソースコミュニティ、コンテンツパブリッシャー、検索エンジン、広告主、ブラウザー企業間の競争に駆られて絶えず変化しています。この根底にある複雑さが原因で、Webブラウザーは主な攻撃ベクトル(攻撃の経路)になっています。Gartner社によると、 「インターネットを閲覧してURLリンクをクリックするユーザーの行為は、企業を重大なリスクにさらします。[...]ブラウザーを通じて攻撃することは極めて簡単で、標的が非常に多くあります」[4]。「『優良』とされているWebサイトでさえも簡単に侵害され、訪問者を攻撃するのに使用され、」(Gartner社[5])悪意のあるURLの40%以上は優良ドメインで見つかっています(Webroot社[6])。(脆弱性の完全なリストについては、この投稿記事では取り上げません。)

Webを支える構造と基盤技術を守ることは、本質的に困難です。一部のブラウザーの脆弱性は、合法な機能の非合法な使用に起因します。具体的には、次のようなことです。ブラウザーがファイルやドキュメントをダウンロードできるようにするのは良いですが、マルウェアに感染したファイルのダウンロードを許可するのは駄目です。1つのWebページ内の複数のサイト間でのコンテンツの動的な読み込みは良いですが、クロスサイトスクリプティングは駄目です。広範な広告エコシステムを利用できるようにするのは良いですが、乗っ取られたリンクまたはマルウェアやフィッシングサイトへの悪意のあるリダイレクトを検出できないのは駄目です。

エンタープライズブラウジングに関する問題

企業には、従来のブラウザーに関する問題がほかにあります。

逆説的に言えば、IT部門は、社内に遍在するアプリであるWebブラウザーに対するコントロールが一番少ない部門です。エンタープライズセキュリティおよびITのプロフェッショナルから特に寄せられるWebブラウザーに関する苦情には次のようなものがあります。

  1. (当然ながら)セキュリティ。パブリックインターネットはセキュリティ侵害の絶え間ない原因であり、2016年以降、攻撃件数が11倍になっているほど問題は深刻化しています(Meeker社[7])。検出と是正にかかるコストは上昇していて、セキュリティ侵害による風評被害や金銭的損失は相当な額になる恐れがあります。
  2. コントロール。IT部門は、ユーザーアクティビティをほとんど可視化できていないうえ、いつ、どこで、誰がファイルをダウンロード/アップロードしたかについての情報を含む、コンテンツ無害化&再構成(CDR)および情報漏えい対策(DLP)といったメカニズムをフルに活用できていません。
  3. コンプライアンス。複数の地域にわたってデータとアクティビティを制御したり、厳格になる一方の規制要件を満たすのに必要な監査テレメトリーをキャプチャしたりすることができません。これにより罰則・罰金の対象になるリスクが高まります。

電子メールやWeb閲覧といった日常的なユーザーアクティビティによって脆弱性が引き起こされることを考慮して、一部の企業は、そうしたアクティビティの制限を試みています。いずれも業務を行ううえで正当かつ重要な機能であるため、Webブラウザーの使用を制限または抑制する取り組みは必然的に失敗するか、または仕事の生産性や従業員の士気に大きな悪影響を及ぼすことになります。

Web閲覧に起因するセキュリティ問題を軽減する現在のアプローチは、主にデータファイルと実行ファイルの署名テクノロジー、および既知の優良/不良URLアドレスとDNSアドレスの一覧に基づいています。こうしたアプローチの問題は、既知の攻撃(ファイル署名、URLアドレス、DNSアドレス)とゼロデイ攻撃に対する本質的な脆弱性についての情報を最新に保つことが難しいことです。ハッカーは、署名ベースのアプローチを打ち負かし(未知の署名を持つ膨大な数のファイルを生成する)、URL/DNSブラックリストを回避するために何百万もの一時的なWebサイトを作成する自動化ツールを考え出しました。

こうしたアプローチは、確かに一部の攻撃を防ぎますが、インシデント数とセキュリティ侵害の重大度が増している現状は、より効果的な代替手段が必要であることを明確に示しています。

ブラウザー分離とは何か?

ブラウザー分離の背後にある基本的な考え方は、ユーザーのWebブラウザーとエンドポイントデバイスの間に「ギャップ」を作り、デバイス(およびエンタープライズネットワーク)を悪用や攻撃から保護する、という物理的分離によるセキュリティです。既知の脅威パターンやシグネチャに依存するセキュアWebゲートウェイ、ウイルス対策ソフトウェア、ファイアウォールなどとは異なる「ゼロトラスト」アプローチです。

次の2つの主なブラウザー分離アーキテクチャがあります:(1) クライアントベースのローカル分離と (2) リモート分離。

ローカルブラウザー分離では、アプリレベルまたはOSレベルのサンドボックスを使用して、ローカルエンドポイントで実行されているブラウザーの分離を試みます。これらのシステムは、分離に失敗した場合にエンドポイントを危険にさらすことに加えて、大量のエンドポイントリソース(メモリとコンピューティング)を必要とし、脆弱になる傾向があり、特定のハードウェア/ソフトウェアコンポーネントからのサポートに依存するため、ITプロフェッショナルによる管理が困難です。

また、ローカルブラウザー分離は、前述のコントロールとコンプライアンスの問題を解決する方法にはなりません。

リモートブラウザー分離(RBI)は、ブラウザーをクラウド内のリモートサービスまたはエンタープライズ ネットワーク内の別のオンプレミスサーバーに移動することでエンドポイントを保護します。

  • オンプレミス分離は、実際にリスクを排除するのではなく、単にリスクをエンドポイントから企業内の別の場所に移すだけです。
  • クラウドベースのリモートブラウザー分離は、ITコントロール/コンプライアンスソリューションに完全に対応する一方で、エンドユーザーのデバイスと企業のネットワークを分離します。

固有の利点があることから、S2 Systemsを含む、ほとんどのブラウザー分離ソリューションは、クラウドベースのリモート分離を利用しています。適切に実装すれば、リモートブラウザー分離は、ブラウザーの悪用、プラグイン、ゼロデイ脆弱性、マルウェア、およびWebコンテンツに埋め込まれたほかの攻撃から企業を保護することができます。

リモートブラウザー分離(RBI)の仕組み

一般的なクラウドベースのRBIシステム(下の青い破線のボックス❶)では、個々のリモートブラウザー❷は、コンテナ化された使い捨てインスタンス(通常は1ユーザーごとに1つのインスタンス)としてクラウド内で実行されます。リモートブラウザーは、特定のプロトコルとデータフォーマット❸を使用して、Webページのレンダリングされたコンテンツをユーザーエンドポイントデバイス❹に送信します。キーストローク、マウス、スクロールコマンドなどのユーザーによるアクションは、暗号化された安全なチャネルを介して分離サービスに送り返されます。その後で、リモートブラウザーによって処理され、リモートブラウザーのWebページへの変更はエンドポイントデバイスに送り返されます。

実際には、エンドポイントデバイスはクラウドブラウザーを 「リモート制御」します。ローカルエンドポイントにインストールされたプロプライエタリクライアントを使用するRBIシステムもあれば、エンドポイント上の既存のHTML5互換ブラウザーを利用し「クライアントレス」とみなされるものもあります。

リモートブラウザー内で発生するデータ侵害は、ローカルエンドポイントとエンタープライズネットワークから分離されます。すべてのリモートブラウザーインスタンスは、各セッション後に侵害が発生して終了したかのように扱われます。新しいブラウザーセッションは、新しいインスタンスを起動します。言うまでもなく、RBIサービスは、ブラウザーの情報がブラウザーコンテナからサービス自体に漏洩するのを防ぐ必要があります。ほとんどのRBIシステムは、ファイルのダウンロードを不要にするリモートファイルビューアーを提供しますが、ダウンロードを許可する前にマルウェアがないかファイルを検査することもできます。

上記のアーキテクチャの重要なコンポーネントは、クラウドRBIサービスで採用されている特定のリモーティングテクノロジーです。リモーティングテクノロジーは、RBIサービスの運用コストと拡張性、Webサイトの忠実度と互換性、帯域幅要件、エンドポイントのハードウェア/ソフトウェア要件、ユーザー体験などに大きな影響を与えます。リモーティングテクノロジーは、RBIシステムが提供するセキュリティの実効レベルも決定します。

現在のすべてのクラウドRBIシステムは、次のいずれか1つのリモーティングテクノロジーを採用しています。

(1)    ピクセルプッシング:リモートブラウザーの「ウィンドウ」のピクセル画像をキャプチャし、クライアントエンドポイントブラウザーまたはプロプライエタリクライアントに画像のシーケンスを送信するビデオベースのアプローチです。これは、リモートデスクトップおよびVNCシステムの仕組みに似ています。比較的安全であると考えられていますが、このアプローチにはいくつかの固有の問題があります。

  • リモートWebページのビデオストリームを継続的にエンコードしてユーザーエンドポイントデバイスに送信することは、非常にコストがかかります。このアプローチを何百万人ものユーザーに適用することは、コスト面で困難であり、ロジスティクス面で複雑です。
  • 大量の帯域幅を必要とします。たとえ上手く最適化したとしても、ピクセルプッシングには帯域幅が大量に消費されます。
  • レイテンシーは避けられないため、ユーザー体験の低下を招きます。こうしたシステムは、応答速度が遅くなりがちなので、多くのユーザーから苦情が寄せられることになります。
  • 不安定な接続が原因で大量の帯域幅が必要となることでモバイルサポートのレベルが低下します。
  • HiDPIディスプレイが低解像度でレンダリングされる可能性があります。ピクセル密度が解像度に比例して急激に増加します。つまり、HiDPIデバイス上のリモートブラウザーセッション(特にフォント)がぼやけたり、ピンぼけになったりします。

(2) DOM再構築:ピクセルプッシングの欠点を補う手法として登場しました。DOM再構築では、コンテンツをローカルエンドポイントブラウザーに転送する前に、WebページのHTML、CSSなどのクリーンアップを試みます。基礎となるHTML、CSSなどは、アクティブコード、既知のエクスプロイト、ほかの潜在的に悪意のあるコンテンツを排除するために再構築されます。ピクセルプッシングが抱えるレイテンシー、運用コスト、ユーザー体験などの問題に対処できる一方で、次の2つの重大な問題が新たに発生します。

  • セキュリティ。根底にあるテクノロジー(HTML、CSS、Webフォントなど)は、エンドポイントを侵害するためにハッカーが利用する攻撃ベクトルです。悪意のあるコンテンツやコードを削除しようとすることは、蚊を洗うようなものです。蚊をきれいにしようとすることはできますが、危険で悪意のある記録物(ウィルス)のキャリアであるという事実は変わりません。RBIシステムを介しても、こうしたテクノロジーを悪用するすべての手段を事前に特定することは不可能です。
  • Webサイトの忠実度。必然的に、悪意のあるアクティブコードを削除しようとして、HTML、CSS、ウェブサイトのほかの側面を再構築すると、適切にレンダリングされない、またはまったくレンダリングされない壊れたページが表示されます。今日機能しているWebサイトが、明日は機能しないかもしれません。なぜなら、サイト発行者が毎日変更を加えて、DOM再構築機能を壊す可能性があるからです。その結果、大量のリソースを必要とするモグラたたきゲームが永遠に続くという問題が生じることになります。一部のRBIソリューションは、マルウェアを含むWebメールが引き続き侵害の主な原因となっているにもかかわらず、Google G SuiteやMicrosoft Office 365などの一般的なエンタープライズサービスをサポートすることに苦労しています。

顧客は、ユーザー体験が悪く運用コストが高い安全なソリューションか、より高速ではあるが安全性がずっと低くWebサイトを壊すソリューションのどちらかを選択するしかありません。こうしたトレードオフがあるため、一部のRBIプロバイダーは、両方のリモーティングテクノロジーを各自の製品に実装することに取り組むことにしました。しかし、依然として根本的な問題を解決せずに、顧客に究極の選択をさせることになります。

今日のRBIシステムにおける大きなトレードオフを考慮すると、現時点で可能な最適化の手法の1つは、リスクの高い経営陣、ファイナンス部門、ビジネスデベロップメント部門、人事部門といった最も脆弱なユーザーに限定してリモートブラウジング機能を実装することです。クラスの半分の生徒にワクチンを接種することのように、組織(学校)全体をほとんど保護できていないのにもかかわらず大丈夫だという誤った感覚を持たせることになります。

残念ながら、現在のリモートブラウザー分離システムによって生み出される最大の「ギャップ」は、根底にある分離概念の持つ可能性と、現時点で利用可能なRBIシステムの実装において直面する現実との「隔たり」なのです。

S2 Systemsのリモートブラウザー分離

S2 Systemsのリモートブラウザー分離は、ネットワークベクトルレンダリング(NVR)と呼ばれる、S2の特許取得済みの技術に基づく根本的に異なるアプローチです。

S2リモートブラウザーは、Google ChromeのベースであるオープンソースのChromiumエンジンを使用しています。Chromiumは、約70%のマーケットシェア[8]を持つGoogle Chromeのほかに、新しいMicrosoft Edgeブラウザーを含む21のWebブラウザーのベースにもなっています[9]。そのため、Chromiumエンジンに継続的に多大な投資をすることで、最高レベルのWebサイトのサポート、互換性、継続的改善が保証されます。

Chromiumブラウザーの重要なアーキテクチャの特徴は、Skiaグラフィックスライブラリを使用している点です。Skiaは、Android、Google Chrome、Chrome OS、Mozilla Firefox、Firefox OS、FitbitOS、Flutter、Electronアプリケーションフレームワークおよびほかの多くの製品に広く使用されているクロスプラットフォームのグラフィクスエンジンです。Chromiumと同様に、Skiaの普及率は高いので、ハードウェアとプラットフォームの継続的かつ広範なサポートが保証されます。

Skiaコードフラグメント

Chromiumブラウザーウィンドウに表示されるすべてのものは、Skiaレンダリングレイヤーを介してレンダリングされます。これには、メニューなどのアプリケーションウィンドウUIが含まれますが、さらに重要なのは、Webページウィンドウのコンテンツ全体がSkiaを通じてレンダリングされることです。Chromiumの合成、レイアウト、レンダリングは、異なるコンテンツタイプ、デバイスコンテキストなどのために最適化された複数の並列パスを伴い非常に複雑です。次の図は、S2の仕組みを説明するために非常に単純化したものです(Chromiumのエキスパートの方々には申し訳ありません)。

S2 Systems NVRテクノロジーは、リモートChromiumブラウザーのSkia描画コマンド❶をインターセプトし、トークン化して圧縮してから、ネットワーク経由で暗号化して❷、ユーザーエンドポイントのデスクトップ上またはモバイルデバイス上でローカルで実行されているHTML5対応Webブラウザー❸(Chrome、Firefox、Safariなど)に送信します。NVRによってキャプチャされたSkia APIコマンドは、ラスタライズ化される前のものです。つまり、非常にコンパクトです。

初回使用時に、S2 RBIサービスは、NVR WebAssembly(Wasm)ライブラリ❹を、後続使用のためにキャッシュするエンドポイントデバイス上のローカルHTML5 Webブラウザーに透過的にプッシュします。NVR Wasmコードには、埋め込まれたSkiaライブラリと、リモートRBIサーバーからローカルブラウザーウィンドウにSkia描画コマンドを解凍、復号化、「再生」するのに必要なコードが含まれています。WebAssemblyは、「広範なプラットフォームで利用できる共通ハードウェア機能を利用してネイティブ速度で実行できる」[10]ことから、ネイティブに近い描画パフォーマンスを実現します。

S2のリモートブラウザー分離サービスは、クラウド内のChromiumベースのヘッドレスブラウザーを使用し、描画レイヤー出力を透過的にインターセプトし、描画コマンドをWeb上で効率よく安全に送信して、ローカルHTML5ブラウザーのウィンドウ内で再描画します。このアーキテクチャには、次のような技術的な利点があります。

(1) セキュリティ:基盤となるデータ トランスポートは既存の攻撃ベクトルではなく、顧客はセキュリティとパフォーマンスのトレードオフを迫られることはありません。

(2) Webサイトの互換性:ウェブサイトの互換性に関する問題に対処したり、絶えず変化するWebテクノロジーや新たに出現する脆弱性に対応したりする必要がありません。

(3) パフォーマンス:システムは非常に高速で、通常はローカルブラウジングよりも速いです(将来のブログ記事の題材です)。

(4) 透過的なユーザー体験:S2リモートブラウジングは、ネイティブブラウジングのように感じられます。通常、ユーザーはリモートでブラウズしていることに気づきません。

(5) ほとんどのWebサイトで、ローカルブラウジングよりも少ない帯域幅で済みます。高度なキャッシングおよびWebブラウザーやWebコンテンツ/テクノロジーの本質に固有なほかの独自の最適化を可能にします。

(6) クライアントレス:ユーザーエンドポイントのデスクトップやモバイルデバイスにすでにインストールされている既存のHTML5互換ブラウザーを活用します。

(7) 費用対効果の高いスケーラビリティ:詳細については、この記事では取り上げませんが、S2バックエンドとNVRテクノロジーでは、既存のRBIテクノロジーに比べて運用コストが大幅に削減されます。運用コストは、顧客が負担するコストに直接転嫁されます。S2システムは、企業全体に実装するように設計されていて、単にターゲットユーザー(前述のクラスの半分の生徒にワクチンを接種すること)のみを対象としたものではありません。顧客にとって実現可能で魅力的なものです。

(8) プラットフォームとしてのRBI:DLP、コンテンツ無害化&再構成(CDR)、フィッシングの検出と防止などの関連/隣接サービスの実装を可能にします。

S2 Systems Remote Browser Isolation Serviceと基盤となるNVRテクノロジーは、ブラウザー分離の概念的な可能性や約束と、現在のRBIテクノロジーが十分でないという現実との間の「隔たり」を取り除きます。

Cloudflare + S2 Systemsのリモートブラウザー分離

Cloudflareのグローバルクラウドプラットフォームは、リモートブラウジング分離に比類なく適しています。クラウドネイティブのパフォーマンス、信頼性、高度なセキュリティ製品/サービスとのシームレスな統合は、当社の顧客に強力な機能を提供します。

Cloudflare Workersアーキテクチャは、90か国以上200都市でエッジコンピューティングを可能にし、先進国のインターネット接続人口の99%を100ミリ秒以内にリモートブラウザーに接続させます。2,000万を超えるインターネットプロパティが当社のネットワークに直接接続されているので、Cloudflareのリモートブラウザー分離は、ローカルにてキャッシュされたデータの恩恵を受け、当社のネットワークの素晴らしい接続性とパフォーマンスを利用します。当社のArgo Smart Routing機能は、通信バックボーンを活用して、より高速で信頼性の高いネットワークパスを介してトラフィックをルーティングするので、Webアセットへのアクセスを平均で30%高速化します。

高度なセキュリティ製品であるCloudflare for Teams一式と統合すると、リモートブラウザ分離は、ブラウザの悪用、ゼロデイの脆弱性、マルウェア、Webコンテンツに埋め込まれたそのほかの攻撃から保護してくれます。企業は、セキュリティとユーザー体験をトレードオフすることなく、すべての従業員のブラウザーを保護できます。このサービスにより、ブラウザーで提供されるエンタープライズデータのITコントロールとコンプライアンスの監視が可能になります。当社の製品/サービス全体にわたるシームレスな統合により、ユーザーや企業は不安や結果を気にすることなくWebを閲覧できるようになります。

Cloudflareは、より良いインターネット環境の構築をサポートするという目標を掲げています。これは、インターネット上で仕事をしたり遊んだりするユーザーや企業を保護することと、インターネットへのアクセスの迅速性、信頼性、透明性を高めることを意味します。Webブラウジングの仕組みを再考して近代化することは、より良いインターネット環境の構築をサポートする取り組みの重要な部分です。


[1] https://www.w3.org/History/1989/proposal.html

[2] 『Internet World Stats』、https://www.internetworldstats.com/、2019年12月21日閲覧。

[3] 『Innovation Insight for Remote Browser Isolation』(レポートID:G00350577)Neil MacDonald、Gartner Inc.、2018年3月8日

[4] Gartner, Inc.、Neil MacDonald、『Innovation Insight for Remote Browser Isolation』、2018年3月8日

[5] Gartner, Inc.、Neil MacDonald、『Innovation Insight for Remote Browser Isolation』、2018年3月8日

[6] 『2019 Webroot Threat Report:Forty Percent of Malicious URLs Found on Good Domains』、 2019年2月28日

[7] 『Kleiner Perkins 2018 Internet Trends』、Mary Meeker。

[8] https://www.statista.com/statistics/544400/market-share-of-internet-browsers-desktop/、2019年12月21日閲覧

[9] https://en.wikipedia.org/wiki/Chromium_(web_browser)、2019年12月29日閲覧

[10] https://webassembly.org/、2019年12月30日閲覧