Share via


關於傾印加密

傾印加密可用來加密系統所產生的損毀傾印和即時傾印。 傾印會使用針對每個傾印產生的對稱加密金鑰進行加密。 接著,此金鑰本身會使用主機受信任系統管理員所指定的公開金鑰來加密 (損毀傾印加密金鑰保護裝置)。 這可確保只有具有相符私密金鑰的人員才能解密,因此存取傾印的內容。 這項功能會運用在受防護網狀架構中。 注意:如果您設定傾印加密,也停用 Windows 錯誤報告。 WER 無法讀取加密的損毀傾印。

設定傾印加密

手動設定

若要使用登錄開啟傾印加密,請在 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl 下方設定下列登錄值

值名稱 Type
DumpEncryptionEnabled 下載 1 以啟用傾印加密,0 以停用傾印加密
EncryptionCertificates\Certificate.1::PublicKey 二進位 公開金鑰 (RSA,2048 Bit) 應該用於加密傾印。 這必須格式化為 BCRYPT_RSAKEY_BLOB
EncryptionCertificates\Certificate.1::Thumbprint String 憑證指紋可在解密損毀傾印時,允許在本機憑證存放區中自動查閱私密金鑰。

使用指令碼進行設定

為了簡化設定,範例指令碼可用來根據憑證的公開金鑰來啟用傾印加密。

  1. 在受信任的環境中:使用 2048 位 RSA 金鑰建立憑證並匯出公用憑證
  2. 在目標主機上:將公用憑證匯入至本機憑證存放區
  3. 執行範例設定指令碼
    .\Set-DumpEncryptionConfiguration.ps1 -Certificate (Cert:\CurrentUser\My\093568AB328DF385544FAFD57EE53D73EFAAF519) -Force
    

解密加密傾印

若要解密現有的加密傾印檔案,您必須下載並安裝適用於 Windows 的偵錯工具。 此工具集包含 KernelDumpDecrypt.exe,可用來解密加密傾印檔案。 如果包含私密金鑰的憑證存在於目前使用者的憑證存放區中,您可以解密傾印檔案,方法是呼叫

    KernelDumpDecrypt.exe memory.dmp memory_decr.dmp

解密之後,WinDbg 之類的工具可以開啟解密的傾印檔案。

針對傾印加密進行疑難排解

如果在系統上啟用傾印加密,但沒有產生傾印,請檢查系統 System 的事件記錄檔中是否有 Kernel-IO 事件 1207。 無法初始化傾印加密時,會建立此事件並停用傾印。

詳細的錯誤訊息 緩和的步驟
遺漏公開金鑰或指紋登錄 檢查這兩個登錄值是否存在於預期的位置
公開金鑰無效 請確定儲存在 PublicKey 登錄值中的公開金鑰會儲存為 BCRYPT_RSAKEY_BLOB
不支援的公開金鑰大小 目前僅支援 2048 位 RSA 金鑰。 設定符合此需求的金鑰

也請檢查 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl\ForceDumpsDisabled 底下的值 GuardedHost 是否設定為 0 以外的值。 這會完全停用損毀傾印。 如果是這種情況,請將它設定為 0。