ハードウェアセキュリティ:TPM、セキュアブート、ドライブ暗号化
Trusted Platform Module、Secure Boot、フルディスク暗号化(BitLocker、FileVault)を使用し、物理デバイスへのコールドブート攻撃やEvil Maid攻撃を防ぎます。
「ハードウェアセキュリティ:TPM、セキュアブート、ドライブ暗号化」はCoddyKit上の無料Cloud & IT Cert Prepレッスンです。 これはレッスン4/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはCloud & IT Cert Prep学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Cloud & IT Cert Prepコースには全4レッスンが含まれています。
物理ハードウェア攻撃の脅威
攻撃者がデバイスに物理的にアクセスすると、論理的なセキュリティ制御の有効性は大きく低下します。コールドブート攻撃では、RAMを冷却して暗号鍵を残留データから抽出します。Evil Maid攻撃では、デバイスが一時的に放置されている間にブートローダーやOSを改変します。DMA攻撃では、物理ポート(Thunderbolt、FireWire)を使用してメモリを直接読み取ります。TPM、Secure Boot、フルディスク暗号化といったハードウェアセキュリティ機能を組み合わせることで、こうした物理層への攻撃から防御できます。
トラステッド プラットフォーム モジュール(TPM)
トラステッド プラットフォーム モジュール(TPM)は、マザーボードに組み込まれた専用のセキュリティチップで、ハードウェアベースの暗号機能を提供します。TPMには、チップから取り出せない暗号鍵の生成と保存、ブートプロセスの測定(Platform Configuration Registersに各ブートコンポーネントのハッシュを保存)、特定のシステム状態にデータを封印する機能(信頼できる状態のときだけデータを復号可能)、リモートアテステーション(システムが改ざんされていないことをリモートサーバーに証明する機能)があります。
# TPM Platform Configuration Registers (PCRs):
# PCR0: BIOS/UEFI firmware hash
# PCR1: BIOS configuration data
# PCR2: Option ROM code
# PCR3: Option ROM configuration
# PCR4: Master Boot Record (MBR) / bootloader
# PCR5: Partition table
# PCR6: Resume from sleep (S4/S5 state)
# PCR7: Secure Boot state
# If bootloader is replaced (evil-maid attack):
# PCR4 value changes -> TPM detects mismatch
# -> BitLocker requires PIN or recovery key
# (TPM won't unseal disk encryption key)TPM 1.2とTPM 2.0の比較
TPM 1.2がサポートするのはRSA-1024とSHA-1のみで、現在では脆弱と見なされています。TPM 2.0(現在の標準で、Windows 11で必須)は、RSA-2048、ECC P-256、SHA-256、AES-128/256などの最新アルゴリズムと、アルゴリズムアジリティ(新しいアルゴリズムを追加できる機能)をサポートします。また、TPM 2.0は、よりきめ細かな制御を可能にする複数の階層(エンドースメント、ストレージ、プラットフォーム)もサポートします。エンタープライズ環境では、すべてのデバイスでTPM 2.0をハードウェアセキュリティの信頼の基点として使用する必要があります。
Secure Boot:ブートチェーンの保護
Secure Bootは、UEFIファームウェアの機能です。UEFIドライバー、ブートローダー、OSカーネルなど、ブートチェーン内のすべてのソフトウェアを実行前に検証します。ファームウェアのSecure Bootデータベースに登録された鍵で署名されたソフトウェアだけが実行を許可されます。これにより、ブートキット(MBRやブートローダーに感染し、OSのセキュリティソフトウェアより前に読み込まれるマルウェア)や、承認されていないOSのインストールがデバイス上に残り続けることを防ぎます。
# Secure Boot chain verification:
# UEFI firmware (hardwired, immutable)
# -> Verifies: bootloader signature (e.g., Windows Boot Manager)
# Key: Microsoft CA cert in Secure Boot DB
# -> Verifies: OS kernel signature
# Key: Windows production PCA cert
# -> Verifies: kernel drivers (code signing)
# Key: Microsoft WHQL cert
# If bootkit replaces bootloader with unsigned code:
# UEFI: signature check FAILS
# -> System halts, boot denied
# -> Alert: 'Secure Boot violation'
# Evil-maid attack blockedBitLocker:Windowsのフルディスク暗号化
BitLockerは、Microsoftが提供するボリューム全体の暗号化ツールで、Windows 10/11 ProおよびEnterpriseに統合されています。BitLockerは、XTSモードのAES-128またはAES-256を使用してドライブ全体を暗号化します。Active DirectoryまたはAzure ADに保存された回復キー、あるいは起動時の正しいPINやパスワードがなければ、ドライブを取り外して別のシステムに接続した場合でも、暗号化されたデータにはアクセスできません。TPMと併用すると、BitLockerはボリュームのマスターキーを封印し、特定のPCR値に結び付けます。これによりブートの改ざんを検知し、検知した場合は手動での回復を要求します。
# BitLocker protection modes (from least to most secure):
# Mode 1: TPM only
# -> Auto-unlocks if TPM PCR values match (no user input)
# -> Protects against offline attacks (removed drive)
# -> Does NOT protect against evil-maid (OS still boots auto)
# Mode 2: TPM + PIN
# -> Requires PIN at every boot
# -> Protects against evil-maid (attacker can't boot without PIN)
# -> Recommended for laptops
# Mode 3: TPM + startup key (USB)
# -> USB key required at boot
# -> Suitable for servers that must boot unattended (key in USB)
# Recovery: 48-digit recovery key stored in AD/Azure ADFileVault:macOSのフルディスク暗号化
FileVault 2は、macOS向けにAppleが提供するフルディスク暗号化機能です。XTS-AES-128暗号化を使用し、Apple T2チップまたはApple SiliconのSecure Enclaveによって保護されます。FileVaultは起動ボリューム全体を暗号化し、起動時にロックを解除するためユーザーのログインパスワードを要求します。暗号鍵はユーザーアカウントに結び付けられており、パスワードを忘れた場合はiCloudの回復キーで復号できます。会議や空港でMacBookが紛失・盗難に遭うことは少なくないため、エンタープライズ環境のMacノートパソコンではFileVaultが不可欠です。
自己暗号化ドライブ(SED)
自己暗号化ドライブ(SED)は、ドライブのハードウェアコントローラー内で暗号化を行います。暗号化と復号はドライブレベルで実行されるため、OSからは透過的に見えます。SEDはOpal Storage Specification(TCG Opal)に準拠しています。ドライブの電源が切れるとデータは自動的にロックされ、正しい認証キー(AK)でのみロックを解除できます。SEDは、ソフトウェア暗号化と比べてCPUオーバーヘッドがないため性能面で有利です。また、暗号鍵をリセットしてすべてのデータを瞬時に読み取り不能にする暗号消去機能も備えており、ドライブを廃棄するときの即時の安全な消去が可能です。
コールドブート攻撃への防御
コールドブート攻撃は、電源が失われた後もDRAMが数秒から数分間データを保持する性質を悪用します。攻撃者は液体窒素を吹き付けてデータ保持時間を延ばし、その後ライブOSを起動してメモリダンプを読み取り、RAMから暗号鍵を抽出します。防御策には、TPM+PIN(PIN入力後まで鍵がRAMに公開されず、TPM内に保持される)、メモリ暗号化(Intel TMEまたはAMD SMEがメモリコントローラーでRAMの内容を暗号化する)、起動時に物理的なPIN入力を要求すること、そして起動前にRAMをゼロクリアする最新UEFIのメモリ遅延消去機能などがあります。
Measured Bootとリモートアテステーション
Measured BootはTPMを使用して、すべてのブートコンポーネントのハッシュをPCRに記録し、ブートプロセスの改ざん検知可能なログを作成します。リモートアテステーションでは、これらのPCRの測定値をリモートアテステーションサーバーに送信し、信頼できる改変されていないコンポーネントだけでシステムが起動したことを検証します。Microsoft Attestation Service、Microsoft Pluton、Intel TXTなどのエンタープライズ向け技術がリモートアテステーションを実装しています。Zero Trustプラットフォームは、アテステーションレポートをConditional Accessポリシーにおけるデバイスの健全性シグナルとして使用します。信頼されていないデバイス状態になると、追加の認証チャレンジが要求されます。
リムーバブルメディアの暗号化
エンドポイントの暗号化は、管理対象環境の外へ持ち出されるリムーバブルメディアにも適用する必要があります。対象にはUSBドライブ、外付けハードドライブ、SDカードなどがあります。BitLocker To Go(Windows)は、パスワードまたはスマートカードを使用してリムーバブルドライブを暗号化します。macOS Disk Utilityでは、暗号化されたディスクイメージを作成できます。エンタープライズのDLPポリシーをOSレベルで適用し、企業のエンドポイントに接続されたUSBストレージデバイスで暗号化を必須にすることも可能です。暗号化されていないUSBドライブはデータの書き込みをブロックされます。これにより、USBドライブの紛失や盗難によるデータ漏えいを防ぎます。
フルディスク暗号化の鍵管理
フルディスク暗号化のセキュリティは、適切な鍵管理に完全に依存します。回復キーは安全に保管し、暗号化されたデバイスとは別に管理する必要があります。回復キーのコピーをすべて失った組織は、暗号化されたデータへのアクセスを事実上永久に失うことになります。ベストプラクティスとして、BitLockerの回復キーはグループポリシーを使用してActive Directory / Azure ADに自動的に保存し、FileVaultの回復キーはMDM(Jamf/Intune)にバックアップします。また、大規模なエンタープライズ鍵管理にはハードウェアセキュリティモジュール(HSM)を使用し、四半期ごとに復旧手順をテストします。
理解度チェック
このレッスンで扱ったCompTIA Security+(SY0-701)の概念について、理解度を確認しましょう。
レッスンのまとめ
このレッスンでは、TPMがハードウェアによる信頼の基点を提供し、暗号鍵を特定のブート状態に封印すること、Secure Bootがすべてのブートコンポーネントの暗号署名を検証してブートキットを阻止すること、そしてTPM+PINを使用したBitLockerがハードウェアによる鍵保護とブート前認証を組み合わせ、オフラインでのドライブ盗難とEvil Maid攻撃の両方に対抗することを学びました。次は事業継続計画と災害復旧について学び、大規模な障害が発生しても業務を継続できるようにする方法を扱います。
よくある質問
「ハードウェアセキュリティ:TPM、セキュアブート、ドライブ暗号化」レッスンは無料ですか?
はい。「ハードウェアセキュリティ:TPM、セキュアブート、ドライブ暗号化」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Cloud & IT Cert Prepコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Cloud & IT Cert Prepコースには全4レッスンが含まれています。
「ハードウェアセキュリティ:TPM、セキュアブート、ドライブ暗号化」で何を学びますか?
Trusted Platform Module、Secure Boot、フルディスク暗号化(BitLocker、FileVault)を使用し、物理デバイスへのコールドブート攻撃やEvil Maid攻撃を防ぎます。 ブラウザで直接実行するハンズオンコードでCloud & IT Cert Prepを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
Cloud & IT Cert Prepを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのCloud & IT Cert Prepは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン4/4です。
「ハードウェアセキュリティ:TPM、セキュアブート、ドライブ暗号化」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このCloud & IT Cert Prepレッスンでコードを書いて実行できますか?
はい。すべてのCloud & IT Cert Prepレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。
このコースのすべてのレッスン
- 物理アクセス制御:バッジ、ロック、マン・トラップ
- 監視:CCTV、モーションセンサー、ログ記録
- データセンターの環境制御
- ハードウェアセキュリティ:TPM、セキュアブート、ドライブ暗号化