
title: NIST SP 800-193 プラットフォームファームウェア回復性ガイドラインの徹底ガイド (PFR) date: 2024-06-15 categories:
現代のコンピューティングプラットフォームは、ハードウェアの設定、ブートストラップ、およびセキュリティ制御を担当する低レベルコードであるファームウェアに大きく依存しています。攻撃者がファームウェアをターゲットとして持続性、特権昇格、およびセキュリティシステムの無効化を狙うにつれ、組織はファームウェアの回復性、つまりファームウェアの改ざんや破損から保護、検出、および回復するための頑丈なガイドラインを採用する必要があります。
これらの懸念に対処するために、米国国立標準技術研究所(NIST)は特別出版物800-193:プラットフォームファームウェア回復性ガイドラインを発行しています。この重要な文書は、プラットフォームファームウェアの整合性、可用性、および信頼性を確保し、プラットフォームのライフサイクル全体にわたって脅威に対処するための技術ガイドラインを定義しています。
本投稿では、プラットフォームファームウェア回復性 (PFR) の初心者から上級者までの技術的概要を提供し、NIST SP 800-193の主要なセクションを探り、実世界の攻撃および回復性戦略を示し、ファームウェア評価およびリカバリのためのハンズオンコードサンプルを提供します。
プラットフォームファームウェアの回復性 (PFR) は、コンピューティングプラットフォームが重要なファームウェアを標的とするサイバー脅威から保護、検出、および回復できるようにするセキュリティアーキテクチャフレームワークです。
PFRの主要な目的は以下の通りです:
PFRフレームワークは、「信頼の根本」が不可欠なインフラで特に重要です。デスクトップ、サーバー、データセンター、IoTデバイス、クラウドシステムがこれに該当します。
NIST SP 800-193:プラットフォームファームウェア回復性ガイドラインは、製造業者、統合業者、および管理者に向けて、ファームウェア層でのプラットフォームセキュリティを強化するための詳細な技術的推奨事項を提供します。このガイドラインの目的は、以下のような攻撃に対してプラットフォームを回復性のある状態にすることです:
NIST SP 800-193はサーバー、デスクトップ、ラップトップ、および組み込みプラットフォームに適用され、プラットフォームの信頼に不可欠な全ての重要なファームウェアコンポーネントに対応しています。
| 用語 | 定義 |
|---|---|
| ファームウェア | ハードウェアの初期化と構成を可能にする低レベルで半永続的なコード |
| プラットフォーム | システムのハードウェア、ファームウェア、およびソフトウェアコンポーネントの複合体 |
| 信頼の根拠 | システム全体に信頼されることができる基礎的な要素 |
| 回復性 | セキュリティイベント後も安全に操作を継続する能力 |
| リカバリイメージ | プラットフォームの整合性を復元するために使用される既知の正常なファームウェアイメージ |
SP 800-193によると、プラットフォームファームウェアには次の回復性能力が提供される必要があります:
プラットフォームは、ファームウェアを不正な変更や破損から保護しなければなりません。これには次のようなものが含まれます:
例:
IntelおよびAMDプラットフォームは、プラットフォームコントローラーハブ (PCH) を使用して、ブート後のフラッシュ書き込みアクセスを防ぐハードウェアロックを有効化します。
プラットフォームは、不正なファームウェアの変更を検出しなければなりません。これには次のようなものが含まれます:
例:
TPMベースの測定ブートは、すべてのブートステージのハッシュを記録し、外部の証明により不整合を検出する暗号化された信頼の連鎖を作成します。
ファームウェアの妥協が検出された場合、リカバリは重要です:
例:
BMCファームウェアが妥協されたサーバーは、バックアップコピーに戻り、機能を復元し、管理者にオプションで通知します。
ファームウェア攻撃は増加しています、例えば:
ここでは、従来のセキュリティコントロール (AV、OSパッチ) では不十分です。ファームウェアレベルの回復性が不可欠です。
回復性のあるプラットフォームファームウェアを構築するには、ハードウェアとソフトウェアの両方の機能が必要です。
バックアップファームウェアイメージを保護された (読み取り専用またはハードウェアロックされた) 領域に保存します。暗号化で確認された更新のみがアクティブなファームウェアを上書きするべきです。
参考実装:
WinbondのTrustME W77Qはハードウェアで保護されたフォールバックイメージを格納し、内部リカバリルーチンのみがアクセス可能。
メインファームウェアが改ざんされたり検証に失敗した場合:
Safe Fallbackは、破損や攻撃が発生した場合に信頼できるリカバリーイメージに戻ることで、ダウンタイムを最小限に抑える強固なリカバリを保証します:
"W77QのSafe Fallback機能は、安全な領域に保存された信頼できるリカバリーイメージに戻ることで、ファームウェアの破損や攻撃からの強固なリカバリを保証します。"
RTM + TPMを組み合わせることで、ファームウェアの整合性の信頼できる検出と報告が可能になります。
NIST SP 800-193を実践で実現するためには、プラットフォームは定期的にファームウェアの整合性を監査し検証する必要があります。
CHIPSEC は、低レベルハードウェア分析とファームウェア整合性チェックのためのオープンソースフレームワークです。
CHIPSECのインストール (Linux):
git clone https://github.com/chipsec/chipsec.git
cd chipsec
sudo python3 setup.py install
ファームウェア領域のスキャン:
sudo chipsec_main -m firmware
出力例:
[*] モジュールfirmwareを実行中
[*] モジュール: ファームウェアの脆弱性チェック
[!] 検出: BIOS領域が書き込み保護されていません!
[+] ファームウェアチェック: 3件合格、1件不合格
ファームウェアイメージ領域のハッシュを作成し、既知の正常値と比較:
# ファームウェアダンプのSHA256ハッシュを計算
sha256sum /path/to/firmware.bin
比較を自動化:
HASH_KNOWN_GOOD="deadbeef1234567890abcdef"
HASH_CURRENT=$(sha256sum /path/to/firmware.bin | awk '{print $1}')
if [ "$HASH_KNOWN_GOOD" == "$HASH_CURRENT" ]; then
echo "ファームウェアは信頼されています。"
else
echo "ファームウェアの整合性が損なわれました!"
fi
BIOS/UEFIイベントからファームウェアのログを収集したと仮定して、以下は基本的なPythonパーサーです:
import json
def check_bios_events(log_file):
with open(log_file, 'r') as f:
logs = json.load(f)
for event in logs:
if "unauthorized update" in event['message'].lower():
print(f"警告: {event['timestamp']} - {event['message']}")
if __name__ == "__main__":
check_bios_events("/var/log/firmware_events.json")
UEFI Secure Boot は、暗号化されたブートローダー/ドライバーのみを読み込むことでファームウェア回復性と統合されます。これはプレブート環境を保護しますが、回復性はSecure Bootを回避する攻撃 (例えば、ハードウェアフラッシュの書き換え) を検出し回復することを伴います。
ハードウェア信頼の根拠として、FPGAまたはカスタム ASIC を使用してブートクリティカルなファームウェアの初期ハッシュを実行します。その不変の性質により、下流のファームウェアが破損している場合でも、測定により異常が明らかになります。
新しいアプローチでは、機械学習を使用してファームウェアイベントストリームの異常なパターン (予期しない再フラッシュ、ハッシュの不一致、行動の変化) を分析し、ファームウェアに焦点を当てた攻撃のプロアクティブで適応的な検出を実現しています。
ファームウェアに基づく攻撃は、OSを再インストールしたりソフトウェアをパッチするだけでは根絶できない高度な持続的脅威です。NIST SP 800-193 プラットフォームファームウェア回復性ガイドラインは、プラットフォームを基盤から保護するための重要な標準です。保護、検出、回復という層状のアプローチを採用することで、組織は最も持続的な攻撃者から身を守り、ハードウェアを保護し、運用の整合性を維持できます。
強力な方針、回復性のあるハードウェア/ファームウェア設計、および継続的な監査能力を組み合わせることで、敵対者に提供される攻撃面を大幅に減らすと共に、妥協が発生した際の迅速な復旧と最小限の中断を保証します。
このページは、「NIST SP 800-193、ファームウェアの回復性、プラットフォームファームウェアセキュリティ、PFR、信頼の根拠、ファームウェアの保護とリカバリ、サイバーセキュリティガイドライン、ファームウェアの整合性、および信頼できるリカバリーイメージ」などの検索用語に最適化されています。
このコンテンツが価値あるものだと感じたなら、私たちの包括的な47週間のエリートトレーニングプログラムで何が達成できるか想像してみてください。ユニット8200の技術でキャリアを transformed した1,200人以上の学生に参加しましょう。