免责声明:本教程仅限学术讨论使用,请勿作用于非法用途!!!如有用于非法用途,本人概不负责。
一、信息收集
1、端口扫描
发现两个端口:22、80;其中80端口扫描后发现其重定向至域名http://shoppy.htb
我们将域名添加至/etc/hosts中,使kali可以解析。
2、子域名收集
我们发现一个域名,所以我们可以尝试是否存在子域名。

找到子域名 mattermost.shoppy.htb,并将其添加到/etc/hosts中。
3、跑目录

通过对shoppy.htb扫描,发现路径中有/admin跳转至/login
二、对已知信息进行手动检查
访问shoppy.htb并查看源代码,没有发现。

访问mattermost.shoppy.htb发现登录页面
访问shoppy.htb/admin也发现登录页面

此时可想到尝试使用万能密码对两个登录页面进行尝试,在shoppy.htb/admin,使用payload:admin'||''==='可进入后台

在搜索框中搜索admin'||''===',可获得用户hash


使用 hashcat搭配字典rockyou(默认在/usr/share/wordlists/下)可获得密码

此时可尝试用该用户名和密码登录mattermost.shoppy.htb

通过查看内容,发现一个用户名和密码,尝试使用该用户名和密码进行ssh连接即可获取user flag。

三、提权
首先sudo -l检查该用户可执行与无法执行的指令

发现该用户可以deploy用户运行 /home/deploy/password-manager,我们运行该指令,发现需要输入密码

一番尝试后决定去查看这个文件夹看看能否有收获

在查看该文件时发现密码,尝试使用该密码

得到deploy用户的密码,通过ssh可进入该用户

一番尝试后发现可能漏掉了什么信息导致无法获取root,于是又一次返回网站查看是否有提示,发现该网站的部署是用docker,可尝试使用
docker run -v /:/mnt --rm -it alpine chroot /mnt sh来获得root的shell(参考docker | GTFOBins)


查看/root/root.txt即可获得flag

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/49885.html