「サーバー証明書」はWebサイトの必需品

 Webサイト全体をHTTPS化すること、いわゆる「常時SSL化」が叫ばれるようになって久しい。10年前であれば、HTTPSを導入する場合、Webサイトのなかでも重要な情報を扱う箇所、たとえばログイン画面や個人情報入力画面、決済画面などに絞って導入するというサイトも、よく見かけたものである。しかし、今ではWebサイト全体をHTTPS化することが当たり前となっている。

 そしてWebサイトをHTTPS化する際、必要になるのが「サーバー証明書」だ。今回は、Webサイトにサーバー証明書を導入するときの、製品選択のポイントを解説する。

サーバー証明書は何を証明するのか

 サーバー証明書の役目はWebサイトの「真正性証明」と通信の暗号化である。暗号化にはサーバー証明書に含まれる公開鍵を使うのだが、暗号化して通信する前にWebサイトが信頼できるかどうかをサーバー証明書で確認する。ここで使うのが「真正性証明」だ。今回はサーバー証明書が証明する「Webサイトの真正性」とは何かを解説しよう。

 「Webサイトの真正性」はその信頼性の高さによって、以下の3段階に分かれる。

1. 接続したWebサイトのサーバー証明書が、そのドメイン名の所有者によって申請されたことを証明する
2. 1.に加えて、Webサイトが名乗っている企業や団体の実在性を確認する
3. 2.の実在性に加えて登記簿などで所在地を確認する

 サーバー証明書を発行する業者を「認証局」(CA:Certification Authority)と呼ぶが、現在、認証局が発行しているWebサイト向けのサーバー証明書は、上のいずれかについて確認済みであることを示している。そして、上記の1~3の考え方によって発行された証明書は、それぞれ以下のように呼ばれる。

1. DV(Domain Validation)証明書
2. OV(Organization Validation)証明書
3. EV(Extended Validation)証明書

 以下、各証明書について具体的に説明しよう。

 まず、このなかで最も簡単に取得できるのがDV証明書だ。ドメイン名の所有者によって申請されたことのみを確認して発行するサーバー証明書である。DV証明書の場合、認証局と申請者しか知らないファイルを使ってドメインが実在することを確認している。この方法はプログラムによる自動化が可能で、認証局の手間が少ない。費用はせいぜい年数千円程度で、なかには無償で証明書を発行する認証局も存在する。安価かつ迅速にサーバー証明書を発行できるのがDV証明書の長所だ。しかし、ドメイン名の持ち主であれば誰でも取得できるため、悪意のある第三者が類似のドメイン名でサーバー証明書を取得すると、対抗できないという短所もある。

 企業や団体が実在し、申請者が所属していることを確認して発行するサーバー証明書を、OV証明書と呼ぶ。手間と時間がかかる分高価で、費用は年数万円程度となるが、「Webサイトの真正性」という観点ではDV証明書よりも強力である。しかし、悪意のある第三者が、名称が類似した企業や団体を設立してサーバー証明書を入手してしまう、ということまでは防げない。

 そのような脅威に対応したのがEV証明書である。EV証明書の発行にあたっては「CAブラウザーフォーラム」(CA/Browser Forum:https://cabforum.org/)によるガイドラインに則った審査を必要とする。ちなみにこのCA/Browser Forumは電子証明書を使った通信のガイドラインを策定する会員制の任意団体だ。会員には認証局事業者のほか、米アップルや米シスコ、米グーグル、米マイクロソフトが含まれる。

 このガイドラインでは、悪意のある申請を想定して、確認を厳格にするよう求めている。その分OV証明書よりも高価であり、発行にもより時間がかかるが、Webサイトの信頼性は高まる。

 なお、DV、OV、EV、どのサーバー証明書を選んでも、通信の暗号化の強度は同じである。

サーバー証明書購入時の選択のポイント

 まずは、どういったWebサイトにどのサーバー証明書が必要なのかを説明しよう。

 DV証明書は安価かつ迅速に発行できる半面、悪意のある類似ドメイン名のサイトを開設されるというリスクに対抗できない。逆に言えば、キャンペーンサイトや期間限定のサイト、イントラネット内のサイトのように、悪意のある類似のサイトを開設されるリスクが少ない場合はDV証明書でも十分なことが多い。その他のサイトでも、リスクを受容のうえ、DV証明書を導入するという判断はあり得る。

 また、本番環境と同じ状態で公開されたテスト用のサイト、いわゆるステージングサイトも、DV証明書をインストールすべきである。ステージングだからといってサーバー証明書を省略したり自己署名証明書などで済ませたりはしないでほしい。というのも、ステージングサイトでサーバー証明書が省略されると、クッキーのセキュア属性欠落などの脆弱性を見落としてしまい、最悪、その脆弱性が本番サイトにまで露出してしまうことがあるためだ。

 個人情報を取得するサイトであれば、最低でもOV証明書、できればEV証明書の導入を検討した方がよいだろう。

 次に、認証局の信頼性を見据えた選択のポイントを解説しよう。

 認証局の信頼性を裏付けるものは、認証局運用規程と監査である。したがって、認証局の信頼性をはかるには、サーバー証明書を購入しようとしている認証局事業者が用意している認証局運用規程を読み、またどのような監査を受けているかを確認するとよいだろう。認証局運用規程はCPS(Certificate Practise Statement)と略されるもので、通常、RFC3647に準拠した項目から成り立っている。複数の事業者を検討対象としているのであれば、項目を比較することで運用の違いが見えてくる。

 一方、監査の状況を製品選択のポイントとするのは、現状では非常に難しい。

 そのことを示す事案として、米シマンテックの認証局に関する事件が挙げられる。この事件は「google.com」などに対するテスト証明書を無断で発行していたことを発端として、シマンテックの認証局における運用の不備が次々と発覚したものである。米グーグルが2017年9月に同社が提供するWebブラウザーChromeのバージョン70以降では、シマンテックが発行したサーバー証明書を「信頼できない」として受け入れないことを発表。結果、シマンテックが発行したサーバー証明書の多くがChromeブラウザーで無効とみなされる事態に発展して認証局の信用が失墜し、最終的にはシマンテックは認証局事業そのものを手放すこととなった。現在はサーバー証明書サービス大手の米デジサートが引き継いでいる。

 サーバー証明書の信頼性を揺るがす事件がメジャーな認証局で発生したことは大きな衝撃であり、多くのWebサイト運営者が対応に追われた。しかし、サーバー証明書を購入する立場でこのような事案を予測できるかというと、まず無理であろう。

 そこで、認証局の信用が失われてサーバー証明書の入れ替えを強いられる事態もあり得ると想定し、あらかじめ対応方針を定めておくことをお勧めする。

細野 英朋
EGセキュアソリューションズ セキュリティエンジニア
細野 英朋 専門は脆弱性診断、セキュリティ要件コンサルティング。大学では工業デザインやソフトウエアUIを研究。前職のIIJにて、Webアプリケーション開発からテクニカルサポートに至るまでをオールラウンドにこなしつつ、JPCERT/CCに約4年間出向し、インシデント対応支援・セキュリティ情報分析などにも従事。EGセキュアソリューションズでは、培ったセキュリティに関する知見をもとに脆弱性診断やコンサルティングをこなす。ブロックチェーン技術のセキュリティにも取り組んでいる。