ウィルス対策ソフトなどのURLフィルタリング機能とSSL証明書について | SSLサーバー証明書ならさくらインターネット

ウィルス対策ソフトなどのURLフィルタリング機能とSSL証明書について

「マニュアル通りにSSL証明書を設定したけど、ブラウザで証明書情報を見るとマニュアルと違う…。鍵マークは出てるけど大丈夫かな?」と思った経験はありませんか?今回はウィルス対策ソフトや企業でのURLフィルタリングによる証明書チェーンの表示についてご紹介します。

URLフィルタリング機能って何?

当サイトコラムの『SSLって何?意味や仕組みをわかりやすく解説!』でもご紹介していますが、SSLサーバー証明書(以下、SSL証明書)の役割は、通信の暗号化、改ざん防止、なりすまし防止です。一方、ウィルス対策ソフトなどのインターネット通信をスキャンする機能※の役割は、通信を監視してその内容が危険ではないかをリアルタイムで監視することです。

  • ※悪意のあるサイトとの通信や、マルウェアが不正なサーバーと勝手に通信するのを遮断する機能などを指します。

ところが『SSLって何?意味や仕組みをわかりやすく解説!』でもご紹介している通り、SSL証明書は”データを送るサーバー”と”閲覧している人のブラウザ”との通信内容を暗号化します。つまり、ウィルス対策ソフトが導入されていたとしても、SSL証明書にて暗号化された通信内容を復号して監視することはできないのです。

ウィルス対策ソフトがSSL通信を監視する方法

そこで、ウィルス対策ソフトはルート証明書をPCにインストールします。「え!? ルート証明書ってインストールできるの?」と思われるかもしれませんが、ルート証明書のインストールは割と一般的です。e-TAXで確定申告をしている方はご存知かもしれませんが、e-TAXを使うためにはルート証明書を自分のPCにインストールしなければいけません。

実はこの方法、中間者攻撃(MITM)と似た手法です。悪意のある中間者は、通信の途中で通信先のサーバーになりすまし、データを詐取します。ウィルス対策ソフトの場合、通信相手のサーバーになりすますことはしませんが、”サーバーとブラウザ”ではなく、”サーバーとウィルス対策ソフト”と暗号化通信を行っているように経路を変更することで通信内容を監視しているのです。

この機能によって何か不都合はあるのか?

この機能は、サーバーとブラウザの間に関所を建てるようなものです。ウィルス対策ソフトは、ブラウザからサーバーへの暗号化通信の呼びかけを途中で上書きし、ウィルス対策ソフト自身がサーバーと暗号化通信を行います。ウィルス対策ソフトはサーバー側の秘密鍵はわからないのでデータを再度暗号化できません。そこで自分の秘密鍵でデータを暗号化します。つまり、秘密鍵と対になるルート証明書を一番初めにインストールしたのです。

ブラウザで証明書情報を見ると、通常は以下のように表示されています。

Slack通知のイメージ

ウィルス対策ソフトを導入している場合は以下のように表示されます。

Slack通知のイメージ

普段見慣れない2階層の証明書チェーンになり、最上位の部分にはウィルス対策ソフトの名前やメーカー名が表示されていると思います。

また、ウィルス対策ソフトの欠点として、EV証明書を導入している場合は本来ブラウザのアドレスバーに組織名が表示されますが、閲覧者側がウィルス対策ソフトを導入しているとアドレスバーに会社名は表示されず、DV証明書と同じ鍵マークのみの表示になってしまいます 。これを回避するため、ウィルス対策ソフトによってはホワイトリスト方式で信頼できる金融機関などとの通信は監視せずにそのまま表示する設定があります。証明書の設定が完了して、ブラウザで確認した際に上記のような表示になる場合は、ウィルス対策ソフトの設定を確認してみましょう。

SSL通信も監視することで、より安全にインターネットを楽しむことができるようになる反面、上記のように意図した証明書チェーンが表示されない可能性や、EV証明書の最大の特長であるアドレスバーへの組織名表示がされない可能性があることが、ウィルス対策ソフトのデメリットとなります。

通信を監視するのはウィルス対策ソフトだけではない

ではウィルス対策ソフト以外でルート証明書がインストールされて、通信を監視するのはどのような場合でしょうか。それは例えば、企業などで従業員PCの外部との通信を監視している場合です。通常、SSL通信は通信先のIPアドレス、SNI SSLであればドメインまでしかわからないので、アクセス制限を行う場合は全部許可するか、全部拒否するかしかできません。しかし、中間で通信内容を監視することで、より詳細なアクセスをコントロールすることができます。

他には、一部のアドブロッカー(ブラウザで広告を表示しないようにするソフトウェア)でも同じ技術が使われています。広告についても通信が暗号化されていると内容がわからないのでIPアドレスやドメインを全部拒否するしかありません。しかし、Googleのように様々なデータを同じドメインで管理している場合は、必要なものが見えなくなってしまう可能性もあります。これを防ぐために中間で通信内容を監視し、広告関連の通信だけを遮断することでより高精度に広告を非表示にしているのです。

前者であれば会社用PCのセットアップ時に情報システム部門などでルート証明書をインストールすることができますし、後者の場合はソフトウェアのセットアップ時にルート証明書のインストールが行われます。

URLフィルタリング機能の利用時に気をつけるべきこと

これらのソフトウェアは、暗号化通信を一度復号して中身を監視します。つまり、悪意のあるソフトウェア作者が復号した中身を外部へ送信する、ということも可能になってしまいます。ウィルス対策ソフトやアドブロッカーのURLフィルタリング機能を利用する際は、信頼できるものか確認することが非常に重要です。また、これらの機能を利用した場合は、証明書チェーンの表示が意図したものにならないこと、EV証明書の組織名が表示されない可能性があることも意識して利用しましょう。

「えぇ!それって大丈夫なの?通信内容が見られちゃうSSL通信って危険なんじゃないの?」と思われるかもしれませんが、これはあくまで”ルート証明書をインストールした場合”の話です。インストールする際もWindows OSであれば管理者権限が必要となります。しかし、ルート証明書が自身のPCなどにインストールされてしまうとSSL証明書を利用した暗号化通信は安全ではなくなるため、SSL通信の弱点とも言えます。秘密鍵が流出して危険になったルート証明書はWindows Updateなどにより削除されますが、理由はこの弱点によるものです。サーバーも同じですが、普段から自分のPCのセキュリティにも十分注意しておきましょう。

最終更新日:2019.4.2