{"id":"CVE-2026-59963","title":"Tandoor Recipes: Private recipe file and share-link authorization bypass in recipe utility API endpoints","summary":"Tandoor Recipes is an application for managing recipes, planning meals, and building shopping lists. Prior to 2.6.10, recipe utility endpoints retrieve same-Space Recipe objects without invoking the private-recipe owner or sharing permis…","severity":"high","cvss":7.1,"cvssVector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:L/A:N","cvssSource":"cna","cwe":["CWE-639"],"vendor":"TandoorRecipes","product":"recipes","affected":["recipes < 2.6.10"],"ssvc":{"exploitation":"none","automatable":"no","technicalImpact":"partial","timestamp":"2026-10-16T19:34:21.929785Z"},"published":"2026-10-16","updated":"2026-10-16","sourceUpdated":"2026-10-16T21:16:08.364Z","source":"CVEORG","sourceUrl":"https://www.cve.org/CVERecord?id=CVE-2026-59963","references":[{"url":"https://github.com/TandoorRecipes/recipes/security/advisories/GHSA-cqj3-64qw-4w52","label":"https://github.com/TandoorRecipes/recipes/security/advisories/GHSA-cqj3-64qw-4w52"},{"url":"https://github.com/TandoorRecipes/recipes/commit/82fd4e00f1387a1c466489989f2e94487149f7f4","label":"https://github.com/TandoorRecipes/recipes/commit/82fd4e00f1387a1c466489989f2e94487149f7f4"},{"url":"https://github.com/TandoorRecipes/recipes/commit/8b4a4c06902d024609d7376b6c45f5ea4f9bed07","label":"https://github.com/TandoorRecipes/recipes/commit/8b4a4c06902d024609d7376b6c45f5ea4f9bed07"},{"url":"https://github.com/TandoorRecipes/recipes/releases/tag/2.6.10","label":"https://github.com/TandoorRecipes/recipes/releases/tag/2.6.10"}],"tags":["cve.org"],"ingestedAt":"2026-10-16T19:46:24.327Z","slug":"CVE-2026-59963","body":"## Overview\n\nTandoor Recipes is an application for managing recipes, planning meals, and building shopping lists. Prior to 2.6.10, recipe utility endpoints retrieve same-Space Recipe objects without invoking the private-recipe owner or sharing permission when an authenticated member of a shared Space supplies another member's private recipe identifier to AI import, file, external-link, or share-link endpoints. Request processing uses api/ai-import/, api/get_recipe_file/, api/get_external_file_link/, api/share-link/, CustomRecipePermission. The attack works because the endpoints read private recipe files, send file bytes to the configured AI provider, or create and disclose external links without object-level authorization, and api/share-link/ can create a public link when Space sharing is enabled. This can expose private recipe files and sensitive uploaded content to another same-Space user and to configured external services. This issue is fixed in version 2.6.10.\n\n## Affected\n\n- `recipes < 2.6.10`\n\n## Remediation\n\nRefer to the linked advisories for vendor-supplied fixes and affected version ranges.","depth":"twilight","depthScore":39,"depthScoreParts":{"impact":39.1,"likelihood":0,"exploitation":0,"ransomware":0},"changes":[]}