ServMon HacktheBox演练

今天,我们将解决另一个名为“ ServMon”的“黑客挑战”挑战赛,该计算机属于已退休实验室的一部分,因此您可以使用HTB VPN连接到该计算机,然后开始解决CTF。这个实验室很简单。如果具有渗透测试的基本知识,那么解决该实验室并不困难。让我们开始学习如何破解它。

级别:简单

任务:在受害者的计算机上找到user.txt和root.txt文件。

渗透测试方法

侦察

  • 地图

枚举

  • 以匿名方式连接到FTP服务
  • 浏览HTTP服务

开发

  • 利用目录遍历
  • 使用Hydra的Bruteforce
  • SSH登录
  • 枚举用户标志

特权提升

  • 滥用NSClient
  • 紧贴root.txt

演练

侦察

由于这些实验室在线,因此它们具有静态IP。 ServMon的IP为10.129.29.110,所以我们从nmap端口枚举开始。

从下面的给定图像中,我们可以观察到我们找到了端口 21、22、80、135、139、445、5666、6699、8443 是开放的。这意味着ftp,ssh,MSRP,smb等服务正在受害者的网络中运行。

枚举

从上面的nmap扫描可以看出ftp允许匿名服务。因此,让我们通过匿名连接来枚举FTP服务。我们有一个名为Users的目录。在该目录中,我们找到了两个名为 纳丁内森。现在我们进入名为Nadine的目录中,我们有一个扩展名为txt的文件 机密.txt。下载此txt文件后,我们进入了名为Nathan的目录,并找到了另一个扩展名为Notes的文件do.txt,然后我们在终端中快速下载了该文件。

将两个文件都下载到我们的终端后,我们退出了FTP,并决定查看这些文件。 机密.txt告诉我们Nathan桌面上已经保留了密码,并且do.txt文件的注释要求我们完成剩余的任务,并告诉我们有关NVMS,NSClient和SharePoint的三种服务。我们知道NVMS位于端口80之后,而NSClient位于端口8443之后。

有关更多详细信息,我们将需要针对主机启动枚举。因此,我们将导航到Web浏览器以探索HTTP服务。打开网页后,我们将获得一个名为nvms-1000的Web应用程序的主页。

开发

由于我们无法在初始枚举中获得证书。我们将必须找到一种不同的方法来访问NVMS-1000的授权登录面板。因此,我们使用searchsploit来搜索任何可用的漏洞利用。

这给了我们目录遍历漏洞。现在,使用searchsploit命令的-m参数下载此攻击脚本。

现在,让我们阅读漏洞利用的内容,并了解漏洞利用的用法。

我们看到该漏洞告诉我们,这是TVT网络监视管理软件3.4.1版中存在的未经身份验证的目录遍历漏洞。 NVMS默认在端口80上进行监听。由于我们已经知道Nathan桌面上存在password.txt,因此我们现在尝试使用curl及其选项-path-as-is来提取Password.txt的内容,以便路径URL中提供的内容不会删除任何DOT段。

我们有两个用户Nadine和Nathan,现在我们的下一个工作是在hydra的帮助下为SSH登录暴力找到用户的密码。猜测密码的最佳方法是使用我们在Desktop 内森上找到的密码文件。

我们有一个用户名和密码,因此我们尝试访问目标系统上的SSH,因此我们能够成功登录。

登录后,我们遍历用户的桌面以读取user.txt标志。

特权提升

现在是时候升级实验室的权限了。现在,如果我们返回在ftp登录过程中发现的Notes文件,我们就会知道有NSClient可以使用该用户。接下来,我们枚举用户目录以查看Program 档案目录。

C:\ 程序文件目录

输入Program 档案后,我们找到了另一个有趣的目录NSClient,在ftp登录期间发现的Notes文件中提到了该目录。现在让’s深入NSClient目录。

在这里,我们发现了一个扩展名为.client的.ini文件,名称为nsclient.ini,它似乎包含某种基于文本的内容,这些内容对于我们移动很有用。它也可能包含某种用于Admin的密码,只是一个猜测。

是的,我们找到了密码哈希,下面对此进行了确认。

现在,如果我们回想起Nathan的do.txt注释,它谈到了锁定NSClient,因此在上面的屏幕快照中可以确认,该状态仅允许访问localhost(127.0.0.1)。 NSClient正在端口8443上工作,该端口已在localhost(127.0.0.1)上打开。

由于我们知道ssh已启用,因此我们可以执行Local ssh隧道,这将使我们的工作更加轻松。现在我们再次切换到Kali Linux进行本地隧道化。

执行以下命令将端口转发到本地计算机。

这将在我们的本地主机上打开端口8443,我们通过在浏览器中打开Web应用程序进行了确认。

因此,我使用在程序文件中找到的nsclinet.ini文件中的枚举详细信息登录。

现在,我们的下一个工作是为Windows下载netcat 64位。

现在,我们的下一个工作是创建一个批处理文件,该文件将启动 网络猫。我们将通过一个名为.bat的文件进行利用 利用.bat.

现在,通过使用以下命令在目标PC上共享我们的exploit.bat文件来启动python服务器。

下一个任务是将我们的exploit.bat上传到目标实验室的Temp文件夹中,我们将通过PowerShell进行此操作。我们的python服务器已经在后台运行。现在要上传目标计算机的.bat文件,请执行以下命令:

从上面的屏幕截图中,可以确认exploit.bat文件已安全到达目标计算机。

下一步是使用netcat shell作为管理员获得shell,因此我们的下一个工作是将netcat上传到目标计算机的Temp文件夹中。为此,请执行以下命令:

我们已经成功上传了我们的netcat,上面的屏幕截图对此进行了确认。接下来,我们将在设置中添加一个新部分,路径类似于/ settings / external scripts / scripts,现在将设置外壳的键值将为exploit.bat所在的路径赋值。

现在,我们通过在调度程序中添加新的部分来重复该过程,路径如下所示 / settings / scheduler。现在将键设置为shell并将value设置为 间隔= 1m 并添加更改。

保存所有更改后,我们将重新加载Web应用程序。

让我们等待脚本执行。 Boom,我们以管理员身份进入。

现在,我们在“ C:\ 程序 档案 \ NSClient ++”中枚举系统>”,我们找到了一个名为“ 根.txt”的文件。我们看一下文件的内容并找到最终标志。

作者:Japneet Kaur Gandhi  是一名技术作家,研究员和渗透测试仪。 Contact 这里

发表评论

您的电子邮件地址不会被公开。 必需的地方已做标记 *