vulnhub -- Nagini(难度--medium)

靶机下载地址:下载链接

主机发现

还是同样的方法arp-scan -l来发现主机ip
在这里插入图片描述

信息搜集

得到靶机ip之后,通过nmap扫描进行信息搜集,得知开放22,80端口以及相关版本服务
在这里插入图片描述
通过80端口,打开网站发现,该网站只有一张图片
在这里插入图片描述
通过查看源码也没有什么发现,接下来用gobuster进行路径扫描,发现了两个路径(/joomla和/note.txt)
在这里插入图片描述在这里插入图片描述
Joomla是一个CMS框架系统,再次对Joomla目录进行扫描,发现得到很多目录,但是基本上没有可用信息,只有一个后台登录页面看能不能进行突破
在这里插入图片描述
接着查看另外一个文件,发现需要http3(https://zhuanlan.zhihu.com/p/143464334)才能访问
在这里插入图片描述

HTTP3环境

所以需要安装http3的环境(浏览器或者小工具),这里用小工具https://github.com/cloudflare/quiche
安装之后进入目录quiche,需要安装的东西太多时间太长,这里就给出执行的命令
apt install cargo
apt install cmake
cargo build --examples
如果后面运行会报错,这里需要将rustc更改(没有报错可以忽略,直接测试)
apt purge rustc
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
然后选择1
source $HOME/.cargo/env
cargo build --examples
cargo test
http3环境搭建好之后,访问这个地址,发现给出了信息,有一个php的路径和一个备份文件
在这里插入图片描述

访问/internalResourceFeTcher.php,发现是一个好像可以访问内网的页面
在这里插入图片描述

配置文件泄露

再访问备份文件,发现可以下载下来
在这里插入图片描述

发现里面有数据库的配置信息
在这里插入图片描述

SSRF漏洞利用

再结合前面的页面中可能存在SSRF漏洞,尝试读取下/etc/passwd以及http://127.0.0.1,结果可以读取成功和访问成功
在这里插入图片描述
接下来就可以利用gopher协议和得到的数据库信息进行获取账号密码,利用工具: git clone https://github.com/tarunkant/Gopherus.git 就会生成payload进行信息获取
在这里插入图片描述
在这里插入图片描述
然后通过查看user,发现一个表交joomla_users,应该是用户表,在最后发现了site_admin的用户操作的记录
在这里插入图片描述
在这里插入图片描述
由于密码通过加密的,无法直接获取,可以直接利用利用MD5加密生成密码,和这个用户的账号或者邮箱更新他的密码
在这里插入图片描述
在这里插入图片描述

发现更新成功
在这里插入图片描述
然后直接尝试登录,可以登陆进入后台
在这里插入图片描述

反弹shell

进入后台之后,寻找到template里面有上传代码的地方,于是用kali里面自带的反弹shell进行修改上传
在这里插入图片描述

将其反弹的代码的ip改为攻击者ip
在这里插入图片描述

然后将template里面protostar模板的error.php将其完全覆盖,保存
在这里插入图片描述
发现这个文件在protostar下的error.php里,进行访问,得到shell
在这里插入图片描述
得到 shell之后,发现在根目录下,进入/home目录,发现有两个用户
在这里插入图片描述
查看第一个用户里面,发现有个horcrux2.txt和火狐浏览留下的文件以及/bin,但是权限不够
在这里插入图片描述
再看看第二个用户,发现一个加密的字符串
在这里插入图片描述
将其base64解密之后,感觉是一个密码
在这里插入图片描述
尝试登录ssh,发现登陆成功
在这里插入图片描述
然后在网站目录下可以获取第一个flag
在这里插入图片描述

提升权限

发现这个文件名与刚才的另外一个用户的文件名相似,那个应该为第二个flag,通过查看/bin目录,发现里面有个可执行文件,并且它具有suid权限,这个执行文件就是用来复制文件的
在这里插入图片描述
因此,我们可以利用在kali机上,生成ssh的秘钥对进行ssh登录
在这里插入图片描述
然后将其公钥进行传输
在这里插入图片描述
将其文件名在snape用户改为认证的名字,并赋予权限之后,将其拷贝至另外一个账号下的.ssh下
在这里插入图片描述
这样,就可以利用kali刚才生成的私钥进行解密之后,就不需要输入密码就可以登陆成功
在这里插入图片描述
最后发现Mozilla文件应该存放在客户端,而在这里有这个文件,可能有一些登录凭据,想将这个文件拷贝到kali上
在这里插入图片描述
然后利用这个小工具进行提取https://github.com/unode/firefox_decrypt
在这里插入图片描述
得到了账号密码,进行ssh登录,得到flag
在这里插入图片描述

总结:通过信息搜集的知需要http3,利用http3访问得到一个备份文件和SSRF漏洞利用页面,得到密码进入后台上传反弹shell代码,然后利用ssh公钥登录另外一个账户,最后通过火狐浏览器的凭证还原得到密码得到root。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Ability~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值