MakarovXSec/RootMe_TryHackMe

GitHub: MakarovXSec/RootMe_TryHackMe

TryHackMe RootMe 靶机的完整渗透测试 write-up,详细记录了从端口扫描、Web 漏洞利用到 SUID 提权的全流程攻击路径。

Stars: 0 | Forks: 0

# TryHackMe Rootme Write-UP 在运行 ping 并确认连通性后,我们启动 nmap 扫描,发现端口 22 和 80 处于开放状态。 ![Ping Scan](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/dd52107937192737.png) ![Nmap Scan](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/4dbfb2d072192739.png) 首先是运行 SSH 协议的 22 端口,而 80 端口运行的是 Apache 2.4.41 HTTP 服务器。 ![Open Ports](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/5631156127192811.png) 我们已经有了前三个实验问题: **扫描机器,有多少个端口开放?** 22 端口和 80 端口。 **运行的是什么版本的 Apache?** 2.4.41 **22 端口运行的是什么服务?** SSH 接下来,我们访问网页看看能发现什么。 主页和源代码中没有什么有趣的内容。 我们继续使用 gobuster 进行 fuzzing 以枚举目录。 ![Gobuster Scan](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/bfe7f7557d192812.png) 我们启动扫描并很快发现了第一个有趣的目录:`uploads`。于是我们访问它。我们看到可以上传文件。然后我们检查第二个有趣的目录 `panel,在那里我们也发现可以上传文件。 ![Panel Access](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/032801b28f192852.png) ![Payload Upload](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/a2d7003e2e192854.png) 所以我们继续执行 payload。它不允许我们将其作为 `.php` 文件上传,因此我们将其修改为 `.phtml`。我们的 payload 成功上传。 我们开始在端口 443 上进行监听,一旦我们从 uploads 目录打开 payload,我们就收到了一个连接。 Msfvenom payloads 通常不稳定,因此我们使用端口 444 上的 reverse shell 来稳定它。 ![Reverse Shell 443](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/ce8fbb2b7d192856.png) ![Reverse Shell 444](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/10f6df0c8a192857.png) 我们粘贴到端口 443 上 netcat 连接中的 reverse shell 是从网站“reverse shells generator”获取的。 现在我们可以回答下一个实验问题: 隐藏的目录是什么? /panel 我们现在作为用户 `www-data` 拥有了一个稳定的连接。我们开始探索系统,看看能发现什么。在列出目录后,我们注意到其中大部分都需要 root 权限。 经过漫长的搜索,我们要么一无所获,要么缺乏权限,我们导航到 `/var/www` 目录(始终检查这个目录非常重要),在那里我们发现了 `user.txt`。我们打开它并获得了第一个 flag。 ![User Flag](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/705fdb41ec192859.png) FLAG 1: THM{y0u_g0t_a_sh3ll} 现在是时候进行权限提升了。实验室提示我们应该使用 SUID binaries。我们运行命令: find / -perm -4000 2>/dev/null 来搜索可用于提升权限的 binaries。 ![SUID Python](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/e0b93b9a29192901.png) 我们注意到了著名的 `pkexec`,它有一个众所周知的漏洞。但是,在回答问题时实验室将其标记为无效,因此我们继续调查。 在查看了其他 write-ups 后,我们发现实验室希望我们使用 Python。在我们的例子中,它显示为 `python2.7`。 我们访问 GTFOBins 并搜索 Python。我们找到了一个方法,通过执行: python -c 'import os; os.execl("/bin/sh", "sh", "-p")’ 我们获得了 root 权限。 然后我们遍历目录,列出 `/root`,并找到了包含最终 flag 的文件。 机器已完成。 ![Root Flag](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/66f471cdf9192904.png)
标签:Apache, Bypass, CISA项目, DNS 反向解析, Netcat, Nmap, OpenVAS, PHP, PHTML, Privilege Escalation, Reverse Shell, RootMe, SSH, SUID, TryHackMe, Web渗透, Writeup, Write-Up, 协议分析, 反取证, 反弹Shell, 大数据, 安全评估, 实验报告, 密码管理, 应用安全, 插件系统, 数据统计, 文件上传漏洞, 权限提升, 枚举, 漏洞复现, 目录扫描, 端口扫描, 网络信息收集, 网络安全, 网络安全审计, 虚拟驱动器, 逆向工具, 隐私保护, 靶机攻略