• Unquoted Service Paths提权


    前言:都写出来记录下吧

    当系统管理员配置Windows服务时,他们必须指定要执行的命令,或者运行可执行文件的路径。

    当Windows服务运行时,会发生以下两种情况之一。

    第一种:如果给出了可执行文件,并且引用了完整路径,则系统会按字面解释它并执行。

    第二种:如果服务的二进制路径未包含在引号中,则操作系统将会执行找到的空格分隔的服务路径的第一个实例。


    不带引号的服务路径查看方法:

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

    例如这个服务的可执行路径为:C:Program Files (x86)SangforSSLPromoteSangforPromoteService.exe

    那么服务启动的时候运行的可执行文件就会有如下几种:

    C:Program.exe
    C:Program Files (x86)SangforSSLPromoteSangforPromoteService.exe
    

    我们第一个实验:调用system函数进行执行分别来标识system("whoami >> whoami.exe")

    然后我们可以尝试运行C:Program Files (x86)SangforSSLPromoteSangforPromoteService.exe

    发现C:会多出whoami.exetxt的文件


    第二个实验:我们将Program Files当作一个完整的路径,那么也就是用双引号进行包裹

    运行C:"Program Files" (x86)SangforSSLPromoteSangforPromoteService.exe

    运行C:Program Files.exe


    总结:

    1、在msf中exploit/windows/local/trusted_service_path,这个模块也可以进行相应的利用,但是如果要更加隐蔽的话,大家还是参考上面的wmic的命令吧!

    2、比较鸡肋,因为大家都知道C: 目录默认是不让写的,但是大家可以去了解下什么叫Weak File Permissions,能帮助到你进行深一步的提权!

    3、对于路径配置的提权,我们所需要的权限只需要能写!

    参考文章:https://tulpa-security.com/2016/10/20/unquoted-service-paths/

  • 相关阅读:
    数据库查找
    关于购买功能的相关学习
    信息登记功能例子
    总结
    团队作业
    团队作业
    团队作业
    团队作业
    团队作业
    第一节:库的管理
  • 原文地址:https://www.cnblogs.com/zpchcbd/p/12232710.html
Copyright © 2020-2023  润新知