软件版本:Razer Surround 1.1.63.0

操作系统版本:Windows 10 1803(x64)

漏洞说明:Razer Surround软件中文件夹设置缺陷导致的权限提升

目的

我希望这篇文章能鼓励更多的人加入漏洞研究这个看似很困难的领域。虽然这个漏洞的原理很简单,但本文的主要目的是讲述一些漏洞挖掘的方法。另外,我希望用这篇文章提醒大家,无论公司规模有多大,都一定存在脆弱面。

简介

Razer Surround安装了一个名为RzSurroundVadStreamingService的服务,以SYSTEM权限运行。

此服务涉及的二进制文件为RzSurroundVADStreamingService.exe,在文件夹C:\ProgramData\Razer\Synapse\Devices\Razer Surround\Driver下。

而此二进制文件能被恶意软件所覆盖替换,然后以SYSTEM权限运行,最终造成非法权限提升。

利用

在进行漏洞研究时,选择一个恰当的目标是很有必要的。如果你一开始选择一个体积巨大的软件,那么就很有可能产生畏难心理,你不知道从何入手,且会觉得这里面隐藏的漏洞肯定异常复杂。我想用这个漏洞作为一个例子,来说明在一个普通的软件中寻找漏洞其实并不困难。

你可能会问,为什么是Razer?为何要瞄准这个软件?答案很简单:我是Razer的粉丝,我买了不少Razer的产品。当你每天大量使用同一个品牌的产品及其软件时,你很难忍住研究它的冲动。

在挖掘漏洞时,我通常会进行一个常见的挖掘流程,每次都是如此。这个流程中包括分析目标软件所暴露的潜在攻击面。我通常从基础开始,根据需要进行动态/静态分析。我最初通常寻找的是:

  1. 已安装的服务(服务权限和服务路径)

  2. 命名管道(及其ACL)

  3. 所涉及的文件和文件夹权限

  4. 网络套接字

  5. DCOM服务器和托管接口

在常用工具这一方面,我主要使用Process Monitor和James Forshaw’s NTob jectManager 。

Razer Surround这个例子中,我首先通过查看进程列表检查软件的运行权限,发现RzSurroundVADStreamingService.exe是以SYSTEM权限运行的。下一步是找出这个进程是如何运行的。考虑到这个进程的名称中包含“service”,我在powershell的命令行下使用Get-Service *Rz*命令来获得所有包含Rz字符串的所有服务(也可以说是和Razer有关的所有服务)。

从结果中我们可以筛选出它的ImagePath,也就是C:\ProgramData\Razer\Synapse\Devices\Razer Surround\Driver\

请注意,此时有趣的地方出现了。通过对文件夹的权限查询,发现BUILTIN\Users对文件夹C:\ProgramData具有读写权限。

开发人员经常犯的一个错误就是没有锁定在C:\ProgramData文件夹中创建任意子文件夹的权限。如果安装程序只是简单地在C:\ProgramData中创建一个文件夹,那么该文件夹和其任何子文件夹都将继承C:\ProgramData的权限,比如普通用户地完全读写权限。

在这种情况下,导致电脑上的“Everyone”都能完全控制C:\ProgramData\Razer\Synapse\Devices\Razer Surround\Driver文件夹。

如之前所述,此路径是二进制文件RzSurroundVADStreamingServiceImagePath。如果任意权限的用户对文件及包含它的文件夹具有“完全控制”权限,那么只要把RzSurroundVADstreamingService替换为恶意软件即可:

一旦替换成功,重新启动电脑,该恶意软件将作为服务的一部分,以SYSTEM权限运行。在这个例子中,我们最终得到了一个SYSTEM权限的cmd命令行。

对于Razer来说,只要把这个二进制文件默认放置于C:\Program Files (x86)\Razer文件夹即可修复此漏洞。

时间线

我们在发现这类漏洞后,会定期提交给厂商,和他们保持良好的联系,确保受影响的用户在短时间内收到漏洞预警,进行软件更新。

2019年3月20日-报告发送至Razer

2019年3月21日-收到Razer的确认

2019年6月6日-就漏洞修复问题与Razer进行联系

2019年6月10日-razer通知我,修复工作将在6月底开始

2019年7月1日-razer通知我,更新补丁将马上发布

2019年7月5日-补丁发布

本文由白帽汇整理并翻译,不代表白帽汇任何观点和立场:https://nosec.org/home/detail/2758.html
来源:https://posts.specterops.io/cve-2019-13142-razer-surround-1-1-63-0-eop-f18c52b8be0c

CVE-2019-13142:雷蛇影音软件(Razer Surround)的权限提升漏洞相关推荐

  1. linux内核安全数据,【漏洞分析】Linux内核XFRM权限提升漏洞分析预警(CVE–2017–16939)...

    0x00 背景介绍 2017年11月24日, OSS社区披露了一个由独立安全研究员Mohamed Ghannam发现的一处存在于Linux 内核Netlink socket子系统(XFRM)的漏洞,漏 ...

  2. 雷蛇灵刃Razer Blade 16 2023 [RZ09-0483] win11原厂oem系统

    雷蛇灵刃Razer Blade 16 2023 [RZ09-0483] win11原厂oem系统,带一键恢复功能 适用型号:RZ09-0483R/RZ09-0483S/RZ09-0483T/RZ09- ...

  3. SQL Server 2019:硬件和软件要求

    转发:SQL Server 2019:硬件和软件要求 SQL Server 2019:硬件和软件要求 有关其他版本:硬件和软件要求 SQL Server 2016 和 2017 Linux 上的 SQ ...

  4. Adobe Photoshop CC 2019 20.0.6软件免费下载及安装教程

    Adobe Photoshop CC 2019 20.0.6免费下载最新版本的Windows.在上传之前,程序和所有文件都会被手动检查和安装,程序运行正常,没有任何问题.它是完全脱机安装程序独立设置的 ...

  5. 2019年天猫度软件服务年费缴纳折扣优惠及结算标准

    根据一周的意见征集,2019年天猫度软件服务年费缴纳折扣优惠及结算标准正式公布.此次天猫年费新规核心:商家服务越好,平台优惠越多. (图说:天猫年费新规中,将原本"DSR平均不低于4.6分& ...

  6. Filmigo视频剪辑VIP,这是一款多功能视频编辑、影片剪辑、图片美化、视频/音频制作 影音软件,功能强大!

    <Filmigo视频剪辑>介绍:这是一款多功能视频编辑.影片剪辑.图片美化.视频/音频制作.配乐美颜影音软件,是一款简单易用的视频编辑.视频裁剪与视频剪辑工具,获得2018年google ...

  7. 欧姆龙修复PLC编程软件中的多个高危漏洞

     聚焦源代码安全,网罗国内外最新资讯! 编译:代码卫士 摘要 日本电子巨头欧姆龙最近修复了 CX-Programmer 软件中的多个高危漏洞,它们可用于执行远程代码. 日本JPCERT/CC 本月初发 ...

  8. 黑客入侵微软邮件服务器部署勒索软件、惠普更新打印机漏洞|12月2日全球网络安全热点

    安全资讯报告 黑客因通过SIM卡劫持窃取数百万美元的加密货币而被判入狱 美国司法部(DoJ)表示,与名为The Community的国际黑客组织有关联的第六名成员因涉及数百万美元的SIM交换阴谋而被判 ...

  9. 开源管理软件 OpenEMR 被曝多个漏洞,可被用于攻陷医疗基础设施

     聚焦源代码安全,网罗国内外最新资讯! 编译:奇安信代码卫士团队 研究人员在 OpenEMR 软件中发现了多个漏洞,可被远程黑客用于获取医疗记录并攻陷医疗基础设施. OpenEMR 是一款为医疗组织机 ...

最新文章

  1. MATLAB常用函数, 常见问题
  2. Java并发——线程间通信与同步技术
  3. MDL估计算法程序C语言,MDLS算法浅谈
  4. Windows驱动开发学习笔记(四)—— 3环与0环通信(常规方式)
  5. 数据结构与算法——二叉平衡树(AVL树)详解
  6. Android Studio Linking an external C++ project 时候 报Invalid file name. Expected: CMakeLists.txt
  7. 为 Angular service 注册 provider 的三种方式
  8. Abp vNext 二进制大对象系统(BLOB)
  9. 转: java多线程-ThreadPoolExecutor的拒绝策略RejectedExecutionHandler
  10. Python学习---面向对象的学习[深入]
  11. php 5.5.12 yaf,yaf框架教程(5)- yaf框架的启动文件
  12. 6_python基础—循环
  13. Sharding-JDBC读写分离_实现_Sharding-Sphere,Sharding-JDBC分布式_分库分表工作笔记017
  14. KITTI数据集可视化
  15. Protel 格式网表转换 Allegro 格式网表的 Skill 程序
  16. 北邮OJ 126 中序遍历序列
  17. Linux日志切割工具logrotate原理和配置详解
  18. uniapp textarea编辑保留空格换行
  19. Wordpress模板主题中functions.php常用功能代码与常用插件[ 后台篇](持续收集整理)
  20. Django中多对多查询方式

热门文章

  1. SPSS MODELER笔记2
  2. 关于MySQL数据库,你需要知道这些
  3. Houdini 17正确安装方法
  4. 应用中心”对不起,您的网站已被设置禁止下载此应用“完美解决办法
  5. MLDN魔乐科技 Oracle学习笔记 (4)
  6. 基于MATLAB的数值积分问题求解
  7. FPGA基础之modelsim常见问题
  8. Ubuntu20.04无法使用中文输入及切换快捷键设置
  9. 清新旅拍电影质感妆容人像修饰调色Lightroom预设
  10. 基于opencv实现的手写数字识别