BitLocker磁盘加密

注:本文不涉及专业技术细节,放心食用

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)


    Snipaste_2020-10-04_23-40-15.png


  • 邪恶女佣攻击(Evil maid attack)


    Snipaste_2020-10-04_21-29-17.png

在BIOS UEFI没有保护的情况下,
恶意软件有能力篡改BIOS UEFI,修改启动流程,
接着模仿Bitlocker验证弹出密码界面,
诱导用户输入,截获密码后发送到黑客的邮箱.
然后才进入真正的Bitlocker验证界面.

总结来说,
Bitlocker本身是安全的,
但是在Bitlocker之前的位置,
UEFI/BIOS环节出了问题.
(需要提升UEFI安全)

  • 冷启动攻击(Cold boot attack)


    Snipaste_2020-10-04_21-20-50.png

PC断电后,
内存中的数据不会立刻消失,
并且内存在低温状态下,数据残留的时间会被延长.

利用这个特性,
有物理权限的黑阔,冷启动计算机,
启动其他磁盘上另一个轻量级的操作系统,
将此时内存状态转储到文件中,
接着展开内容分析,从中挖掘出密钥或敏感信息.

总结来说,
冷启动攻击的目标是内存,
硬盘中一些加密的数据,
读取到内存时,总有解密的时候,
黑阔可以抓住这个时机,展开冷启动攻击,
因为问题出在内存,
全盘加密/TPM等安全方案,
对这种攻击是无效的.
(一些应对措施 开箱监控 物理安全 全内存加密 IntelSGX安全区)

  • DMA攻击

在提起DMA攻击之前,
首先得说清啥是DMA设备(Direct memory access)
在PC上,出于性能等一些原因,有这么一类硬件,
可以不经过CPU直接的访问内存.

基于这个特性,
黑阔从这些接口进行突破,
绕开操作系统的各种安全机制,
直接访问内存,完成窃取其中的数据密钥等.(1394 M2 PCIE 雷电等...)

  • DMA之火线攻击


    Snipaste_2020-10-04_22-15-28.png

年代比较久远的DMA攻击,
通过1394接口完成.

  • DMA之Thunderspy


    Snipaste_2020-10-05_00-24-14.png

近一年两出现的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

你可能感兴趣的:(BitLocker磁盘加密)