当前位置:首页 > 大健康产品 > 正文内容

OEM软件使笔记本电脑处于危险中

本文介绍如何利用该漏洞来加载任意未签名的DLL到SYSTEM权限运行的服务中,来实现权限提升和驻留。

PC-Doctor

允许SupportAssist访问敏感低级硬件的组件是由PC-Doctor公司开发的。该公司主要开发硬件诊断软件。下面主要介绍PC-Doctor公司开发的组件来描述漏洞,然后说明如何利用该漏洞来访问物理内存这样的低级硬件。

Dell SupportAssist

Dell SupportAssist是大多数Dell电脑预装的软件。该软件可以检查系统硬件和软件的健康。健康检查需要高权限级别的权限。为了以高级权限运行动作,签名的驱动会安装以及多个以SYSTEM运行的服务。

漏洞分析

研究人员首先关注的是Dell Hardware Support,因为该服务是一个非常重要的服务,而且有对硬件访问的高级权限,因为有能力可以进行权限提升。Dell Hardware Support服务启动后,会执行DSAPI.exe和 pcdrwi.exe,都是以SYSTEM权限运行的:

然后,该服务会执行多个PC-Doctor可执行文件来收集关于操作系统和计算机硬件的信息。这些可执行文件其实都是普通的PE文件,但是扩展名为p5x。

这些可执行文件都会加载DLL库,可以从不同的源来收集信息。一旦这些库被加载后,研究人员在ProcMon中发现:

从图中可以看出,3个p5x可执行文件尝试在c:\python27目录中找出以下DLL文件:

·LenovoInfo.dll

·AlienFX.dll

·atiadlxx.dll

·atiadlxy.dll

DLL劫持漏洞

·执行的用户名

·DLL文件名

研究人员在重命名以下DLL时,该DLL是以SYSTEM权限加载和执行的

·LenovoInfo.dll

·atiadlxx.dll

漏洞根源分析

p5x模块使用了一个名为Common.dll的工具库,提供了包括加载dll文件选项这样的功能:

从上图可以看出,该漏洞的两个根源在于:

·缺乏安全的DLL加载。代码使用的是LoadLibraryW,而不是LoadLibraryExW,这样就允许未授权的用户来用特定的flag来定义搜索顺序,比如LOAD_LIBRARY_SEARCH_DLL_LOAD_DIR。这样反过来会在自己的文件夹中搜索DLL,避免在PATH变量中搜索DLL。

·没有对该二进制文件进行数字证书的验证。该程序并不会验证加载的DLL是否是签名的。因此,可以加载任意未签名的DLL文件。

漏洞利用

PC-Doctor签名的驱动

SupportAssist使用的是PC-Doctor签名的驱动(pcdsrvc_x64.pkms)来访问低级的内存和硬件。

PoC – 读取物理内存

在加载到PC-Doctor的库中,p5x可执行文件是SysSpace.dll。该库提供一个强大的对物理内存读取的封装函数—— PhysicalMemory::read。该函数打开一个到驱动的handle,并发送相关的IOCTL来启动。下一步是找出发送给该函数所需的参数。研究人员搜索了导入PhysicalMemory::read函数的DLL并使用它。

forfiles /M *.dll /C "cmd /c %userprofile%\amd64\dumpbin.exe /IMPORTS @file | findstr ?

read@PhysicalMemory && echo @file"153 ?

read@PhysicalMemory@memory@libSysSpace@@QEBA_N_KPEAX0W4AccessUnit@123@@Z"NVMeInfo.dll"153 ?

read@PhysicalMemory@memory@libSysSpace@@QEBA_N_KPEAX0W4AccessUnit@123@@Z"Quip.dll"

用IDA打开Quip.dll,提取调用该函数的实现:

然后加载SysSpace.dll,定义PhysicalMemory的constructor,并调用PhysicalMemory::read函数。

下面从物理内存中读取任意地址。

首先,用WinDbg Kernel Debugger检查物理地址的内容:

然后利用该漏洞来加载未签名的DLL,并将结果写入txt文件:

从中可以看出,可以将任意物理内存地址的内容写入。

潜在恶意使用和影响

SupportAssist是大多数运行Windows系统的Dell设备预装的软件。也就是说,该漏洞如果不修复,将影响数百万Dell PC用户。下面介绍攻击者可以利用该漏洞的2种潜在方式。

签名的执行和白名单绕过

该漏洞给予攻击者被加载和执行恶意payload的能力。该能力可能会被攻击者滥用,比如进行执行和绕过,具体来说有应用白名单绕过和签名验证绕过。

DSE绕过

为了加载kernel模式驱动带Windows 10中,必须要经过微软认证的厂商的数字签名。为了强制执行,微软使用了一种名为Driver Signature Enforcement (DSE)的机制,如果未签名的kernel-mode驱动被加载,操作系统就会奔溃。

攻击者可以获取pcdsrvc_x64.pkms驱动提供的R/W原语,pcdsrvc_x64.pkms驱动是已经加载的kernel-mode驱动。事实上,攻击者可能并不需要加载驱动,因为签名加载的驱动已经给了他们一些控制权限。

为了访问和操作R/W原语,攻击者可以:

·利用该漏洞来获取权限提升,并以SYSTEM权限运行;

·使用签名和加载的pcdsrvc_x64.pkms驱动;

·发送相关的IOCTLs来直接读写物理内存;

·然后攻击者就有了kernel-mode驱动环境下的全部R/W原语。

相关文章

百年膏药仁心孝世的传承者

说起咸阳有个明星店铺,您可能没去过,但您肯定听说过。那就是专门针对颈肩腰腿痛的【马明仁膏药铺】。说到这可能有些人不禁要问为什么说这个店铺这么知名呢?因为它是身兼国家级、省级、市级三级非物质文...

周口市非物质文化遗产代表项目王氏膏药介绍

郸城王氏(平诚)膏药制作传统技艺:域之三晋青主神医续命;王氏承德继长得统济世。 2023年11月16日,从周口市文旅局传来消息,郸城王氏(平诚)膏药制作传统技艺被评为周口市非物质文化...

有一种传统的膏药制作工艺

在柳州,有一种传统的膏药制作工艺,代代相传,形成了独特的配方和加工方法。 这种膏药并非现代工业化的产物,而是依靠手工技艺和长期积累的经验制作而成。 许多...

泰国虎牌膏药虎贴虎标tigerbalm膏

更多精彩内容请关注我们 功能主治:消炎镇痛,肌肉酸痛,风湿痛,关节炎,腰椎间盘突出,腰痛,腰...

膏药贴敷一定要知道的十大禁忌

有些朋友贴敷膏药已经很久了, 有些朋友刚刚入门 无论哪种,下面是...

泰国不只有虎牌膏药这些膏药你真的选对了吗?

点击蓝字 关注沪江泰语君 ~...

家庭必备实用药膏,麻麻和爸比赶紧拿走不谢,没备你就危险啦!

现在社会发展节奏越来越快,身边的安全隐患也越来越多。流行感冒、蚊虫叮咬、咳嗽、湿气重、颈椎病这些亚健康越来越多,让我们 的健康备受威胁。下面小桃子给大家介绍一些现在流...

膏药,究竟是怎么治病的呢?

读完此文,您就知道什么才叫做膏药! 山西省中医院 骨科 膏药可不仅是咱们中国有,西方医学体系里,膏药属于经皮吸收的一种药物剂型。但是,咱们中医的膏药尤其应用广泛,而且历史悠久...

颈肩腰腿痛分不同中医类型,教你正确选择膏药,选对了不用去医院

各位朋友大家好,我是来自湘潭市中医院的骨伤科主治中医师廖医生,从今天开始我会不定期给大家科普一些中医知识,这些中医知识都是我平时在临床上的思考总结,绝对原创,保证是干货,希望能对朋友们有所帮...

面部皮炎应该怎么治疗预防,激素药膏可以抹在脸上吗?

每到春夏季节最容易发生面部皮炎了,一般的症状就是在我们的面颊部包括脖子起一些红色的斑片、大小不等,有的还会比较粗糙、摸起来像有一些一粒粒的感觉。 有的人患上面部皮炎会感觉到比较痒,这...