田文郁 張靜文 張鵬 張曉燁 廖赟
(南京拓界信息技術有限公司,江蘇南京 210014)
BitLocker(BitLocker Driver Encryption)是微軟公司在 Windows Vista 操作系統內首次提供的一項數據保護功能[1]。Win7/Win8/Win10系列操作系統使用了此安全策略,包括計算機全磁盤加密、磁盤分區加密以及BitLocker To Go移動存儲設備加密等功能。Windows 系統的各個版本不斷改進BitLocker的安全性,從而允許操作系統為更多驅動器和設備提供BitLocker 保護。BitLocker 是扇區級別的加密,它可以對操作系統所在的驅動器進行保護,也可以對普通磁盤的數據進行保護。BitLocker 強大的數據保護功能解決了用戶信息泄露的危險,但同時給電子數據取證帶來了很大挑戰。下面基于Windows分區加密模式下的數據取證的相關問題進行探討,依據BitLocker加密機制,提出面向Clear key保護磁盤數據解密加密的取證方法。
BitLocker 使用全卷加密密鑰FVEK(Full Volume Encryption Key)對驅動器的數據進行加密,FVEK又通過卷主密鑰VMK(Volume Master Key)進行加密,VMK 則可以通過用戶選擇不同的保護密鑰進行加密,包括TPM、PIN碼、啟動密鑰、用戶密碼以及恢復密鑰[2]。BitLocker加密密鑰和保護密鑰的關系圖1所示。

圖1 BitLocker加密密鑰和保護密鑰的關系
(1)全卷加密密鑰(FVEK)。全卷加密密鑰(FVEK)是BitLocker驅動器加密算法中最核心的密鑰,用來加密所選磁盤中的靜態數據,FVEK通過VMK 加密存儲在磁盤加密數據中。FEVK的核心部分以AES 128bit或AES 256bit兩種擴展密鑰的形式存儲,但用戶無論是選擇128bit還是256bit,密鑰的實際長度都是256bit。密鑰的存儲格式圖2所示。可以看到,AES 128bit密鑰僅有前128bit被用來加密,后128bit為空,AES 256bit密鑰256bit都用來進行加密。

圖2 128/256位FVEK密鑰結構圖
(2)卷主密鑰(VMK)。在BitLocker 驅動器加密的密鑰管理系統中,VMK 是第二層密鑰。VMK和FEVK一樣都是存儲在BitLocker的加密卷上。每一個不同的VMK由不同的方式進行加密,通過這些不同方法可以允許用戶通過不同的方式訪問BitLocker加密卷。VMK的存儲格式和FVEK相似,大小為256bit,存儲在多個FVE卷主密鑰結構中。VMK存儲時使用恢復密鑰、外部密鑰或TPM加密。
(1)TPM。可信平臺模塊,是一塊內置在計算機中的微芯片,由CPU、存儲器、I/O、密碼運算器、隨機數產生器和嵌入式操作系統等部件組成[3]。TPM相當于一個“保險柜”,可以將卷主密鑰(VMK)和密碼管理等重要的信息存放在里面。(2)PIN。在TPM之外,用戶使用輸入的數字/字母組合的密鑰來保護卷主密鑰(VMK)。(3)Startup key。使用移動介質存儲的密鑰,可以單獨使用,也可以和TPM組合使用。(4)Rcovory password。用來解密恢復模式的48位數字密鑰。(5)Recovery key。存儲在移動介質中,用來恢復加密數據。(6)Clear key。清除密鑰是存儲在卷上的未受保護的256位密鑰,這種方式對主密鑰沒有保護作用。
Windwos系統允許用戶在不解密BitLocker加密卷的情況下關閉BitLocker,當BitLocker禁用后,系統會向卷元數據塊中寫入一個256bit的密鑰,和使用此密鑰對VMK加密的密文副本。密鑰對應的元數據結構將包含GUID、時間戳、256bit密鑰和VMK的一個加密版本。此時系統可在不需要任何其他信息的情況下解密VMK和FVEK。通過實驗發現,一些為Windows 10系統設計的設備(如Surface),在具有TPM芯片的情況下默認下自動創建必要的分區和初始化加密,并在磁盤的元數據中存儲用Clear key。為了達到對硬盤中的電子數據取證的目標,可采取預處理備存加解密認證模塊,然后啟用Clear Key解密BitLocker加密分區,對分區加密機制進行閑置性處理,由此通過分區解密認證,繼而對電子數據進行獲取,最后將預處理備存加解密認證模塊進行恢復,從而達到數據取證的目的。
在實際案例中,通過Manage-bde -status工具查看設備的加密狀態,如圖3所示為磁盤bitlocker加密狀態圖。BitLocker加密了磁盤已用空間,保護狀態為關閉。但是密鑰保護器顯示找不到,也就是說默認情況啟用的BitLocker加密,其密鑰是不被保護的,即存在明文狀態的Clear Key,可通過Clear Key解密得到VMK,進而解密FVEK,最終解密整個保護卷數據。

圖3 查看磁盤bitlocker加密狀態
BitLocker是Windows主機最常用的一種加密方式,在計算機取證中遇到BitLocker加密的概率也會越來越高。面對不斷完善的磁盤加密技術及種類繁多的加密軟件,電子數據取證未來的研究工作必須攻克現有的難題并不斷地技術創新,以提升我國計算機取證的技術能力,為國家安全穩定做出貢獻。