web-dev-qa-db-ja.com

TPMの利点はリスクを上回りますか?

TPMは本当に価値がありますか?

ウィキペディアによると:

  • 乱数のジェネレータを提供します(それは問題ありません)
  • 限定された使用のための暗号化キーの安全な生成のための機能(それも大丈夫だと思います)
  • リモート認証(安全に聞こえません)

下部のセクションでは、ソフトウェアのリモート検証など、TPMに対するいくつかの批判について言及しています。ユーザーがコンピューターで何を実行できるかを決めるのではなく、製造元です。これは怖いですね。

また、VeraCryptはTPMをサポートしていないため、いくつかの懸念が生じます。彼らがそれを信用しないなら、なぜ私はそうすべきなのでしょうか?

TPMはそれだけの価値があるのでしょうか、それとも不必要な潜在的な障害点に過ぎないのでしょうか。 TPMを搭載したコンピュータをまったく使用しなかった場合、セキュリティとプライバシーはより安全になりますか? VeraCryptを使用したフルディスク暗号化は、最も違法なユースケース(NSA防止)でも十分安全に聞こえます。

そして、TPMモジュールをマザーボードから安全に取り外すことは可能でしょうか?

9
Gillian

脅威モデルによって異なります。 TPMには複数の目的がありますが、最も一般的な目的は測定されたブートです。つまり、TPMはBIOS、 オプションROM 、ブートローダー、その他の機密性の高いブートコンポーネントの整合性を検証し、 悪意のあるメイド攻撃を検出できるようにする または変更されたファームウェア。脅威モデルに、コンピューターのファームウェアまたはソフトウェアを変更できる攻撃者が含まれている場合、TPMは改ざん証拠を提供して、検出されないようにします。

TPMはどのように機能しますか ?あなたがそれに取り掛かるとき、それは実際にはかなり簡単です。 TPMは、さまざまなファームウェアコンポーネントのハッシュを測定します* PCRと呼ばれるレジスタにハッシュを保存します。すべてのハッシュが既知の値と一致する場合、TPMはunsealし、それ自体を使用して任意のデータを復号化できるようにします。復号化するデータはあなた次第です。最も一般的には、ディスク暗号化キーの一部です。すべてのファームウェアとブートソフトウェアに正しいハッシュがない限り、TPMは開封されず、暗号化キーは公開されません。 TPMはさらに多くの用途に使用できますが、考え方は同じです。

*技術的には、TPMはパッシブであり、ファームウェア、ブートローダー、またはその他のデータをアクティブに読み取ることができません。代わりに、 [〜#〜] crtm [〜#〜] と呼ばれるBIOSの読み取り専用コンポーネントがBIOSのハッシュをTPMに送信し、 信頼の連鎖を開始します 。このコンポーネントは読み取り専用で、変更されたBIOSがハッシュについてTPMに嘘をつかないようにします。

TPMはそれだけの価値があるのでしょうか、それとも不必要な潜在的な障害点に過ぎないのでしょうか。 TPMを搭載したコンピュータをまったく使用しなかった場合、セキュリティとプライバシーはより安全になりますか? VeraCryptを使用したフルディスク暗号化は、最も違法なユースケース(NSA防止)でも十分安全に聞こえます。

リモート認証 は、おそらく使用する必要があるものではありません。しかし、それは決して安全ではありません。リモートデバイスが実行しているファームウェアとソフトウェアが既知の正常なハッシュと一致することを、リモートデバイスが評価者に証明できるようにするだけです。マシンをリモートで制御することはできません。リモート接続を行い、データをTPMに送信するのはOSの役割です。 TPM自体は、リモート認証に使用されていることすら認識していません。実際、リモートとはネットワークを介しても意味する必要はありません。 TPMを使用してコンピューターの状態を安全なUSBデバイスにリモートで認証する 非常に巧妙な実装 があります。 TPMがDAAを使用して匿名で署名できること、または 直接匿名認証 のいずれかにより、TPMの一意の秘密キーにプライバシーの問題はありません。

さらに進んで、TPMが役に立たないだけでなく、まったく悪意があると仮定しましょう。それでそれは何ができるでしょうか?まあ、本当に何も。 DMA attack を実行するために必要な LPCバス を介して、いわゆるLDRQ#信号を送信する機能がありません。それができる唯一のことは、実際にはファームウェアが改ざんされているときに「すべて問題ない」と言うことです。つまり、悪意のあるTPMが実行できる最悪の事態は、存在しないふりをして、悪意のあるTPMを悪化させないことです。 TPM。

TPMをマザーボードから安全に取り外すことは完全に可能です。そこにあることを要求するものは何もありません。存在しない場合は、信頼の連鎖を検証してファームウェアが改ざんされていないことを確認することはできません。ただし、最近の多くのCPUにはTPMが統合されていますが、簡単に無効にでき、物理的なものを削除した場合と同じ結果になります。 Windowsの新しいバージョンの中には、起動プロセスを保護するためにTPMの存在を必要とするものがあることに注意してください。 TPMが削除された場合、TPMが不要になるようにOSとUEFIの設定を変更する必要がある場合があります。

下部のセクションでは、ソフトウェアのリモート検証など、TPMに対するいくつかの批判について言及しています。ユーザーがコンピューターで何を実行できるかを決めるのではなく、製造元です。これは怖いですね。

心配なのは、将来、メーカーがTPMを使用して、システムに重要な変更を加えないようにすることです。デフォルトでは、TPMはその所有者のみに従います。システムの現在の状態が正常であるとTPMに通知すると、常にシステムがその状態にあるかどうかが確認されます。悪意のある製造元がTPMを設定して、既知の良好な状態が悪意のあるDRMおよびその他の権利制限ソフトウェアが有効になっている状態であると信じている場合、問題があります。現在のTPMの場合、実行するソフトウェアを決めるのは完全にあなた次第です。彼らはあなたの権利を制限しません。

もう1つの批判は、リモートWebサイトに対して、実行させたいソフトウェアを実行していること、または完全に制御されていないデバイスを使用していることを証明するために使用される可能性があることです。 TPMは、システムのファームウェアが改ざんされていないことをリモートサーバーに証明できます。また、システムのファームウェアがあなたの権利を制限するように設計されている場合、TPMはあなたの権利が十分に削減されており、最新のものを見ることが許可されていることを証明していますあなたが見たかったDRMに乗ったビデオ。ありがたいことに、TPMは現在これを行うために使用されていませんが、テクノロジーはそこにあります。

TPMがローカルに、そしてリモートサーバー(もちろん、OSがネットワークを処理している)に、コンピューターが正しい状態であることを証明できるというのは、行き過ぎた問題です。 「正しい」と見なされるものは、 がTPMを所有する人に依存します 。 TPMを所有している場合、「正しい」とは、ブートキットやその他の改ざんがないことを意味します。一部の企業がTPMを所有している場合、それはシステムの海賊版対策およびDRM機能が完全に機能していることを意味します。今日購入できるPCのTPMは、あなたが所有者です。

また、VeraCryptはTPMをサポートしていないため、いくつかの懸念が生じます。彼らがそれを信頼しないなら、なぜ私はそうすべきなのでしょうか?

VeraCryptは実際にはTPMバージョン1.2のサポートとTPMバージョン2.0の実験的サポートを追加しています VeraCryptリリース1.20 でドキュメントを編集してまだこれを反映していません。もともとTrueCryptの作者はTPMを理解していなかったため、彼らはもともと抵抗力がありました。その目的は、ディスクの暗号化を支援することではなく、ファームウェアおよび重要なブートソフトウェア(VeraCryptブートローダーを含む)が改ざんされていないことを確認することです。

13
forest