Skip to main content

Recipes EUVDEUVD-2026-19674

| CVE-2026-35489 HIGH
Authorization Bypass Through User-Controlled Key (CWE-639)
2026-04-07 GitHub_M
7.3
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Send POST request to /api/food/{id}/shopping/
  2. Delivery
    Provide invalid amount value triggering unhandled exception
  3. Exploit
    Receive HTTP 500 error exposing server information
  4. Execution
    Use unit ID from different Space
  5. Persist
    Associate cross-space unit leaking foreign-key references
  6. Impact
    Access data across tenant boundaries

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Object-level authorization, IDOR prevention
Exploitation Conditions

Remote unauthenticated attacker can exploit Tandoor Recipes versions prior to 2.6.4 by sending crafted POST requests to /api/food/{id}/shopping/ endpoint with cross-Space unit IDs to leak foreign-key references across tenant boundaries or trigger HTTP 500 errors with invalid amount values.

Impact

Real-world risk is moderate-high for multi-tenant Tandoor deployments, though lower for single-user instances. The CVSS 7.3 score (AV:N/AC:L/PR:N/UI:N) correctly identifies network accessibility and low exploitation complexity with no authentication required, yielding partial impact across confidentiality, integrity, and availability. The confidentiality impact stems from cross-tenant unit ID leakage, which could expose organizational structure or recipe metadata from other tenants. Integrity impact involves polluting shopping lists with invalid data or foreign unit references. Availability impact is immediate via trivial denial-of-service by sending malformed amount values to crash request handlers. However, practical exploitation requires knowledge of valid food IDs and the API structure, limiting fully automated mass exploitation. No EPSS score is available, but the combination of unauthenticated access, low complexity, and publicly documented remediation in GitHub advisories suggests moderate exploitation likelihood once details are widely known. No public exploit code exists and the vulnerability is not on CISA KEV, indicating no confirmed active exploitation. SSVC factors: exploitation is possible (technical details public), automatable (API-based, repeatable), and technical impact is moderate (limited to application-layer DoS and metadata leakage, not system compromise). Priority should be high for SaaS/multi-tenant deployments, medium for self-hosted single-tenant instances.

Exploit ScenarioDerived

An unauthenticated attacker identifies a public-facing Tandoor Recipes instance (version <2.6.4) and enumerates valid food object IDs through trial-and-error or by scraping publicly accessible recipe pages. The attacker sends crafted POST requests to /api/food/{valid_id}/shopping/ with amount set to a non-numeric string (e.g., 'XXX'), causing repeated HTTP 500 errors and degrading service availability for legitimate users. In a multi-tenant scenario, the attacker further sends requests with unit IDs incrementally iterated across a range, successfully associating unit objects from Tenant A's Space with shopping list entries nominally scoped to Tenant B, thereby leaking foreign-key relationships and potentially exposing organizational recipe structures or ingredient taxonomies across tenant boundaries. No public exploit code exists, but exploitation requires only basic HTTP client tools and knowledge of REST API conventions.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.1% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Apr 07, 2026

Unauthenticated API input validation flaws in Tandoor Recipes (<2.6.4) enable cross-tenant data leakage and denial of service. The /api/food/{id}/shopping/ endpoint accepts unvalidated amount and unit parameters, allowing attackers to cause application crashes via malformed numeric inputs (HTTP 500 errors) and leak foreign-key references across multi-tenant Space boundaries by associating unit IDs from other tenants. CVSS 7.3 reflects network-accessible, low-complexity attacks requiring no authentication. No public exploit identified at time of analysis, though exploitation is straightforward via direct API calls. EPSS data not available. Vendor-released patch: version 2.6.4.

RemediationAI

Upgrade to Tandoor Recipes version 2.6.4 or later, which implements proper input validation by routing the vulnerable endpoint through ShoppingListEntrySerializer to enforce field-type validation and tenant boundary checks. The fix is available in the official release at https://github.com/TandoorRecipes/recipes/releases/tag/2.6.4. For environments where immediate upgrade is not feasible, implement network-level access controls to restrict API endpoint access to authenticated users only, though this is a mitigation rather than a complete fix as it does not address the cross-tenant data leakage for authenticated users in multi-tenant deployments. Review application logs for HTTP 500 errors on the /api/food/*/shopping/ endpoint and unexpected ShoppingListEntry records with cross-Space unit references to identify potential exploitation attempts. No temporary code-level workaround is documented; the architectural fix in 2.6.4 is the definitive remediation.

Affected VersionsENISA

Recipes < 2.6.4

Affected Packages

euvd recipes fix: 2.6.4

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

Tandoor Recipes is a Django-based web application for recipe management with multi-tenant architecture using Space-based isolation. The vulnerability exists in a POST endpoint at /api/food/{id}/shopping/ that bypasses the application's standard ShoppingListEntrySerializer validation layer. Instead of using the serializer's field validation, the endpoint directly reads amount (expected numeric) and unit (foreign key to Unit model) from request.data and passes them to Django ORM's ShoppingListEntry.objects.create() without sanitization. This creates two distinct issues: (1) Type confusion when non-numeric strings are passed as amount values, causing Python/Django exceptions that propagate as HTTP 500 errors; (2) Missing tenant isolation checks on the unit foreign key, allowing an attacker to reference Unit objects from different Space contexts, violating the multi-tenant boundary and exposing cross-tenant foreign-key relationships. The root cause maps to CWE-639 (Authorization Bypass Through User-Controlled Key), where user-supplied foreign keys are not validated against authorization context. All other ShoppingListEntry creation endpoints properly use ShoppingListEntrySerializer, which includes field-level validation and tenant boundary enforcement, making this an isolated architectural inconsistency.

Know when Recipes gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (GitHub_M) PRIMARY 7.3 HIGH
AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L

Primary rating from Vendor (GitHub_M) · only source for this CVE.

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
Low
Integrity
Low
Availability
Low

Lifecycle Timeline

3
Analysis Updated
Apr 16, 2026 - 06:04 EUVD-patch-fix
executive summary
Patch available
Apr 16, 2026 - 05:29 EUVD
2.6.4
CVE Published
Apr 07, 2026 - 14:53 nvd
HIGH 7.3

DescriptionCVE.org

Tandoor Recipes is an application for managing recipes, planning meals, and building shopping lists. Prior to 2.6.4, the POST /api/food/{id}/shopping/ endpoint reads amount and unit directly from request.data and passes them without validation to ShoppingListEntry.objects.create(). Invalid amount values (non-numeric strings) cause an unhandled exception and HTTP 500. A unit ID from a different Space can be associated cross-space, leaking foreign-key references across tenant boundaries. All other endpoints creating ShoppingListEntry use ShoppingListEntrySerializer, which validates and sanitizes these fields. This vulnerability is fixed in 2.6.4.

Executive ViewAI

Why It Matters

Tandoor Recipes versions prior to 2.6.4 contain unauthenticated API flaws that allow attackers to trigger application crashes and leak data across tenant boundaries without credentials, directly exposing multi-tenant recipe and food data isolation controls. Organizations running affected versions face immediate service disruption risk and confidentiality breach of isolated tenant information.

Business Impact: High
Compensating Controls

Vendor-released patch: version 2.6.4. If immediate patching is not feasible, implement network-level API rate limiting on the /api/food/{id}/shopping/ endpoint, disable or restrict API access to trusted networks only, and monitor for HTTP 500 errors on this endpoint as a potential exploitation indicator.

Threat Intelligence Overview

EPSS Score
0.1%
Top 83% exploitable
Data Quality
6 sources
Confidence: High

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.1%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Out-of-Cycle
Exploitation
Poc
System Exposure· derived
Open
Automatable
Yes
Human Impact
High
Technical Impact
Partial

Priority Score

36
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +36
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.

CVE-2025-23211 CRITICAL POC
9.9 Jan 28

Tandoor Recipes is an application for managing recipes, planning meals, and building shopping lists. Rated critical seve

CVE-2026-25991 HIGH POC
7.7 Feb 13

Tandoor Recipes prior to 2.5.1 contains a blind server-side request forgery vulnerability in the Cookmate recipe import

CVE-2025-57396 MEDIUM POC
6.5 Sep 19

Tandoor Recipes 2.0.0-alpha-1, fixed in 2.0.0-alpha-2, is vulnerable to privilege escalation. Rated medium severity (CVS

CVE-2024-0403 MEDIUM POC
6.5 Mar 01

Recipes version 1.5.10 allows arbitrary HTTP requests to be made through the server. Rated medium severity (CVSS 6.5), t

CVE-2022-23071 MEDIUM POC
6.5 Jun 19

In Recipes, versions 0.9.1 through 1.2.5 are vulnerable to Server Side Request Forgery (SSRF), in the “Import Recipe” fu

CVE-2026-33152 CRITICAL
9.1 Mar 26

Tandoor Recipes versions prior to 2.6.0 allow unlimited brute-force password guessing attacks against any known username

CVE-2026-25964 MEDIUM POC
4.9 Feb 13

Path traversal in Tandoor Recipes prior to 2.5.1 allows authenticated users with import permissions to read arbitrary fi

CVE-2026-61726 HIGH
8.1 Oct 16

Broken object-level authorization in Tandoor Recipes before 2.6.12 lets an authenticated member of the same Space, holdi

CVE-2026-35488 HIGH
8.1 Apr 07

Privilege escalation in Tandoor Recipes prior to version 2.6.4 allows authenticated users with read-only shared access t

CVE-2026-35045 HIGH
8.1 Apr 06

Authenticated users can modify and expose private recipes in Tandoor Recipes through broken object-level authorization i

CVE-2026-33149 HIGH
8.1 Mar 26

Tandoor Recipes versions through 2.5.3 permit Host header injection attacks that enable invite link poisoning, allowing

CVE-2026-59970 HIGH
7.7 Oct 16

Authenticated blind server-side request forgery in Tandoor Recipes before 2.6.10 allows a user with privileges to create

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy