HackTheBox。演练Traverxec。Nostromo Web服务器中的RCE,GTFOBins技术

图片

我将继续发布从HackTheBox网站发送的用于进一步处理的解决方案

在本文中,我们将在nostromo Web服务器中获得RCE,从活动的metasploit会话下获得meterpreter外壳,深入研究nostromo配置,调整SSH密钥加密密码并使用GTFOBins技术来增加特权。

通过VPN连接到实验室。建议不要从可用对您重要的数据的工作计算机或主机进行连接,因为您将与知道信息安全领域知识的人进入专用网络:)

组织信息
, , Telegram . , , .

. , - , .

侦察


这台机器的IP地址为10.10.10.165,我将其添加到/ etc / hosts中。

10.10.10.165    traverxec.htb

首先,我们扫描开放端口。由于使用nmap扫描所有端口需要很长时间,因此我将首先使用masscan进行此操作。我们以每秒1000个数据包的速度扫描来自tun0接口的所有TCP和UDP端口。

masscan -e tun0 -p1-65535,U:1-65535 10.10.10.165 --rate=1000

图片

现在,有关在端口上运行的服务的更多详细信息,我们将使用-A选项运行扫描。

nmap -A traverxec.htb -p22,80

图片

因此,我们有了SSH和Nostromo Web服务器。

让我们检查Nostromo Web服务器是否有1.9.6版的已知漏洞。为此,您可以使用searchsploit,此程序提供了方便地利用exploit-db数据库中的利用漏洞的功能

图片

从结果中可以看到,第二个漏洞利用不适合我们,第一个漏洞带有Metasploit标记,表明该模块是针对Metasploit Framework上下文实现的。

入口点


下载msfconsole并进行漏洞利用搜索。

图片

现在我们知道了漏洞利用程序的全名并可以使用它。加载漏洞利用程序后,我们将审查有关它的信息。因此,我们将找到使用它的基本选项以及对漏洞本身的描述。

图片

图片

精细!此漏洞适用于我们的nostromo版本。我们设置基本选项并检查漏洞利用的操作。

图片

为了方便起见,我们获得了一个抄表器外壳。为此,请将会话发送到后台工作-Ctrl + Z并确认。如果我们看一下工作会议,那么我们将看到刚刚最小化的会议。

图片

要在运行的会话中获取meterpreter shell,可以使用post操作模块post / multi / manage / shell_to_meterpreter。如下快速使用此模块。

图片

我们被告知,在第二个会话中,meterpreter外壳已打开。因此,我们启动了第二届会议。

图片

用户


首先,您需要查看主机。为此,将Linux枚举脚本加载到计算机上。

图片

接下来,调用该外壳,赋予执行和运行脚本的权利。

图片

分析输出,我们从.htpasswd找到密码哈希。

图片

进一步旋转是在浪费时间。意识到这一点并且不知道要走的更远,便决定查看Web服务器的配置。幸运的是,该文件的路径中指示了目录。

图片

接下来,查看nhttp.conf文件。

图片

事实是,配置文件中将nostromo的根目录指定为homedirs_public。也就是说,这是public_www目录。此目录位于用户的主目录(homedirs-/ home)目录(serveradmin-david@traverxec.htb)中。综上所述,index.html文件位于目录/ home / david / public_www中。为了使用户能够访问此页面,该目录必须对所有人具有读取权限。

图片

猜测已确认。另外,我们看到某种目录,让我们看一下其中的内容。

图片

在那里,我们找到了SSH文件的备份。下载它们。

图片

解压缩文件。

图片

我们有一个专用用户密钥,但是在尝试连接时,要求输入密码。这意味着密钥已加密。

图片

但是我们可以滚动浏览它。首先,我们带来所需的格式。

图片

将哈希保存到文件中,然后使用JohnTheRipper滚动浏览rockyou.txt词典。

图片

因此我们找到了密钥加密密码。使用它和密钥,我们通过SSH连接。

图片


我们看一下用户目录中的内容。

图片

在bin目录中,我们找到了一个有趣的文件。让我们看看什么样的脚本。

图片

该脚本打印行,然后从sudo下执行命令,该命令的输出传递给cat,这很有趣。运行此命令,看到相当大的输出。

图片

重定向到cat立即促使我考虑使用GTFOBins技术。最重要的是,通过不同的系统实用程序,我们可以获得读取,写入文件,执行命令等的功能。在此处可以找到有关如何针对不同程序执行此操作的示例

事实是,如果我们压缩终端窗口并执行命令而不将输出转换为cat,则输出将自动发送到less,我们可以在其中使用!/ Bin / sh来获得shell。由于命令是在sudo下执行的,因此我们获得了具有最大特权的shell。

图片

图片

图片

图片

因此,我们在系统上获得了root用户。

您可以通过Telegram加入我们在这里,您可以找到有趣的资料,合并的课程以及软件。让我们建立一个社区,在这个社区中,会有一些精通IT领域的人,然后我们可以在任何IT和信息安全性问题上互相帮助。

All Articles