基本信息

lab地址:https://www.hackthebox.eu/home/machines/profile/230

端口扫描

只有80和22端口

80

注册和登录,因为没有账号,就先随便注册一个, 登录进去后发现管理员邮箱:

管理员账号尝试弱口令无效,扫目录能够发现admin登录入口,没有账号密码。

sql截断

前端有校验邮箱长度,如果对注册进行fuzz,过长的email注册成功但是没法登陆,数据可能截断了,考虑尝试sql截断攻击。

这样注册一个新账号,截断导致可以直接使用admin@book.htb进行登录

PDF XSS LFI

用户界面可以提交文件,管理界面导出pdf,里面链接是用户上传的文件被转换为pdf:

另外参数可以XSS,导出pdf是解析后的内容,那么可以考虑pdf xss读文件,尝试读取/etc/passwd文件,发现一个reader用户:

user ssh key

读取SSH私钥,SSH登录:

直接复制粘贴的话格式问题比较坑,可以用这个直接转:

https://github.com/pdfminer/pdfminer.six

user flag

登录进去得到user flag:

搜集提权所需信息

lse/linpeas/pspy之类的都可以,这里用的pspy

https://github.com/DominicBreuker/pspy

能够发现循环执行:

1
CMD: UID=0    PID=46156  | /usr/sbin/logrotate -f /root/log.cfg

logrotate exploit

google能搜到对应的利用工具:

https://github.com/whotwagner/logrotten

基本就是日志变动会触发,然后执行我们那边的payload,但反弹shell很容易断,我们可以直接把root用户的ssh密钥复制到其他目录:

root flag

然后使用root用户登录,得到root flag:

参考资料