查看: 3024|回复: 26
收起左侧

[分享] Bitlocker常见的绕过手段与对策。

[复制链接]
Dizziness2929
发表于 2024-8-5 12:51:17 | 显示全部楼层 |阅读模式
本帖最后由 Dizziness2929 于 2024-8-7 16:56 编辑

今天来讲讲我最喜欢的话题:“Bitlocker绕过”。

是的,针对Bitlocker的攻击,正式的名字叫做“Bitlocker绕过”(Bitlocker Bypass),因为根本没有破坏AES加密算法的安全性而是利用了Bitlocker本身的漏洞或错误配置

常见的Bitlocker绕过类型有四种(或者我换句话说:其实也就这四种):

1.撬开你的电脑,在键盘和主机接口(USB?PS/2?)之间安装一个窃听器,此设备会记录(同时可能回传)你的输入内容来间接的K掉Bitlocker。

1.2:或者在没有安全引导保护的电脑上,于引导阶段(Bootkit)窃取Bitlocker恢复密钥(也可以使用感染操作系统的驱动程序Rootkit做到这一点)。

2.当着你的面或者背着你的面(怎么当着你的面不在本文讨论中),在你的电脑上安装一块恶意板卡,此板卡具有DMA(直接内存访问)能力,从整个内存中搜索密钥藏在哪里。

3.橡胶软管攻击(自行搜索这是什么意思)。

4.通过未受保护的TPM总线(SPI总线、LPC总线),窃听TPM和CPU之间的通信内容,然后还原出密钥。






我们先来拆解1、2、3、4这三种方式中,攻击者都对你的设备做了什么不可告人的事情。

1.1:此方法需要你有至少10分钟(视乎攻击者的熟练程度可能更长或更短)不在电脑前的时间,攻击者撬开你的电脑外壳(对于台式机而言,这步不一定存在)在键盘和主板接口之间安装一个定制的窃听设备。

1.2:此方法利用了一个事实:在不存在安全引导的计算机上,Bitlocker默认配置只会验证Windows自身的启动管理器是否被破坏,因此,我们可以在引导启动链条中加入一个恶意软件——这个恶意软件会假装自己是Bitlocker恢复界面,然后骗你给密钥。或者,这个恶意软件已经感染了操作系统(以驱动程序Rootkit的形式),在系统内核空间找密钥。再或者:恶意软件已经感染了UEFI固件。

2:DMA(直接内存访问)技术是1990年代提出并实装于所有现代计算机的技术,此技术允许硬件直接访问整个内存而绕过CPU处理,从而加速硬件运转。不幸的是:恶意设备可以利用这一点,对受害设备注入恶意软件、或者读取受害设备的整个内存来寻找他感兴趣的东西。

3:此攻击方法下,攻击者有能力摁住受害者暴打到让受害者自行交出设备密钥(常见于家暴事件和“数据删除”,顺带一提:感谢我父母,不然我学不会这么多东西)。

4:TPM 2.0规范中尽管写明了“通信加密标准”,也就是TPM与CPU交互时使用加密方式进行通信。不幸的是:微软是一点都没有用。






那么我们该如何对抗以上四种方式呢?

1.1:在你的设备上简单的贴一些贴纸,这个贴纸上面必须要有很难伪造的图案(不需要欧姆龙环那样的东西)、贴纸要具备一旦撕开就无法简单复原的特性、最好同时把螺丝口用环氧树脂完全封死。

举个例子:假设你要寄送电脑,但众所周知某些奸商很喜欢故意修坏你的设备(然后把你设备上好的部件拆下来当料板),你可以在设备板卡上使用不导电记号笔随便涂鸦几下(但你要记住这个涂鸦是怎么画出来的,推荐使用口红来实现这一点)。这样做之后,任何对设备的未授权拆解更换都会被你一眼丁真。

1.2:没有安全引导的情况下,设备抵抗Bootkit的能力会被削弱,所以如果你要用Bitlocker就务必启用安全引导(以验证整个启动链条是否存在未经授权的软件)。对于驱动程序Rootkit,你可以通过简单的打开“内核隔离”来阻止这一点(但不保证有效,请记住:如果一个恶意软件非常的“纯真”,它没有任何反检测手段且只是读取某些数据,那没有什么靠谱的方法来阻止这种东西)。

特别提醒:微星的安全引导实现存在严重的问题

2和4合起来说:

对于DMA攻击,一些主板提供了所谓的“内核DMA保护支持”和“预引导环境DMA保护”这些功能(如图)。

QQ20240805-123124.jpg

但不是每个主板都有,特别是那些所谓的游戏主板很少带这些硬件安全功能。所以如果你其实没那么多超频之类的需求建议绕过这些所谓的“游戏设备主板”。

因此我们可以换一个更便宜的方法来解决两个问题:额外的系统启动前验证。

具体来说,在这里打开:

QQ20240805-123716.jpg

QQ20240805-123644.jpg

QQ20240805-123659.jpg

启动这三个选项后,你的Bitlocker会在加密系统盘时额外问你一句你希望怎么解锁驱动器,在这里你可以选插入U盘或者使用TPM PIN(此PIN受TPM保护,而TPM自带反制暴力猜测PIN码的方法,攻击者在TPM 2.0的反暴力破解限制下一年最多尝试4000次)。

如果没能通过预启动验证,那么TPM就不会释放出磁盘密钥。从而根源上解决两个问题(皆大欢喜)。当然,对于那些使用fTPM(固件实现TPM)的同学,并不需要担心使用硬件总线窃听器这么高级的攻击方式——因为没门

务必记住:人走电脑关。

对于第三种攻击方式,请看下方案例。

这里提一下我是怎么学到这个教训的:当初在2013年(我那年十三岁),我爸有很长时间怀疑我妈出轨(怀疑了好几年,因为他觉得我不是他亲生的又不去做亲子鉴定。呵呵),那段时间我爸和我妈互相查对方的手机。

当然,也包括我的手机,而我的手机由于设置了全盘加密(Android 4.0引入的功能)。我本来以为我能逃过一劫,结局是挨了一顿又一顿暴打()

显然加密不可能对这俩人有啥阻碍(被打了一顿后给了密码):加密只能防小人而不防恶人。所以我找到一位和我关系好(同情我?)的手机维修店的爷,他给了我一台专门用来玩的手机,原来那台手机被我恢复出厂设置后只存一些无关紧要的东西,而那台送我的手机是真正用来联络同学之类的人的。

同时,我也在家里翻出来一块很早之前就不用的硬盘,我在上面装了个系统后就接着愉快冲浪;冲浪结束我就把那块硬盘从电脑上卸下来藏在我的床底下(毕竟被家人发现我在电脑上不务正业会有点麻烦)。

大概,就是这些了。以上内容到此为止。

评分

参与人数 2人气 +4 收起 理由
APPID + 3 感谢解答: )
无垠穹宇 + 1 神马都是浮云

查看全部评分

Dizziness2929
 楼主| 发表于 2024-8-7 18:16:02 | 显示全部楼层
本帖最后由 Dizziness2929 于 2024-8-7 18:35 编辑
驭龙 发表于 2024-8-7 18:12
你认为跑题就跑题吧,反正我都进入你说的富人区了。

五千大洋刚刚入手的核心安全PC

成本不只是金钱,还有是否容易获取、付出的其他成本是否过高(相对于获得的好处,也就是会不会“事倍功半”?)。

就好像我可以说Pixel设备的安全性远大于大部分Android设备厂商(请注意依旧受官方支持的Pixel设备只需要三千软妹币左右),但是获取Pixel的难度已经严重超出预期、而简单且快速的方法就是需要安全性的场合不使用手机就完成了。

显然,后者就是最优解,而获取Pixel付出的成本和获益远远不如后者(这也属于“可用性”的一部分——不具备普适性和友好性的安全技术注定不会流行)。

还有,我也在小县城(我的个人资料是我的实际住址)。


最后,我上面说的AMD TSME,在3000块购买的垃圾AMD核显整机里都有(我不认为五千块的成本比三千块低)。

评分

参与人数 1人气 +1 收起 理由
驭龙 + 1 那三千的跟VPRO设备比,你厉害

查看全部评分

huicuan
发表于 2024-8-5 13:05:39 | 显示全部楼层
00006666
发表于 2024-8-5 16:23:18 | 显示全部楼层
本帖最后由 00006666 于 2024-8-5 16:25 编辑

对抗Bitlocker是有商业化工具的

Elcomsoft Forensic Disk Decryptor

https://www.elcomsoft.com/efdd.html
ddxuchen
发表于 2024-8-5 22:40:15 | 显示全部楼层
感谢楼主科普
00006666
发表于 2024-8-5 22:48:50 | 显示全部楼层
00006666 发表于 2024-8-5 16:23
对抗Bitlocker是有商业化工具的

Elcomsoft Forensic Disk Decryptor

不过,关机确实是种很好的方法,EFDD主要根据内存来获取密钥

  1. There are at least three different methods for acquiring the decryption keys. The choice of one of the three methods depends on the running state of the PC being analyzed. It also depends on whether or not installation of a forensic tool is possible on a PC under investigation.

  2. If the PC being investigated is turned off, the encryption keys may be retrieved from the hibernation file. The encrypted volume must be mounted before the computer went to sleep. If the volume is dismounted before hibernation, the encryption keys may not be derived from the hibernation file.

  3. If the PC is turned on, a memory dump can be captured with a built-in memory imaging tool if installing such a tool is permitted (e.g. the PC is unlocked and the currently logged-in account has administrative privileges). The encrypted volume must be mounted at the time of acquisition.

  4. Finally, if the PC being investigated is turned on but installing forensic tools is not possible (e.g. the PC is locked or logged-in account lacks administrative privileges), a DMA attack via a FireWire port can be performed in order to obtain a memory dump. This attack requires the use of a free third-party tool (such as Inception: http://www.breaknenter.org/projects/inception/), and offers near 100% results due to the implementation of the FireWire protocol that enables direct memory access. Both the target PC and the computer used for acquisition must have FireWire (IEEE 1394) ports.

  5. Once the original encryption keys are acquired, Elcomsoft Forensic Disk Decryptor stores the keys for future access, and offers an option to either decrypt the entire content of encrypted container or mount the protected disk as another drive letter for real-time access.
复制代码
wangdl_100a
发表于 2024-8-6 09:11:26 | 显示全部楼层
1.2:或者在没有安全引导保护的电脑上,使用Bootkit来窃取Bitlocker恢复密钥(也可以使用感染操作系统的驱动程序Rootkit做到这一点)。


此处 Bootkit 是不是 Rootkit?
Dizziness2929
 楼主| 发表于 2024-8-6 09:25:02 | 显示全部楼层
wangdl_100a 发表于 2024-8-6 09:11
此处 Bootkit 是不是 Rootkit?

Bootkit:位于引导阶段的Rootkit。

驱动程序Rootkit:假装自己是某种硬件(Windows平台基本都是这种)。

内核Rootkit:篡改内核文件。

用户态Rootkit:在用户态劫持篡改来隐藏某种东西。

虚拟化Rootkit:将操作系统内核丢到自己的虚拟机,从而无感知修改系统内核(360核晶、卡巴斯基的虚拟化辅助之类的属于这类)。

Rootkit是中性词(保持对系统最高特权访问的工具),你要看Rootkit的目的。
Dizziness2929
 楼主| 发表于 2024-8-6 09:25:54 | 显示全部楼层
00006666 发表于 2024-8-5 16:23
对抗Bitlocker是有商业化工具的

Elcomsoft Forensic Disk Decryptor

这工具能利用的条件是你能冲进目标家里,然后把目标抬走之后用这个工具提取出来没来得及关机的电脑的密钥。
wangdl_100a
发表于 2024-8-7 07:31:40 | 显示全部楼层
Dizziness2929 发表于 2024-8-6 09:25
Bootkit:位于引导阶段的Rootkit。

驱动程序Rootkit:假装自己是某种硬件(Windows平台基本都是这种) ...
1.2:或者在没有安全引导保护的电脑上,使用Bootkit来窃取Bitlocker恢复密钥(也可以使用感染操作系统的驱动程序Rootkit做到这一点)。

感谢详解,我一开始以为自己看错了,这2个词只差1个字母。

看起来 原句的意思是
1.2:或者在没有安全引导保护的电脑上,于引导阶段(Bootkit)窃取Bitlocker恢复密钥(也可以使用感染操作系统的驱动程序Rootkit做到这一点)。
驭龙
发表于 2024-8-7 15:07:13 | 显示全部楼层
目前最顶级的安全PC是安全核心PC,这种级别的PC出厂就禁用了Microsoft UEFI CA Key,外加固件保护功能,基本上无需担心固件攻击和bootkit或者rootkit威胁。

但是,问题是咱们这边买安全核心PC太难了
您需要登录后才可以回帖 登录 | 快速注册

本版积分规则

手机版|杀毒软件|软件论坛| 卡饭论坛

Copyright © KaFan  KaFan.cn All Rights Reserved.

Powered by Discuz! X3.4( 沪ICP备2020031077号-2 ) GMT+8, 2024-12-22 12:12 , Processed in 0.125019 second(s), 23 queries .

卡饭网所发布的一切软件、样本、工具、文章等仅限用于学习和研究,不得将上述内容用于商业或者其他非法用途,否则产生的一切后果自负,本站信息来自网络,版权争议问题与本站无关,您必须在下载后的24小时之内从您的电脑中彻底删除上述信息,如有问题请通过邮件与我们联系。

快速回复 客服 返回顶部 返回列表