注:本文不涉及专业技术细节,放心食用
Why
为什么要加密磁盘?
电脑丢失/硬盘丢失的情况下,
bitlocker可以保护数据,不被人轻易访问到.
保护硬盘中的操作系统免受篡改.没有开启bitlocker的情况下,Windows的开机密码可被轻易绕过,
但如果开了bitlocker,一般的黑阔选手也就没辙了,可以拦住绝大部分人登录你的操作系统.硬盘或存储器中,常常保存着我们其他账号的信息,
磁盘和系统这一层面的沦陷,可能导致个人所有账号密码都被泄露.
比如我们习惯在使用Chrome时,选择记住账号密码,这些内容基本上等于明文可见的状态.
这意味着,要保障我们各种Web门户账号的安全,绕不开硬盘加密和操作系统的安全问题.
How
- 从Windows Vista时代,
微软开始提供BitLocker功能,
支持用户对磁盘进行加密.
What
启用BitLocker
管理好个人的解锁密码,是正确安全的使用BitLocker的关键所在.
为了适用各种场景和用户习惯,微软给用户提供了多种方式或组合,来进行BitLocker的验证解锁
如 纯口令 | USB密钥 | TPM | (TPM + PIN) | (TPM + PIN + USB密钥)等等每种验证方式的BitLocker开启步骤略有不同,
这里笔者介绍了其中两种方式开启BitLocker.
U盘+BitLocker方式
https://www.jianshu.com/p/e06f8683009b
Yubikey+BitLocker方式
(Yubikey是一种看起来像U盾一样的USB设备,但功能丰富)
https://www.jianshu.com/p/5b091212e84d
还有个TPM+BitLocker的方式,
由于很多电脑没有配TPM模块,
不同TPM的设置方式也各异,
因此笔者只对TPM的性质进行了简单说明:
https://www.jianshu.com/p/088c8ac885ea
BitLocker周边的安全威胁
- BitLocker加密本身是安全的/经过验证的,
对于普通用于来说做好口令/密钥的保存工作,通常不会有太大问题.
但这并非万无一失,在整个启动或解密的过程中,
仍可能存在其他的安全问题,导致绕过BitLocker的验证.
-
密钥管理环节出问题
如口令泄露,
USBKey设备丢失/被复制,
TPM存在漏洞/后门导致被攻破.
(可以做的:管理好密钥,或选择不信任TPM)
-
邪恶女佣攻击(Evil maid attack)
在BIOS UEFI没有保护的情况下,
恶意软件有能力篡改BIOS UEFI,修改启动流程,
接着模仿Bitlocker验证弹出密码界面,
诱导用户输入,截获密码后发送到黑客的邮箱.
然后才进入真正的Bitlocker验证界面.
总结来说,
Bitlocker本身是安全的,
但是在Bitlocker之前的位置,
UEFI/BIOS环节出了问题.
(需要提升UEFI安全)
-
冷启动攻击(Cold boot attack)
PC断电后,
内存中的数据不会立刻消失,
并且内存在低温状态下,数据残留的时间会被延长.
利用这个特性,
有物理权限的黑阔,冷启动计算机,
启动其他磁盘上另一个轻量级的操作系统,
将此时内存状态转储到文件中,
接着展开内容分析,从中挖掘出密钥或敏感信息.
总结来说,
冷启动攻击的目标是内存,
硬盘中一些加密的数据,
读取到内存时,总有解密的时候,
黑阔可以抓住这个时机,展开冷启动攻击,
因为问题出在内存,
全盘加密/TPM等安全方案,
对这种攻击是无效的.
(一些应对措施 开箱监控 物理安全 全内存加密 IntelSGX安全区)
- DMA攻击
在提起DMA攻击之前,
首先得说清啥是DMA设备(Direct memory access)
在PC上,出于性能等一些原因,有这么一类硬件,
可以不经过CPU直接的访问内存.
基于这个特性,
黑阔从这些接口进行突破,
绕开操作系统的各种安全机制,
直接访问内存,完成窃取其中的数据密钥等.(1394 M2 PCIE 雷电等...)
-
DMA之火线攻击
年代比较久远的DMA攻击,
通过1394接口完成.
-
DMA之Thunderspy
近一年两出现的DMA攻击,
基于雷电接口的漏洞,
炒的沸沸扬扬.
- DMA之PCILeech
此外还有些通过PCIE M2等接口进行的.
(甚至还有人尝试从内存和主板连接处飞线,展开DMA攻击)
-
硬盘自身漏洞之Self-Encrypting Deception
自加密特性:
有的硬盘自带加解密功能,
不需要经过CPU内存操作系统,
可独立完成加解密.
廉价的信任:
让硬盘独自完成加解密工作,
节约一大笔CPU内存资源.
当bitlocker发现硬盘有自加密的能力,
就让硬盘自己做加密了,没去用软件方式.
问题所在:
一些硬盘厂商的加密方案做的稀烂,
被研究员和黑客找到漏洞,
还原了加密数据.
(解决方案:在Win10注册表中,禁用"为固定数据驱动器配置基于硬件的加密使用”)
参考
How It Works: Bitlocker
https://www.youtube.com/watch?v=n_B_FCKLyH0
Bitlocker、TPM和系统安全
https://zhuanlan.zhihu.com/p/29840740
The Evil Maid Attack
https://www.youtube.com/watch?v=0uRxRIJc8zU
Cold Boot Attacks on Encryption Keys
https://www.youtube.com/watch?v=Ej-Nr79bVjg
FireWire Memory Attack
https://www.youtube.com/watch?v=Ek-uwQ7qiso
https://www.youtube.com/watch?v=tle4vis_Aes
Thunderspy
https://www.youtube.com/watch?v=7uvSZA1F9os
https://www.zhihu.com/question/394207624/answer/1216679902
基于PCILeech的UEFI DMA攻击
https://www.anquanke.com/post/id/86840
PCILeech - ufrisk
https://github.com/ufrisk/pcileech
Ulf Frisk - Memory Forensics and DMA Attacks with MemProcFS and PCILeech
https://www.youtube.com/watch?v=5DbQr3Zo-XY
Taking DMA Attacks to the Next Level
https://www.youtube.com/watch?v=QeIPcA8zsHk
Self-Encrypting Deception: Weaknesses in the Encryption of Solid State Drives
https://www.youtube.com/watch?v=uE_Q2em9cFM
https://www.howtogeek.com/fyi/you-cant-trust-bitlocker-to-encrypt-your-ssd-on-windows-10/
https://www.computerworld.com/article/3319736/bitlocker-on-self-encrypted-ssds-blown-microsoft-advises-you-switch-to-software-protection.html