BCD 設定と BitLocker

IT 担当者向けのこのトピックでは、BitLocker で使われる BCD 設定について説明します。

オペレーティング システムのボリューム上にある保存データを保護する場合、ブート プロセス中、BitLocker が最後に有効、再開、または回復されたため、BitLocker はセキュリティの影響を受けやすいブート構成データ (BCD) の設定が変更されていないかを検証します。

BitLocker と BCD 設定

Windows 7 と Windows Server 2008 R2 の場合、BitLocker は、winload、winresume、memtest の各プレフィックスと共にほぼすべての BCD 設定を検証していました。ただし、この高度な検証により、BitLocker は無害な設定変更の回復モードに移行していました。たとえば、言語パックを適用すると、BitLocker は回復モードに移行してしまいます。

Windows 8、Windows Server 2012、それ以降のオペレーティング システムの場合、BitLocker は検証済み BCD 設定を絞り込み、BCD 検証の問題の原因となる無害な変更項目を減らします。検証プロファイルから特定の BCD 設定を除外する際にリスクがあると考える場合は、任意の検証設定に合うように BCD 検証範囲を広げることができます。または、既定の BCD 設定が無害な変更の回復を常にトリガーしている場合は、検証プロファイルからその BCD 設定を除外できます。

セキュア ブートが有効な場合

UEFI ファームウェアを搭載するコンピューターは、セキュア ブートを使ってブートのセキュリティを拡張します。BitLocker でのプラットフォームや BCD の整合性の検証にセキュア ブートを使うように [セキュア ブートによる整合性の検証を許可する] グループ ポリシーで定義している場合、[拡張ブート構成データ検証プロファイルを使用する] グループ ポリシーは無視されます。

セキュア ブートを使う利点の 1 つは、ブート中に回復イベントをトリガーせずに BCD 設定を修正できることです。セキュア ブートは、BitLocker と同じ BCD 設定を強制的に適用します。セキュア ブートによる BCD の強制適用は、オペレーティング システム内から構成できません。

BCD 検証設定のカスタマイズ

BCD 設定を修正するため、BitLocker は、IT Pro が、[拡張ブート構成データ検証プロファイルを使用する] グループ ポリシー設定を有効化して構成することで、プラットフォーム検証プロファイルから BCD 設定を追加または除外するかどうかを検証します。

BitLocker の検証のために、BCD 設定は、Microsoft の特定のブート アプリケーション セットと関連付けられています。BCD 設定は、グループ ポリシー設定に入力された BCD 設定とプレフィックスを関連付けることで、特定のブート アプリケーションと関連付けられるか、すべてのブート アプリケーションに適用されます。プレフィックス値には次のようなものがあります。

  • winload

  • winresume

  • memtest

  • all

すべての BCD 設定では、16 進数 (hex) の値または「フレンドリ名」のいずれかをプレフィックス値と組み合わて指定します。

BitLocker が回復モードに移行し、イベント ログ (イベント ID 523) に記録されると、BCD 設定の 16 進数値が報告されます。16 進数値は、回復イベントの原因となる BCD 設定を一意に識別します。

bcdedit.exe /enum all」コマンドを使うと、お使いのコンピューター上の BCD 設定のフレンドリ名を簡単に取得できます。

すべての BCD 設定にフレンドリ名が付くわけではありません。この設定の場合、16 進数値が除外ポリシーを構成する唯一の方法です。

[拡張ブート構成データ検証プロファイルを使用する] グループ ポリシー設定で BCD 値を指定する場合は、次の構文を使います。

  • ブート アプリケーション プレフィックスを使って設定にプレフィックスを指定する

  • コロン「:」を追加する

  • 16 進数値またはフレンドリ名を追加する

  • 複数の BCD 設定を入力する場合は、新しい行に各 BCD 設定を入力する必要があります。

たとえば、「winload:hypervisordebugport」と「winload:0x250000f4」のいずれも同じ値を生成します。

すべてのブート アプリケーションに適用される設定は、個別のアプリケーションにのみ適用される場合がありますが、その逆は当てはまりません。たとえば、「all:locale」または「winresume:locale」のいずれかを指定できますが、bcd 設定「win-pe」はすべてのブート アプリケーションには適用されません。「winload:winpe」は有効ですが、「all:winpe」は無効です。ブート デバッグを制御する設定 (「bootdebug」または 0x16000010) は常に検証されており、指定したフィールドに追加されても効果はありません。

  

グループ ポリシー設定で BCD エントリを構成する場合に注意してください。ローカル グループ ポリシー エディターは BCD エントリの正確性を検証しません。指定したグループ ポリシー設定が無効な場合、BitLocker は有効化に失敗します。

 

既定の BCD 検証プロファイル

次の表は、Windows 8、Windows Server 2012、およびそれ以降のオペレーティング システムの BitLocker で使われる既定の BCD 検証プロファイルを示しています。

16 進数値 プレフィックス フレンドリ名

0x11000001

all

device

0x12000002

all

パス

0x12000030

all

loadoptions

0x16000010

all

bootdebug

0x16000040

all

advancedoptions

0x16000041

all

optionsedit

0x16000048

all

nointegritychecks

0x16000049

all

testsigning

0x16000060

all

isolatedcontext

0x1600007b

all

forcefipscrypto

0x22000002

winload

systemroot

0x22000011

winload

kernel

0x22000012

winload

hal

0x22000053

winload

evstore

0x25000020

winload

nx

0x25000052

winload

restrictapiccluster

0x26000022

winload

winpe

0x26000025

winload

lastknowngood

0x26000081

winload

safebootalternateshell

0x260000a0

winload

デバッグ

0x260000f2

winload

hypervisordebug

0x26000116

winload

hypervisorusevapic

0x21000001

winresume

filedevice

0x22000002

winresume

ファイル パス

0x26000006

winresume

debugoptionenabled

 

BCD 設定が無視されるすべてのフレンドリ名一覧

次は、既定では無視されるフレンドリ名を持つ BCD 設定の詳細な一覧です。これらの設定は、BitLocker の既定の検証プロファイルには含まれませんが、BitLocker で保護されたオペレーティング システム ドライブのロック解除を許可する前に、これらの設定のいずれかを検証する必要がある場合は追加することができます。

  

その他の BCD 設定では、16 進数値はありますが、フレンドリ名はありません。これらの設定はこの一覧には含まれていません。

 

16 進数値 プレフィックス フレンドリ名

0x12000004

all

description

0x12000005

all

locale

0x12000016

all

targetname

0x12000019

all

busparams

0x1200001d

all

key

0x1200004a

all

fontpath

0x14000006

all

inherit

0x14000008

all

recoverysequence

0x15000007

all

truncatememory

0x1500000c

all

firstmegabytepolicy

0x1500000d

all

relocatephysical

0x1500000e

all

avoidlowmemory

0x15000011

all

debugtype

0x15000012

all

debugaddress

0x15000013

all

debugport

0x15000014

all

baudrate

0x15000015

all

channel

0x15000018

all

debugstart

0x1500001a

all

hostip

0x1500001b

all

port

0x15000022

all

emsport

0x15000023

all

emsbaudrate

0x15000042

all

keyringaddress

0x15000047

all

configaccesspolicy

0x1500004b

all

integrityservices

0x1500004c

all

volumebandid

0x15000051

all

initialconsoleinput

0x15000052

all

graphicsresolution

0x15000065

all

displaymessage

0x15000066

all

displaymessageoverride

0x16000009

all

recoveryenabled

0x1600000b

all

badmemoryaccess

0x1600000f

all

traditionalkseg

0x16000017

all

noumex

0x1600001c

all

dhcp

0x1600001e

all

vm

0x16000020

all

bootems

0x16000046

all

graphicsmodedisabled

0x16000050

all

extendedinput

0x16000053

all

restartonfailure

0x16000054

all

highestmode

0x1600006c

all

bootuxdisabled

0x16000072

all

nokeyboard

0x16000074

all

bootshutdowndisabled

0x1700000a

all

badmemorylist

0x17000077

all

allowedinmemorysettings

0x22000040

all

fverecoveryurl

0x22000041

all

fverecoverymessage

0x31000003

all

ramdisksdidevice

0x32000004

all

ramdisksdipath

0x35000001

all

ramdiskimageoffset

0x35000002

all

ramdisktftpclientport

0x35000005

all

ramdiskimagelength

0x35000007

all

ramdisktftpblocksize

0x35000008

all

ramdisktftpwindowsize

0x36000006

all

exportascd

0x36000009

all

ramdiskmcenabled

0x3600000a

all

ramdiskmctftpfallback

0x3600000b

all

ramdisktftpvarwindow

0x21000001

winload

osdevice

0x22000013

winload

dbgtransport

0x220000f9

winload

hypervisorbusparams

0x22000110

winload

hypervisorusekey

0x23000003

winload

resumeobject

0x25000021

winload

pae

0x25000031

winload

removememory

0x25000032

winload

increaseuserva

0x25000033

winload

perfmem

0x25000050

winload

clustermodeaddressing

0x25000055

winload

x2apicpolicy

0x25000061

winload

numproc

0x25000063

winload

configflags

0x25000066

winload

groupsize

0x25000071

winload

msi

0x25000072

winload

pciexpress

0x25000080

winload

safeboot

0x250000a6

winload

tscsyncpolicy

0x250000c1

winload

driverloadfailurepolicy

0x250000c2

winload

bootmenupolicy

0x250000e0

winload

bootstatuspolicy

0x250000f0

winload

hypervisorlaunchtype

0x250000f3

winload

hypervisordebugtype

0x250000f4

winload

hypervisordebugport

0x250000f5

winload

hypervisorbaudrate

0x250000f6

winload

hypervisorchannel

0x250000f7

winload

bootux

0x250000fa

winload

hypervisornumproc

0x250000fb

winload

hypervisorrootprocpernode

0x250000fd

winload

hypervisorhostip

0x250000fe

winload

hypervisorhostport

0x25000100

winload

tpmbootentropy

0x25000113

winload

hypervisorrootproc

0x25000115

winload

hypervisoriommupolicy

0x25000120

winload

xsavepolicy

0x25000121

winload

xsaveaddfeature0

0x25000122

winload

xsaveaddfeature1

0x25000123

winload

xsaveaddfeature2

0x25000124

winload

xsaveaddfeature3

0x25000125

winload

xsaveaddfeature4

0x25000126

winload

xsaveaddfeature5

0x25000127

winload

xsaveaddfeature6

0x25000128

winload

xsaveaddfeature7

0x25000129

winload

xsaveremovefeature

0x2500012a

winload

xsaveprocessorsmask

0x2500012b

winload

xsavedisable

0x25000130

winload

claimedtpmcounter

0x26000004

winload

stampdisks

0x26000010

winload

detecthal

0x26000024

winload

nocrashautoreboot

0x26000030

winload

nolowmem

0x26000040

winload

vga

0x26000041

winload

quietboot

0x26000042

winload

novesa

0x26000043

winload

novga

0x26000051

winload

usephysicaldestination

0x26000054

winload

uselegacyapicmode

0x26000060

winload

onecpu

0x26000062

winload

maxproc

0x26000064

winload

maxgroup

0x26000065

winload

groupaware

0x26000070

winload

usefirmwarepcisettings

0x26000090

winload

bootlog

0x26000091

winload

sos

0x260000a1

winload

halbreakpoint

0x260000a2

winload

useplatformclock

0x260000a3

winload

forcelegacyplatform

0x260000a4

winload

useplatformtick

0x260000a5

winload

disabledynamictick

0x260000b0

winload

ems

0x260000c3

winload

onetimeadvancedoptions

0x260000c4

winload

onetimeoptionsedit

0x260000e1

winload

disableelamdrivers

0x260000f8

winload

hypervisordisableslat

0x260000fc

winload

hypervisoruselargevtlb

0x26000114

winload

hypervisordhcp

0x21000005

winresume

associatedosdevice

0x25000007

winresume

bootux

0x25000008

winresume

bootmenupolicy

0x26000003

winresume

customsettings

0x26000004

winresume

pae

0x25000001

memtest

passcount

0x25000002

memtest

testmix

0x25000005

memtest

stridefailcount

0x25000006

memtest

invcfailcount

0x25000007

memtest

matsfailcount

0x25000008

memtest

randfailcount

0x25000009

memtest

chckrfailcount

0x26000003

memtest

cacheenable

0x26000004

memtest

failuresenabled