在 Statamic CMS 版本 <4.33.0 中,当前端有一个带活跃文件上传的表单时,无论 MIME 验证规则如何,都可以发送伪装成图片的 PHP 文件。此漏洞允许攻击者上传任意且潜在危险的文件,甚至执行服务器端脚本。
将 Statamic CMS 更新到版本 4.33.0。
1) 在 Statamic CMS 安装中,创建一个表单及其相应页面。
2) 在表单蓝图中,包含一个“资产字段”,并在“验证”选项中选择,例如 mimetypes:image/jpeg、mimes:jpg、image。
3) 创建一个带有一些 PHP 脚本的多格式 jpg 文件,例如:
exiftool -Comment="<?php phpinfo(); ?>" image.jpg
4) 将此文件重命名为 image.php。
5) 在表单页面上,上传创建的 image.php 文件。
6) 现在,要运行此文件,只需访问 https://yoursite.com/assets/image.php
注意:将 https://yoursite.com 替换为你的测试安装地址。