https の URLフィルタ(Web/コンテンツフィルタ)の動作と仕組み, 製品例について

URLフィルタ(Webフィルタ/コンテンツフィルタ)とは

URLフィルタとは、社内PCのインターネット閲覧に制限をかける機能のことです。

例えばアダルトやドラッグ等の有害サイトや、動画/SNS等の業務に不要なサイトを社内NWから閲覧できないようにする、もしくは閲覧者に対して警告/管理者に対してログ出力をした上で閲覧を許可する仕組みのことです。

Webフィルタやコンテンツフィルタとも呼ばれたりします。

あらゆるサイトが、URLフィルタメーカ(もしくは協力会社)によって何かしらのカテゴリに分類(産まれ立てのサイトは"未分類"というカテゴリに分類)されますので、管理者はカテゴリ毎にどのような動作(許可/拒否/警告など)にするかを設定します

http の URLフィルタの仕組み

URLフィルタの仕組みは、http については httpヘッダの中身を見て、ホストのFQDNおよび その配下のサブディレクトリ等の情報を見れます。

例えば http://abc.xyz/ というサイトが複数のカテゴリのサイトを運営していたとします。

http://abc.xyz/adult/ は有害サービス、http://abc.xyz/sports/ は健全なスポーツ情報サイトだったとします。httpであればサブディレクトリの情報も http ヘッダを見れば分かりますのでサブサイト毎にカテゴリの識別が可能です。

https の URLフィルタの仕組み

https の場合は暗号化によりhttpヘッダの中身を見ることができませんので、違う方法でサイト情報を見極める必要があります。

大きく4つのやり方があります。WebプロキシかUTMかによっても取りうる方法が異なります。

①IPアドレスによる識別

一番単純なのは"宛先IPアドレス"によってどのサイトかを識別する方法です。ただしこれは(URLは同じだが)IPが動的に変化するサイトには弱いです

②CONNECTメソッドによる識別(Webプロキシのみで利用可能)

Webプロキシ付随のURLフィルタで使われるのは"宛先IPアドレス"ではなく"CONNECTメソッドのホスト情報"です。プロキシ経由でhttps通信をする場合はhttpの (GETではなく) CONNECTメソッドを使って通信します。CONNECTメソッドではURLのホスト名が指定されるので、ホスト名までは分かります。

プロキシのCONNECTメソッドの仕組みについては以下を参考にして下さい。

【図解】httpプロキシサーバの仕組み(http GET/https CONNECTメソッド)や必要性・役割・メリットデメリット・DNSの名前解決の順序
【図解】httpプロキシサーバの仕組み(http GET/https CONNECTメソッド)や必要性・役割・メリットデメリット・DNSの名前解決の順序
プロキシサーバとは、クライアントからサーバへhttp通信する際、直接やり取りする...

ただし、CONNECT ではサブディレクトリを見ることができません。これは、CONNECTメソッドで取り次いだ後は暗号化されたデータを取り次ぐだけで、中身を見れないからです。

先の例だと、https://abc.xyz までの情報しか分からず、そのサブディレクトリが /adult/なのか/sports/なのか識別できないのです。

③デジタル証明書の CN(Common Name) による識別

https(SSL/TLS)による暗号化通信を行う前のネゴシエーションでは、デジタル証明書の情報がやり取りされますが、このときは当然暗号化されていません。そして証明書には必ず CN (Common Name) というホスト名情報が載で宛先を判断します。例えば https://www.yahoo.co.jp/ の証明書は以下の通りです。

デジタル証明書の仕組みについては以下を参考にして下さい。

【図解】よく分かるデジタル証明書(SSL証明書)の仕組み 〜https通信フロー,発行手順,CSR,自己署名(オレオレ)証明書,ルート証明書,中間証明書の必要性や扱いについて〜
【図解】よく分かるデジタル証明書(SSL証明書)の仕組み 〜https通信フロー,発行手順,CSR,自己署名(オレオレ)証明書,ルート証明書,中間証明書の必要性や扱いについて〜
前提知識 デジタル証明書(電子証明書)の理解のためにはまず公開鍵・秘密鍵につい...

この方式の問題点は、CONNECTと同様サブディレクトリが識別できない上に、上記の yahoo.co.jp のように、ワイルドカードを使われた場合にホスト部も細かい識別ができなくなります。例えば https://www.yahoo.co.jp と https://mail.yahoo.co.jp の識別もできません。

これは例えばWebメールによる情報持ち出しを目的としたフィルタリングを行う際に問題が大きくなります。なぜなら、Yahoo!メールの利用を不可にするためにはwww.yahoo.co.jp等のサイトも止めなくてはならなくなるからです。

④自己署名証明書を使ってhttps通信を取り次ぐ

WebプロキシにしてもUTMにしても、通常はhttpsは暗号化されたまま通信します。ですがこの方式では、WebプロキシやUTMがクライアントに対して(閲覧したいサイトの証明書では無く、)偽の証明書を提示し、クライアントとサーバ間の通信を盗み見します

Webプロキシ/UTMの間でhttps通信をします。その通信を復号化し、httpヘッダを検査した上で、Webプロキシ/UTMが(別のhttpsセッションで)クライアントが本来行きたいサイトと通信し、その結果をクライアントのhttpsセッションに載せて返します。

この方式の問題点は、クライアントのブラウザに SSL/TLS に関する警告が表示されることです。これはhttpsの通信の保護の観点からすれば当然のことです。

SSLエラー/セキュリティ証明書のエラー警告が表示される理由・原因と対処
SSLエラー/セキュリティ証明書のエラー警告が表示される理由・原因と対処
セキュリティ証明書(デジタル証明書やSSL証明書、サーバ証明書などとも呼ばれます...

URLフィルタのメーカや製品の例

Webプロキシの URLフィルタ

BlueCoat SGシリーズやデジタルアーツの i-filter 、トレンドマイクロの InterScan、アルプスの InterSafe 等が有名です。

UTM の URLフィルタ

PaloAlto や FortiGate 等があります。オプションライセンスとして追加することができます。

シェアする

  • このエントリーをはてなブックマークに追加

フォローする