CozyHosting
端口扫描
开放22、80端口
端口利用
访问80端口
对网站进行目录扫描
挨个访问,发现sessions下有json数据
回到登录界面,修改登录的JSESSIONID为该用户的ID
成功进入
获取shell
登录后发现/admin页面中存在一个使用SSH和密钥进行添加远程主机的功能,通过测试发现可以在username处进行RCE。经过测试发现这个路径还没有做鉴权处理,非admin用户也可以执行命令
在本机上编写一段shell代码,并开启http服务,使得靶机能够访问shell代码来反弹shell
成功拿到shell
权限提升
进去后发现有一个jar文件,将其下载到本地分析
发现有一段postgresql的用户名密码,命令行登录查看
使用\l查看所有的数据库,\c连接到web服务器使用的数据库cozyhosting,\d查看所有的表
查看users表中的内容
发现有用户名和密码,尝试使用john爆破admin的密码
爆破成功,使用admin账户登录ssh
发现不对,可能不存在admin这个用户,回到shell界面查看存在的用户
发现有josh用户,切换到josh用户
查看当前用户能够执行的命令
发现可以用root权限运行ssh,使用ssh提权
提权成功