hashcat速度 内网渗透|记一次有趣的复杂靶场渗透

记录一下我在tryhackme的Holo靶场中的完成过程。与原作者的思路和工具有所不同,我使用了自己的思路,并进行了一些优化(实际上是因为我太懒了)。对于我不太了解的部分,我会展开更多细节。中途由于忙碌的原因中断了一段时间,还断网了,心态有点崩溃,但除此之外,其他都是常规操作。

首先进行了端口扫描:

ffuf -w /usr/share/seclists/Discovery/DNS/subdomains-top1million-110000.txt  -H "Host: FUZZ.holo.live" -u http://10.200.112.33/ -fs 21456

乎有一个高端口是socks5的无认证代理,可能在后面会有作用,暂时先放着。

然后按照题目继续对80端口的WordPress进行枚举,发现了版本信息。

对单个IP进行虚拟主机发现,我使用了ffuf并过滤了FUZZ。这里可能有一些人不清楚在实战中是否需要对这个点进行fuzz,实际情况是根据中间件的配置情况来决定的。比如说,Nginx和Apache都有配置虚拟主机的选项,在政府单位的集群部署或者一些需要负载均衡的场景中比较常见。简单来说,如果某个网站的IP业务流量比较大,而且这个服务器性能比较好,那么就适合配置虚拟主机。

回到正题:

hashcat速度

速度很慢,大概每秒只能处理50个请求。我将通过暴力破解得到的结果添加到hosts文件中。

直接访问这些网站,看看是否有有价值的东西。同时进行目录扫描。

从admin的扫描结果中发现,robots.txt的内容比较大。

访问获得绝对路径:

//if ($_GET['cmd'] === NULL) { echo passthru("cat /tmp/Views.txt"); } else { echo passthru($_GET['cmd']);} -->

接访问返回403错误,需要配合任意文件读取来获取凭据。

利用任意文件下载获取到creds.txt,因为vhost本质上是在一台机器上,所以可以读取到其他的文件。

拿到密码后登录。

翻阅源代码,发现有一个被注释了的功能。

给定cmd参数即可执行命令。

使用msf直接获取交互式shell。

尝试提权,但未成功。然后找到了flag,发现在/var/www目录下。

根据php的配置,发现数据库指向了新的资产。使用账户密码连接。

使用msf搭建socks代理。

因为是默认页面,所以直接写入即可。

执行命令上线,然后进行操作。

上传到临时文件并赋予权限后执行。

使用kali集成的linpeas进行检查,发现了suid提权的提示。

找到提权的向量,但由于不是交互式的tty,所以失败了。

再次利用suggest模块的exp进行提权。

等待一会,即可上线。这里不得不说msf的提权真的很强大,特别是在exp提权方面。如果自己编译的话,会遇到很多错误导致难以利用,而互联网上的poc在不同环境下也存在兼容性问题。而msf已经考虑了这些兼容性问题。

读取cat /etc/shadow的密码并进行破解(在实战中,破解密码仍然是有必要的,因为很多单位使用相同的密码,只要能破解出明文,利用明文进行横向移动将变得非常重要)。

使用hashcat进行破解,得到对应的明文。

使用密码登录并进行验证。

对同一网段下的IP进行扫描,发现了新的资产。

整理扫描结果,发现10.200.108.35的机器名是PC-FILESRV01,10.200.108.30的机器名是DC-SRV01,扫描结果还显示它是域控制器Domain Controllers,10.200.108.31的机器名是S-SRV01。

再次搭建代理,这次使用frp。frp的稳定性众所周知,这里只贴出常用的配置。

搭建完成后就可以访问了。由于Burp出了一些问题,我暂时使用浏览器进行抓包。很明显,这里有一个重置密码的参数让人感兴趣。

爆破用户名失败后,我重新查找之前MySQL的数据库,找到了gurag用户。

通过抓包分析,发现gurag的token实际上已经在返回包中,存在一个简单的逻辑漏洞。

随后,使用该token访问之前的页面。

登录后,遇到了一个典型的前端过滤上传。

根据之前的目录扫描结果,应该在images目录下。果不其然,直接上传一个php文件,成功获取到system权限。

使用棱角社区的进程识别工具,发现有杀毒软件,但对微软的杀毒软件进行欺骗还是相对容易的。

赞(0)