HackTheBox : Mailing
侦察
Nmap扫描
我们首先进行一次Nmap扫描:
(图片: Nmap全TCP扫描) (图片: UDP前200端口扫描)
技术栈
让我们枚举一下Web服务器使用的技术:
(图片: 技术栈)
Web服务器后端使用 ASP.NET 和 PHP 作为编程语言。
主网页
(图片: 主网页)
这里有三个重要信息值得注意:
- 公司使用的邮件服务器是 hMailServer。
- 我们找到了一些团队成员的名字:Ruy Alonso、Maya Bendito、Gregory Smith。这些信息稍后可能会用到。
- 在最底部,他们提供了一个文档,向我们展示了如何将计算机连接到公司的邮件服务。
(图片: 关于如何连接到mailing.htb邮件服务器的文档)
那么,让我们看看是否有影响 hMailServer 的已知公开漏洞:
(图片: 漏洞研究)
PHPWebAdmin文件包含
根据我们的情况,PHPWebAdmin File Inclusion 仍然是最有趣的漏洞。但是,由于我们不知道他们是否使用 4.4.2 版本,我们无法完全确认目标是否存在此漏洞。让我们试一试吧!毕竟,谁知道呢?也许它确实存在漏洞!
以下是漏洞利用的样子:
(图片: hMailServer 4.4.2 — 本地和远程文件包含)
在执行此攻击之前,我们首先需要找到端点。为此,我们可以进行目录和文件模糊测试。
目录/文件模糊测试
(图片: 目录/文件模糊测试) (图片: /instructions/) (图片: /instructions/ 文件包含失败) (图片: /download.php) (图片: /download.php 文件包含失败)
在四处点击时,我注意到当我点击 Download Instructions 按钮时,Burp 没有拦截到任何东西:
(图片: Burp未拦截请求)
因此,我决定激活 “Intercept On”,然后再次点击按钮以拦截请求:
(图片: 在Burp中拦截请求)
太棒了!如你所见,我们的浏览器发出了一个对 /download.php?file=instructions.pdf 的请求以下载PDF文件。
路径遍历
让我们检查一下 file 参数是否容易受到路径遍历攻击。我们来测试一下:
(图片: File参数存在路径遍历漏洞)
为了使路径遍历漏洞的影响更大,我们将尝试访问敏感文件,例如源代码和配置文件。
(图片: download.php 源代码)
如你所见,这确实是一个路径遍历漏洞。因此,它不能被视为文件包含漏洞,因为没有使用PHP的 include 或 require 函数。
快速搜索一下关于配置文件的信息,结果如下:
(图片: 搜索 hmailserver 配置文件)
这是我在这个论坛上找到的:
(图片: hmailserver 的配置文件)
配置文件似乎位于:c:\Program Files (x86)\hMailServer\Bin\hMailServer.ini
让我们检查一下:
(图片: 在配置文件中找到密码)
太棒了!配置文件中包含一个似乎是属于 Administrator 的密码哈希。这看起来是一个非加盐的MD5哈希。让我们看看能否通过使用 crackstation 执行彩虹表攻击来恢复明文密码:
(图片: 哈希成功破解)
太棒了!哈希已成功破解。我们可以检查一下我们是否可以在目标系统上以 Administrator 身份进行身份验证:
(图片: 身份验证失败)
好吧,让我们尝试一下密码喷洒攻击:
(图片: 密码喷洒攻击失败)
这也失败了。
话虽如此,我最终决定安装Thunderbird来检查我是否可以访问 Administrator 的邮箱:
(图片: 安装Thunderbird) (图片: 使用Thunderbird尝试对Administrator的邮箱进行身份验证) (图片: 访问Administrator的邮箱)
瞧!我们成功进入了Administrator的邮箱。现在让我们看看是否可以在不同的文件夹中找到有趣的信息:
(图片: 收件箱中没有消息) (图片: 垃圾箱中没有消息)
不幸的是,我在这里没有找到任何有用的东西。
补充知识: 我们也可以使用 SWAKS(SMTP客户端命令行)来对Administrator的邮箱进行身份验证。使用方法如下: (图片: 使用SWAKS检查身份验证)
CVE-2024-21413
话虽如此,经过一番挖掘,我发现Microsoft Outlook存在一个RCE漏洞(CVE-2024-21413)。这个严重漏洞(CVSS评分为9.8)允许用户泄露Net-NTLM哈希并绕过称为Windows受保护视图的Windows安全功能。更多信息,请点击此处。
为了执行此攻击,我使用了在GitHub上找到的这个PoC:
(图片: 下载漏洞利用程序)
在我们的场景中,我们将专注于通过向不同用户发送电子邮件来窃取Net-NTLM哈希。让我们首先运行 Responder:
(图片: 运行Responder)
Responder启动后,我们可以继续向我们在枚举阶段收集到的不同用户发送电子邮件。
提醒一下,电子邮件格式为 first_name@mailing.htb。
此外,在 instructions.pdf 文档的末尾,你应该会看到这个:
(图片: Maya的电子邮件地址被披露)
如你所见,Maya的电子邮件地址(maya@mailing.htb)被披露了。
现在,让我们使用下载的PoC向Ruy、Maya和Gregory发送电子邮件:
(图片: 向Ruy发送邮件) (图片: 向Maya发送邮件) (图片: 向Gregory发送邮件)
一段时间后,我截获了maya的Net-NTLM哈希:
(图片: 截获Maya的Net-NTLM哈希)
让我们使用 hashcat 破解它:
(图片: Maya的Net-NTLM哈希被成功破解)
好了,现在让我们尝试使用这个新密码进行密码喷洒攻击:
(图片: 密码喷洒)
我们对maya的身份验证成功了。
获得Maya的Shell
让我们枚举她的共享文件夹:
(图片: 枚举共享文件夹)
我们在 Important Documents 共享文件夹上拥有 READ/WRITE 权限。让我们下载其内容:
(图片: 下载共享文件夹内容) (图片: 运气不佳!)
这个共享文件夹里什么都没有。
没关系!让我们看看我们是否可以使用WinRM通过Maya的帐户进行身份验证:
(图片: 身份验证成功)
如你所见,这是可行的。让我们登录她的帐户:
(图片: 成功登录Maya) (图片: 获取user flag)
权限提升 (CVE-2023-2255)
在这里,我们将尝试查看不同的权限提升途径,以便在目标机器上成为 Administrator。
我枚举了诸如用户组、权限、网络接口、系统信息、服务、凭据搜寻等内容,并尝试在Web服务器的Web根目录写入文件,但最终一无所获。
因此,我决定检查机器上安装的软件。当使用 wmic product get name 命令时,我遇到了访问被拒绝的错误:
(图片: 访问被拒绝)
另一种方法是查看 C:\Program Files 和 C:\Program Files (x86) 目录,它们分别包含安装在系统上的64位(x64)和32位(x86)应用程序。
(图片: x86已安装应用程序)
这里我没有找到什么真正有趣的东西,决定继续查看64位应用程序:
(图片: x64已安装应用程序)
在这里我发现了几个非默认应用程序,例如 LibreOffice、Ruxim 等。下一步是找出这些软件的版本,以检查它们是否受到已知的公开本地权限提升漏洞的影响。
(图片: LibreOffice版本)
如你所见,系统使用的是 LibreOffice 7.4.0.1。
在谷歌搜索这个版本后,我发现了这个漏洞利用程序:
(图片: CVE-2023-2255)
更多信息,请参阅此处。
为了提升我们的权限,我们将遵循以下步骤:
-
生成一个反向shell (图片: 生成反向shell)
-
使用上述PoC生成一个恶意的
.odt文档 (图片: 生成恶意的 .odt 文档) -
运行一个netcat监听器 (图片: Netcat监听器)
-
启动一个Python Web服务器 (图片: Python Web服务器)
-
在目标机器上下载恶意的
.odt文档 (图片: 下载恶意的 odt 文档)
在此之后,我们将等待有人打开这个文档以接收反向shell。
- 接收反向shell (图片: 成功获取反向shell)
太棒了!我们现在可以检索root flag并完成挑战:
(图片: root.txt)
关键技术
以下是我们在攻克这台机器时使用的主要技术:
- 利用影响
hMailServer的 路径遍历 披露漏洞,在Web服务器上检索敏感文件。 - 执行 彩虹表攻击 以检索明文密码。
- 执行 密码喷洒攻击。
- 使用 Thunderbird 和 Swaks 访问邮箱。
- 利用 CVE-2024-21413 获取初始访问权限。
- 利用 CVE-2023-2255 提升我们的权限。
总结
以上就是全部内容。希望你们喜欢这篇记录并学到了一些新东西。
Hack The Planet :)
资源
- nvd.nist.gov/vuln/detail…
- research.checkpoint.com/2024/the-ri…
- msrc.microsoft.com/update-guid…
- github.com/xaitax/CVE-…
- nvd.nist.gov/vuln/detail…
- www.libreoffice.org/about-us/se…
联系方式
GitHub:github.com/0liverFlowFINISHED CSD0tFqvECLokhw9aBeRqoNv8leb5+40PlcX6sNzbPVlvc4LacNB4dfI4mpJCVGo0LibgwWQu1CdTjGko3Kj/KwCZfzG0aYS4NI8VaXodSY=