Description
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.
Published: 2026-04-07
Score: 7.3 High
EPSS: < 1% Very Low
KEV: No
Impact: Information Disclosure
Action: Patch
AI Analysis

Impact

Tandoor Recipes provides an endpoint for adding items to a shopping list. The POST /api/food/{id}/shopping/ route accepts the amount and unit fields directly from the request data and passes them to the model creation function without validation. If amount contains a non‑numeric value, the backend raises an unhandled exception that results in a generic HTTP 500 response. Additionally, the unit identifier may belong to a different space, allowing an attacker to associate a shopping list item with foreign‑key references from another tenant. Other endpoints that create a shopping list entry use a serializer that correctly validates and sanitizes these fields, making this endpoint the unique source of the vulnerability. A fix was released with version 2.6.4, which restores proper validation.

Affected Systems

Tandoor Recipes, the recipe‑management application, is affected in all releases older than 2.6.4. The flaw exists in the POST endpoint that creates shopping list entries from a recipe by ID. Users operating any prior release of the software can send crafted requests to this endpoint and trigger the exception or expose cross‑account references.

Risk and Exploitability

The CVSS score of 7.3 indicates high severity, but the EPSS value of less than 1 percent suggests that active exploitation is currently unlikely. The vulnerability is not listed in CISA’s KEV catalog. The most probable attack vector involves sending a crafted POST request to the endpoint with an invalid amount string or an out‑of‑space unit ID; authentication to the API is inferred from typical use of protected endpoints. An attacker could disrupt services by triggering 500 errors and potentially glean foreign‑key references that reveal the existence of records in other tenant spaces. Administrators should monitor logs for repeated 500 responses and apply the vendor’s patch to close the issue.

Generated by OpenCVE AI on April 14, 2026 at 22:38 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade to Tandoor Recipes version 2.6.4 or later.
  • Temporarily block write access to /api/food/{id}/shopping/—for example, disable the route or use firewall rules until the patch is applied.
  • Monitor server logs for recurring HTTP 500 responses from this endpoint to detect exploitation attempts.

Generated by OpenCVE AI on April 14, 2026 at 22:38 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Tue, 14 Apr 2026 20:15:00 +0000

Type Values Removed Values Added
First Time appeared Tandoor
Tandoor recipes
CPEs cpe:2.3:a:tandoor:recipes:*:*:*:*:*:*:*:*
Vendors & Products Tandoor
Tandoor recipes

Wed, 08 Apr 2026 20:15:00 +0000

Type Values Removed Values Added
First Time appeared Tandoorrecipes
Tandoorrecipes recipes
Vendors & Products Tandoorrecipes
Tandoorrecipes recipes

Tue, 07 Apr 2026 18:00:00 +0000

Type Values Removed Values Added
Description 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.
Title Tandoor Recipes — `amount`/`unit` bypass serializer in `food/{id}/shopping/`
Weaknesses CWE-1284
CWE-639
References
Metrics cvssV3_1

{'score': 7.3, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L'}

ssvc

{'options': {'Automatable': 'yes', 'Exploitation': 'poc', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Subscriptions

Tandoor Recipes
Tandoorrecipes Recipes
cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-04-07T15:58:45.810Z

Reserved: 2026-04-02T20:49:44.454Z

Link: CVE-2026-35489

cve-icon Vulnrichment

Updated: 2026-04-07T15:57:33.375Z

cve-icon NVD

Status : Analyzed

Published: 2026-04-07T16:16:27.160

Modified: 2026-04-14T20:13:00.487

Link: CVE-2026-35489

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-04-15T16:30:09Z

Weaknesses