bitlocker加密后未锁(加密盘BitLocker爆锁屏绕过严重漏洞)
BitLocker Windows内置现代设备级数据加密保护功能,BitLocker与Windows内核深度集成。有大量的企业和个人使用BitLocker加密自己关键数据,以防止数据泄密。BitLocker作为一种安全手段其本身也常常是安全测试和渗透的目标之一,也暴露过一些问题.
最近安全研究者Jonas Lykkegård发现了BitLocker的锁屏绕过高危漏洞CVE-2020-1398,可以绕过BitLocker的密码安全认证过程,影响的系统包括Windows 10,windows server等多个windows操作系统。
概述
通过6个简单的步骤绕过BitLocker。对给定未知密码和受BitLocker保护的硬盘驱动器Windows 10系统,可以通过执行以下操作来添加管理员帐户:
登录屏幕上,选择"我忘记了密码"。
绕过锁定并启用可移动驱动器的自动播放。
插入带有特别制作的.exe和连接文件夹的USB记忆棒。
运行可执行文件。
卸载驱动器,然后再放回去,进入主屏幕。
启动讲述人,将执行之前植入的dll有效负载。
就会,自动添加了一个名为hax的用户帐户,其密码为"hax",该用户具有Administrators成员身份。要使用要登录的帐户更新列表,请单击我忘记密码,然后返回主屏幕。
锁定屏幕绕过首先,选择"我忘记了密码/PIN"。此选项将启动一个附加会话,可根据需要创建/删除一个帐户。用户个人资料服务将其称为默认帐户。它的第一个可用名称为defaultuser1,defaultuser100000,defaultuser100001等。
要绕过锁定,必须使用讲述人(Narrato),因为该上下文中设法启动某些内容,也无法看到它,如果使用讲述人,将能够对其进行导航。
如果我们连续快速地按了5次,则会出现一个打开设置应用程序的链接,该链接实际上可用。但是无法看到启动的设置应用程序。对重点关注已启动的应用程序,单击链接,然后单击可以在正确的时间显示启动的应用程序的位置。
最简单的方法是,每秒大约两次单击链接,粘滞键窗口将会消失。继续点击,将在屏幕中间看到一个焦点框。那是设置应用程序,当获得焦点时马上停止单击。
现在,可以使用CapsLock 向左箭头导航设置应用程序,按此按钮直至到达"主页"。
当主页具有焦点时,按住Caps Lock并按Enter。使用CapsLock 向右箭头导航到设备,然后在焦点对准CapsLock Enter时输入。
导航至自动播放,单击CapsLock Enter,然后选择"打开文件夹以查看文件(文件资源管理器)"。
然后,插入准备好的USB驱动器,等待几秒钟,讲述人将宣布驱动器已打开,并且窗口已聚焦。
选择文件Exploit.exe并使用CapsLock Enter执行。这样无需使用任何密码,可以实现任意代码执,。但是,受限制为默认配置文件。
特权提升安装USB记忆棒后,BitLocker将在"系统卷信息"中创建一个名为ClientRecoveryPasswordRotation的目录,并将权限设置为:
NT AUTHORITY\Authenticated Users:(F)
NT AUTHORITY\SYSTEM:(I)(OI)(CI)(F)
要重定向创建操作,需要在NT名称空间中使用符号链接,利用它可以控制文件名,并且链接的存在并不会导致报错退出。
使用USB驱动器并以\System Volume Information为\RPC Control挂载点。然后做出一个\RPC Control\ClientRecoveryPasswordRotation符号链接指向\??\C:\windows\system32\Narrator.exe.local。
如果重新插入USB记忆棒,C:\windows\system32\Narrator.exe.local则会创建具有允许创建子目录的权限的文件夹:
amd64_microsoft.windows.common-controls_6595b64144ccf1df_6.0.18362.657_none_e6c5b579130e3898
在该子目录中,删除了一个名为comctl32.dll的有效负载DLL。下次触发讲述人时,它将加载DLL。顺便说一句,选择了讲述人,因为它可以实现从登录屏幕作为系统服务触发,并且不会自动加载,因此,如果出现任何问题,仍然还可以启动。
结合起来ClientRecoveryPasswordRotation利用需要的符号链接到\RPC Control。USB驱动器上的可执行文件用两次调用来创建链接DefineDosDevice,从而让该链接成为永久链接,以便它们可以在需要时注销/登录。
然后启动一个循环,其中可执行文件将执行以下操作:
尝试创建子目录。
将有效负载comctl32.dll植入其中。
很容易看到循环何时运行,因为讲述人将移动其焦点框并每秒说一次"访问被拒绝"。现在,可以使用在中创建的链接RPC Control。拔下USB记忆棒,然后重新插入。可写目录将在中创建System32;在下一个循环迭代中,将会植入有效负载,并退出exploit.exe。若要测试漏洞利用程序是否成功,请关闭讲述人,然后尝试重新启动它。
如果讲述人不起作用,那是因为DLL已植入,并且讲述人执行了该DLL,但是由于它以defaultuser1启动,因此无法添加帐户。植入有效负载后,将需要单击返回登录屏幕并启动讲述人。会发出3声哔哔声,并显示一个消息框,说明已加载DLL。帐户已创建,但是并没有显示在列表中。
按"我忘记了密码",然后单击返回以更新列表。
应该会出现一个名为hax的新帐户,密码为hax。
制作利用的USB按照以下步骤设置USB记忆棒:
C:\Users\jonas>format D: /fs:ntfs /q
Insert new disk for drive D:
Press ENTER when ready...
-----
File System: NTFS.
Quick Formatting 30.0 GB
Volume label (32 characters, ENTER for none)?
Creating file system structures.
Format complete.
30.0 GB total disk space.
30.0 GB are available.
接着,需要将admin提升为delete System Volume Information。
C:\Users\jonas>d:
D:\>takeown /F "System Volume Information"
结果:
SUCCESS: The file (or folder): "D:\System Volume Information"
然后
D:\>icacls "System Volume Information" /grant Everyone:(F)
Processed file: System Volume Information
Successfully processed 1 files; Failed processing 0 files
D:\>rmdir /s /q "System Volume Information"
使用James Forshaw的工具(附带)创建安装点。
D:\>createmountpoint "System Volume Information" "\RPC Control"
然后将附件的exploit.exe复制
D:\>copy c:\Users\jonas\source\repos\exploitKit\x64\Release\exploit.exe .
1 file(s) copied.
总结:
爆锁屏绕过和权限提升漏洞CVE-2020-1398,被评定为一个严重漏洞,微软已经提供了了,对应的升级补丁,请使用BitLocker功能的用户及时修补。
,免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com