AirWatch の証明書ピン留め (ピニング) の概要

証明書ピン留め (ピニング) について

「証明書ピン留め」または「証明書ピニング」とは、エンドポイント サーバの SSL (Secure Sockets Layer) 公開鍵を、通信を開始するアプリケーションに「ピン留めする」、つまりアプリケーションと事前に共有しておくプロセスのことを指しています。これによりアプリケーションは明確に信頼されたサーバとだけ通信できるようになり、中間者攻撃 (MITM 攻撃) を防ぐことができます。この場合のアプリケーションとは、インターネット ブラウザ、市販のアプリケーション、オンライン ゲーム、モバイル アプリなどです。

証明書ピン留めを使用しないと、デバイスやシステムが攻撃者に侵入された場合、内部の認証局によって署名された独自の SSL 証明書を作成され、それを利用してそのデバイス/システムと攻撃者が用意した証明書との間で信頼された接続を確立されてしまうという攻撃を受ける可能性があります。グローバル認証局のひとつが攻撃者に侵入された場合にも同様のことが起こりえます。証明書ピン留めを適切に実装することで、このような攻撃は不可能になります。

証明書ピン留めの詳細情報と AirWatch でのサポート状況は、『VMware AirWatch TLS Public Key Pinning White Paper』(VMware AirWatch TLS 公開鍵ピン留めに関するホワイト ペーパー) を参照してください。

 

AirWatch での証明書ピン留め

証明書ピン留めが AirWatch に導入されたのはバージョン 9.0、8.4.5、および 8.3.10 からで、現時点では「ソフト フェイル」の手法が使用されています。これは、証明書ピン留めの検証に失敗しても通信接続が終了しないということです。この場合、検証失敗がシステムのログに記録されますが、接続は確立されたままになります。この手法は AirWatch チームにとって、ある程度の期間にわたりピン留めの実装を検証し、各環境で確実に安定稼働するようにできる、という利点があります。

しかし、将来的には「ハード フェイル」への移行を計画しています。これにより、証明書ピン留めの検証に失敗した場合、通信接続は終了するようになります。移行の時期などが決まり次第、この記事を更新してお知らせします。この記事の受信登録 (SUBSCRIBE) を行い、AirWatch での証明書ピン留めの実装状況について、常に最新の情報を入手できるようにしてください。

AirWatch での証明書ピン留めは、加入デバイスと AirWatch サービス群、および企業がその TLS 証明書を管理しているサイトやサービスとの間での TLS (Transport Layer Security) 通信で使用されています。AirWatch コンソールで構成できるピン留めには、「デバイス サービス ピン」と「AUX ピン」の 2 種類があります。どちらも AirWatch コンソールの システム > セキュリティ > SSL ピン留めSSL ピン留め ページで構成できます。

デバイス サービス証明書には、プライマリ キーとしてピン留めされた公開鍵が含まれています。SSL ピン留め オプションを有効にした場合、この証明書は必須です。このオプションを有効にする際は、SSL ピン留め ページでデバイス サービスの証明書をアップロードする必要があります。サブ組織グループの管理者は、この設定をオーバーライドできません。

さらに、AirWatch アプリケーションから利用されている他のサーバについても証明書をピン留めできます。たとえば、ACC、SEG、E メール通知サービス、AirWatch Tunnel などのサービスはすべて、ピン留めすることができます。実際のところ、これは AirWatch サービスだけに有効な機能ではありません。管理者が正しい証明書をアップロードできる TLS 対応サービスであればすべて、ピン留めすることができます。このようなサーバの証明書は AirWatch のクラウド信頼サービスではなく、デバイス サービス サーバを介して配布されます。

注:貴社で TLS サーバ証明書を管理していないサイトに対してピン留めすることは推奨しません。証明書は任意のタイミングで有効期限が切れたり置き換えられたりする可能性があるため、管理者が事前に新しい証明書を入手できないと、ピン留めが正しく機能しない期間が生じ、その間ユーザーは必要なリソースにアクセスできなくなってしまいます。

AirWatch での SSL ピン留めは「信頼サービス」を介して機能します。したがって、AirWatch を利用するデバイス/サービスはすべて、クラウドでホストされた AirWatch の信頼サービス サーバにアクセスできる必要があります。AirWatch クラウドにアクセスできない閉域ネットワーク上のオンプレミス環境では、環境内に独自の信頼サービスをインストールする必要があります。信頼サービスは通常、デバイス サービス サーバにインストールしますが、別のサーバを利用することも可能です。オンプレミスの信頼サービスは、AirWatch で SSL ピン留めが有効になっている場合にクラウドの信頼サービスが実行する処理フローを、クラウドの信頼サービスに代わって実行します。SSL ピン留めを使用する閉域環境において信頼サービスが利用可能になっていないと、デバイスは加入できません。

 

エラーと通知

AirWatch コンソールの今後のリリースでは、証明書ピン留めを使った接続に関するエラー情報などを管理者に通知する機能が追加されます。この通知には次の 2 つのタイプがあります。

  • 静的な通知:この通知には、デバイスからの接続が失敗する事態を回避するために、お客様に実施していただく必要があるアクションや確認についての説明が含まれています。実施すべきアクションのひとつは、送信プロキシの設定を確認して自動検出サーバ URL へのトラフィックの例外を追加すること、または閉域ネットワーク展開用にオンプレミスの信頼サービスをインストールすることです。
  • デバイス イベントに対応した通知:この通知は、デバイスからのピン留めを使った接続に関して何らかのエラーが発生した場合に表示されます。

 

証明書ピン留めの詳細は、ガイド『How to Configure SSL Pinning in AirWatch』(AirWatch での SSL ピン留め構成方法) を参照してください。

免責事項:これは英文の記事「Introduction to Certificate Pinning in AirWatch」の日本語訳です。記事はベストエフォートで翻訳を進めているため、ローカライズ化コンテンツは最新情報ではない可能性があります。最新情報は英語版の記事で参照してください。

Have more questions? Submit a request

3 Comments

Article is closed for comments.