PIN がパスワードよりも優れている理由
Windows 10 の Microsoft Passport を使うと、ユーザーは PIN を使ってデバイスにサインインできます。PIN とパスワードの違い (および PIN が優れている理由)
一見、暗証番号 (PIN) はパスワードとよく似ています。PIN は数字の組み合わせであることが一般的ですが、エンタープライズ ポリシーによっては、特殊文字や大文字と小文字を含む複雑な PIN が使われることもあります。この場合、アカウントのパスワードや複雑な Passport PIN として、t758A! のような文字列を使うことができます。PIN がパスワードよりも優れている理由は、その構造 (長さや複雑さ) にあるのではなく、PIN がどのように機能するかという点にあります。
PIN はデバイスに関連付けられる
パスワードと Passport PIN の重要な違いの 1 つとして、PIN は、その PIN が設定された特定のデバイスに関連付けられます。その PIN は、その特定のハードウェアを持っていない人には役に立ちません。 パスワードが盗まれた場合は、被害を受けたアカウントにどこからでもサインインされる可能性があります。しかし、PIN が盗まれたとしても、物理デバイスも盗まなければその PIN は役に立ちません。
PIN を設定した本人でさえも、その特定のデバイス以外で同じ PIN を使うことはできません。複数のデバイスにサインインする場合は、各デバイスで Passport をセットアップする必要があります。
PIN はデバイスにローカルである
パスワードはサーバーに転送されるため、転送中に傍受されたり、サーバーから盗まれたりする可能性があります。 一方、PIN はデバイスにローカルであり、どこにも転送されず、サーバー上に保存されることもありません。
PIN の作成時には、ID プロバイダーとの信頼関係が確立され、認証に使われる非対称キー ペアが作成されます。PIN を入力すると、認証キーのロックが解除され、認証サーバーに送信される要求がそのキーで署名されます。
注
認証時に Passport でどのように非対称キー ペアが使われるかについて詳しくは、「Microsoft Passport ガイド」をご覧ください。
PIN はハードウェアによってサポートされる
Passport PIN は、トラステッド プラットフォーム モジュール (TPM) チップによって支えられています。TPM は、暗号化操作を実行するために設計されたセキュアな暗号プロセッサです。このチップには、改ざんに強い複数の物理セキュリティ メカニズムが搭載されており、悪意のあるソフトウェアが TPM のセキュリティ機能を破ることはできません。Windows 10 Mobile に対応したすべての電話と最新の多くのノート PC には、TPM が搭載されています。
ユーザーのキー マテリアルは、ユーザー デバイスのトラステッド プラットフォーム モジュール (TPM) 内で生成され、使うことができます。これにより、キー マテリアルを取得して再利用しようとする攻撃者から保護することができます。Microsoft Passport は非対称キー ペアを使うため、ユーザーがアクセスする ID プロバイダーや Web サイトのセキュリティが侵害されている場合でも、ユーザーの資格情報が盗まれることはありません。
TPM は、PIN のブルート フォース攻撃など、さまざまな既知の潜在的な攻撃を防ぎます。正しくない入力が何度も試みられると、デバイスはロックされます。
PIN は複雑にすることができる
Passport PIN には、複雑さ、長さ、有効期限、使用履歴など、パスワードと同じ IT 管理ポリシーのセットが適用されます。PIN は 4 桁のコードにするのが一般的ですが、管理者は、パスワードのように複雑な PIN を要求するポリシーを管理対象のデバイスに設定できます。特殊文字、大文字、小文字、数字の使用を要求または禁止することができます。
ノート PC や電話が盗まれた場合の影響
攻撃者は、物理デバイスにアクセスし、ユーザーの生体認証を偽装したり、PIN を推測したりする方法を見つけない限り、TPM によって保護されている Microsoft Passport の資格情報のセキュリティを侵害することはできません。しかも、このすべてを TPM のハンマリング対策機能がデバイスをロックする前に実行する必要があります。このため、攻撃を成功させるためのハードルはパスワード フィッシング攻撃よりも高くなります。
TPM が搭載されていないノート PC では、BitLocker を有効にし、サインインの失敗回数を制限するポリシーを設定すると、保護を強化することができます。
TPM なしでの BitLocker の構成
ローカル グループ ポリシー エディター (gpedit.msc) を使って、次のポリシーを有効にします。
[コンピューターの構成] > [管理用テンプレート] > [Windows コンポーネント] > [BitLocker ドライブ暗号化] > [オペレーティング システムのドライブ] > [スタートアップ時に追加の認証を要求する]
ポリシーのオプションで、[互換性のある TPM が装備されていない BitLocker を許可する] をオンにして、[OK] をクリックします。
コントロール パネルの [システムとセキュリティ] を開き、[BitLocker ドライブ暗号化] に移動して、保護するオペレーティング システムを選択します。
アカウントのロックアウトのしきい値の設定
ローカル グループ ポリシー エディター (gpedit.msc) を使って、次のポリシーを有効にします。
[コンピューターの構成] > [Windows の設定] > [セキュリティの設定] > [アカウント ポリシー] > [アカウント ロックアウトのポリシー] > [アカウントのロックアウトのしきい値]
許可される無効なログオン試行回数を設定して、[OK] をクリックします。
Windows Hello で PIN が必要な理由
Windows Hello は、Windows 10 の Microsoft Passport の生体認証サインイン機能であり、指紋認識、虹彩認識、顔認識をサポートしています。Windows Hello をセットアップすると、最初に PIN を作成するように求められます。この PIN を使うと、けがをした場合、センサーを利用できない場合、センサーに不具合がある場合など、優先される生体認証が使えないときでも Passport でサインインできます。
生体認証サインインしか構成していない場合、何らかの理由でそのサインイン方法を利用できないときは、アカウント名とパスワードを使ってサインインすることが必要になります。この方法では Passport と同じレベルの保護は提供されません。