Noter
Noter 是一种中型 Linux 机器,其特点是利用了 Python Flask 应用程序,该应用程序使用易受远程代码执行影响的“节点”模块。由于“MySQL”守护进程以用户“root”身份运行,因此可以通过利用“MySQL”的用户定义函数来利用它来获得RCE并将我们的权限升级到“root”。
外部信息收集
端口扫描
循例nmap
Web枚举
注册个账号直接登进去
逛一圈没有常见的漏洞点
base64解码
flask-unsgin直接爆破
生成用户
for name in `cat /usr/share/wordlists/SecLists/Usernames/Names/names.txt`;do flask-unsign --sign --cookie "{'logged_in': True, 'username': '$name'}" --secret 'secret123' | grep -iE 'ey.*' -o >> ./res.txt;done
ffuf
有料
note 1
使用这组凭据我们可以登录ftp
有个pdf直接下下来
前面还有个ftp_admin
ftp_admin:ftp_admin@Noter!
在其中一个zip的app.py发现一组mysql凭据
md-to-pdf
packafe-lock.json中找到版本号
poc:
https://github.com/simonhaenisch/md-to-pdf/issues/99
可以RCE
常规reverse shell
本地权限提升
前面给了mysql的凭据,而且mysql还是root运行的
udf,传过去编译
plugin_dir
照着exp加载udf就ok
suid bash
它来了