声明:此文仅供学习记录研究使用,切勿用于非法用途,否则后果自负!
参考文档
前期准备还是和之前一样,语言选english,因为没有mysql环境,所以安装的时候可以选择sqlite数据库,其他默认下一步
下载poc:https://github.com/thezdi/PoC/tree/master/Drupal/drupal_xss_rce.zip
利用
找到管理员资料头像上传处/user/1/edit
Drupal 的图片默认存储位置为 /sites/default/files/pictures//,默认存储名称为其原来的名称
/admin/config/media/file-system处设置临时目录
phar://./sites/default/files/pictures/2022-03/blog-ZDI-CAN-7232-cat.jpg
保存之后即可触发
这里的命令显然是/etc/passwd的结果,为了获取flag,我们应该要cat /flag或者读env
所以修改poc
将cat /etc/passwd换成env,因为此部分为序列化后的结果,所以也要将env前面的s:15:修改为s:3:
修改文件名之后重新上传,重复上面的操作,即可得到flag
phar://./sites/default/files/pictures/2022-03/blog-ZDI-CAN.jpg