web-dev-qa-db-ja.com

FIPS 140-2セキュリティレベル1コンプライアンスにTPMチップまたは同等の能力が必要ですか?

'TPMチップ' は:

情報を保護する暗号化キーを保存できる安全な暗号プロセッサ

FIPS 140-2 は、認定されたハードウェア、ソフトウェア、またはその両方である暗号モジュールを必要とします。

Bitlockerを暗号化モジュールとして使用していた場合、その暗号化モジュールの別の部分としてTPMが必要ですか?

FIPS 140-2セキュリティレベル1コンプライアンスにTPMは必要ですか?

セキュリティレベル2はどうですか?

13
Mark Rogers

いいえ、絶対に違います。 FIPS 140-2レベル1は基本的に、暗号モジュールが次のことを行うテストです。

  • 承認されたアルゴリズムを使用します。
  • それらのアルゴリズムを正しく実装します。
  • ふるいのように漏れません。

ソフトウェアは、FIPS 140レベル1で検証できます。特別なハードウェアを使用する必要はありません。FIPS 140レベル1は、ハードウェアを持つ攻撃者に対する耐性を示していませんハードウェアが評価対象の一部でない限り、アクセスできます。FIPS 140レベル1コンプライアンスの要件がある場合は、Bitlocker(その承認されたバージョン、承認されたバージョンのWindowsオペレーティング環境でシークレットがTPMに格納されているかどうかにかかわらず、FIPSモード)で十分です。

FIPS 140レベル2では、ハードウェアは評価の対象の一部である必要がありますが、セキュリティ要件は改ざんの証拠に限定されています。TPMはそのために過剰です(TPMは改ざん耐性を提供するため、原則として、適切に設計されたTPMベースのシステムは、FIPS 140レベル3に到達する可能性がありますが、粘着点があり、レベル2を超えることは現実的ではありません)。 (秘密でない)FIPS-140検証済みモジュールのリスト 。このリストにはBitlocker + TPMの組み合わせが含まれていないことに注意してください。実際には、FIPS 140でTPMが認定されていません。これまでのレベル2。

TPMを認証する際のハードルの1つは、TPMに多数のアルゴリズムが含まれており、その多くが承認されていないことです。 TPMは、これらのアルゴリズムを無効にしたり、すべてのFIPSモードデータを非FIPSモードデータから分離したりするための優れた方法を提供していません。ただし、これを実行し、操作中だけでなく、追跡する必要があります。 TPMには不揮発性ストレージが含まれているため、TPMの存続期間中(FIPSモードに格納されている秘密鍵が、それが使用されている非FIPSモードにリークされないことをどのように知っていますか?壊れたアルゴリズムで一部のデータを暗号化しますか?)別のハードルは、デバイスの起動時にすべての認定アルゴリズムがセルフテストを実行することです。これにはしばらく時間がかかります(TPMのチップはかなり遅いです)。

ちなみに、FIPSへの準拠に関する法的または契約上の要件がなく、FIPSへの準拠を商用引数として引用する必要がない場合FIPS準拠については心配しないでください。特にレベル1では、特にWindowsのようなセキュリティの実績が乏しい複雑なオープンOSで実行している場合FIPS適合性はセキュリティを示すものではなく、 AviDの法規制コンプライアンスの法則 ここで非常に適用されます:FIPS適合性は、不適合のペナルティのリスクを軽減しますWindowsで実行している場合は、準拠のためではなく、専門家によって作成され、厳格にテストされ、積極的にメンテナンスされているため、Bitlockerの使用をお勧めします。 、ユーザーの50%が1234をPINとして使用し、残りの50%が使用することになる)など、全体的なセキュリティの本当の弱点に集中できます。彼らの誕生日を使うために。

Bitlockerのセキュリティを拡張したい場合は、TPMが適切で安価なスタートです。しかし、それは規制へのコンプライアンスを提供せず、完全なセキュリティも提供しません。

基本的に、Bitlockerへの攻撃として残っているもの(パスフレーズのブルートフォーシングとTPMのLPCバスの物理的なタップを除く)は、ユーザーインターフェイスのなりすまし攻撃です。例えば。ブートローダーを交換して、bitlockerダイアログに入力したパスワードを記録するか、bitlockerダイアログ自体を偽造します。キーが「正しい」ブートローダーにバインドされているため、TPMを使用すると、このような攻撃がさらに困難になる可能性があります。ただし、ブートローダーを交換し、後で取得できるようにパスワードを保存して、元のブートローダーを復元して再起動することもできます。ユーザーとしては、予期しない再起動が表示されるだけで、何が起こったのかについてあまり気にしないでしょう。

この「邪悪なメイド」攻撃はよく知られており、先ほどInvisibleThingsブログで言及されており、ドイツのフラウンホーファーSITも素晴らしいビデオデモを行っています: http://testlab.sit.fraunhofer.de/content/ output/project_results/bitlocker_skimming /

理論的には、TPMはスマートカードのドロップイン代替品として使用できます。 Linux用のTrousersソフトウェアスタックは、実際にその目的のためにPKCS#11インターフェイスをエクスポートします。AFAIKWindows 8では、カードサービスプロバイダーAPIを介してTPMにアクセスできます。ただし、その点では、TPMはPINの総当たり攻撃に対する基本的な保護しか提供しません。既存のTPMには改ざんの証拠に関する保証はありません。さらに、安全なPINエントリメソッドも安全な表示もありません。クラス1スマートカードリーダーと同じように、TPMに向かう途中で誰でもPINを傍受できます。将来的には、信頼できる実行テクノロジ(TXT、SVM、TrustZone)によってユーザーの安全なI/Oが実現する可能性がありますが、これは今日の使用にはほど遠いものです。

6
pepe