Symfonos2 VulnHub 演练
CTF或检查标志问题发布在 vulunhub.com 上。 VulunHub是一个提供易受攻击的应用程序/机器以获得信息安全领域实践经验的平台。 Symfonos 2 是一台 vulunhub 上的机器。下载访问: https ://www.vulnhub.com/entry/symfonos-2,331/
以下是 Vulunhub Symfonos 2 演练的步骤:
我们需要做的第一步是进行一些情报收集。这包括足迹主机、服务器等。
发现阶段:
让我们首先扫描网络并识别同一网络中的主机 IP 地址。
输入以下命令:
netdiscover -i eth0 -r 10.0.2.0/16
所以看起来10.0.2.25是我们的目标 IP。下一步是使用 Nmap 工具扫描目标以检查是否有任何打开的端口并探测 VM 上正在运行的服务。
扫描阶段:
'将从快速 Nmap 扫描开始以查找开放端口
输入以下命令:
nmap -sV -sC -p- target_IP_address
访问 Nmap 备忘单以了解有关 nmap 的更多信息。
侦察阶段
1.网络侦察
Nmap 扫描期间发现的有趣服务的完美组合!让我们首先访问受害者机器的默认页面 80 端口。
输入以下命令:
curl [website address]
如您所见,除了图像文件之外,这里没有发现任何可疑的东西。我通过STRINGS命令调查图像,但再次失败。
2. SMB侦察
Enum4linux是一个用于枚举Windows和Linux 系统上的 SMB 共享的工具。它基本上是 Samba 包中工具的包装,可以轻松快速地从与 SMB 相关的目标中提取信息。
输入以下命令:
enum4linux -a [target_IP_address]
感觉像似曾相识!有一个具有只读访问权限的匿名共享。是时候看看里面有什么了。
但首先,如果您想了解有关 enum4linux 开关的更多信息,请访问https://www.hackingarticles.in/a-little-guide-to-smb-enumeration/
输入以下命令:
smbclient //[target_IP_address]/anonymous
我们有一个备份目录让我们来探索它。 (最初,我们只会看到备份文件)
我们有一个 .txt 文件,让我们通过get [file_name]将它复制到我们的工作目录。
注意: – 'get ' 命令用于从远程主机获取数据到我们当前的工作目录。
此外,在SMB 侦察期间,我们还获得了两个本地用户
探索 log.txt 文件可以发现,我可以从该文件中确定一些有趣的点:
- /var/backups/shadow.bak中有/etc/shadow文件的备份,所以这可能是未来的目标
- 匿名 SMB 共享指向/home/aeolus/share ,因此 aeolus 是有效的用户名
FTP侦察
注意:-有两种方法可以找到用户 aeolus 的密码。我们将看到两者。
由桑巴分享
1.首先通过以下方式访问FTP服务
FTP [target_IP_address]
2.然后只需将/etc/shadow和/var/backups/shadow.bak文件复制到 aeolus sharepoint。
3.现在,再次连接到匿名 smbclient 以查看我们是否获得了文件。
在这里,您将获得密码“ sergioteamo” 。
由九头蛇
1.我们可以通过hydra找回密码,hydra也是kali的一个内置工具,用于提取不同端口的密码。
输入以下命令:
hydra -f -l [user_name] -P [password_file_path] [service_name]://[target_IP_address] -o [output_file]
在此处了解有关hydra 开关的更多信息!
SSH 侦察
现在,我们有一个用户aeolus和密码sergioteamo 。让我们尝试通过用户aeolus ssh 登录。
现在我尝试了各种命令来查看用户aeolus是否有任何权限但一无所获。用户 aeolus 无法运行 Sudo 命令,并且没有具有SUID 位的文件。因此,我们必须尝试其他方法来提升我们的权限。
注意:在网上搜索后,我发现了一个用于枚举操作系统信息的.sh脚本文件。从这里复制代码!在[file_name.sh]中。现在,使用chmod +x [file_name.sh]权限执行该文件,以避免远程主机上出现任何问题。
我们承认,这里有很多输出。但是有几件事很有趣:
- 内核版本(4.9.0-9)
- 系统上的其他用户 (Cronos)
但对我来说最突出的是其他正在监听的端口。我可以看到MySQL在端口3306上运行,并且在端口8080上运行了一些东西。在LinEnum.sh的输出中还有一个 apache 配置,所以我要先检查一下。
访问路径cd /etc/apache2/sites-enabled,我们发现另一个站点在端口 8080 上启用为 librenms.conf。
退出当前 ssh 登录会话并尝试通过 SSH 上的 VNC 连接进行连接。您需要在 Linux 或 UNIX 机器上的终端中运行此命令:
ssh -L 8080:localhost:8080 aeolus@10.0.2.25.
在此处了解有关通过 SSH 登录 VNC 的更多信息! .
现在,通过http://localhost:8080访问 firefox 上的 8080 端口,我们找到了 LibreNMS 登录页面。让我们尝试通过用户名 aeolus和密码 sergioteamo登录。
利用 Metasploit
1.我想到的第一件事是搜索谷歌是否有可用于 LibreNMS 的漏洞,我得到了其中两个。我们也可以在Metasploit中执行相同的操作,显示相同的结果。
说真的,我已经使用了这两个漏洞,但不知何故 collect_cmd_inject 不起作用。所以,我继续使用 addhost。
2.如下图所示设置选项并运行exploit命令获取所需会话。
3.现在与当前会话进行交互
session -i [session_id]
须藤 mysql -e '\! /bin/sh'
寻找旗帜
1.要获取交互式 shell,请使用Python脚本
python -c 'import pty; pty.spawn ("/bin/bash")' .
需要注意的一件事是,我们通过 Cronus 用户(即 add-host 用户)连接到远程主机。现在,检查 Cronus 用户可以作为 Sudo 执行的权限。
2.如前所述,用户可以以 sudo 的身份运行/usr/bin/mysql ,但我们正在升级权限。因此,我们必须使用shell 脚本,该脚本可用于通过生成交互式系统 shell 来突破受限环境。
在终端输入以下命令
sudo mysql -e '\! /bin/sh'
3.移动到根目录并使用ls并且有 hack 的证明。