CVE-2026-61726
WysokieCVSS 8.1Streszczenie
Tandoor Recipes w wersjach przed 2.6.12 pozwala uwierzytelnionemu użytkownikowi z uprawnieniami odczytu i zapisu w przestrzeni ofiary na dostęp i modyfikację prywatnych kroków przepisu innego członka tej samej przestrzeni. Luka wynika z faktu, że StepViewSet i IngredientViewSet filtrują tylko po aktywnej przestrzeni i używają kontroli ról zamiast predykatu właściciela lub udostępniania prywatnego przepisu.
Ocena ryzyka
Atakujący może odczytać i cicho modyfikować prywatne instrukcje przepisów innego członka tej samej przestrzeni. Narusza to poufność i integralność danych użytkowników.
Rekomendacja
Zaktualizuj Tandoor Recipes do wersji 2.6.12 lub nowszej. Rozważ audyt uprawnień w przestrzeniach i ograniczenie dostępu do prywatnych przepisów.
Inne podatności w Tandoor Recipes
Zobacz wszystkie- CVE-2026-59970Wysokie
Tandoor Recipes w wersjach przed 2.6.10 przekazuje kontrolowany przez administratora adres URL dostawcy AI bezpośrednio do LiteLLM bez stosowania kontroli SSRF dla wychodzących żądań. Uwierzytelniony użytkownik może utworzyć przestrzeń, skonfigurować dostawcę AI z adresem URL wskazującym na adres wewnętrzny i wywołać akcję AI, co pozwala na skanowanie wewnętrznych hostów i portów.
- CVE-2026-59966Średnie
Tandoor Recipes przed wersją 2.6.10 wykonuje wzorce wyrażeń regularnych Automation kontrolowane przez użytkownika za pomocą Python re.sub() bez walidacji złożoności ani limitu czasu wykonania. Gdy uwierzytelniony użytkownik zapisze wzorzec powodujący katastrofalny backtracking, a inny użytkownik w tej samej Space zaimportuje pasujący przepis, silnik automatyzacji może zająć proces roboczy Gunicorn aż do przekroczenia limitu czasu żądania, wyczerpując wolne miejsca i czyniąc usługę niedostępną.
- CVE-2026-59963Wysokie
Tandoor Recipes w wersjach przed 2.6.10 pozwala uwierzytelnionemu członkowi współdzielonej przestrzeni na dostęp do prywatnych przepisów innego członka poprzez podanie identyfikatora prywatnego przepisu do endpointów AI import, plików, linków zewnętrznych lub linków udostępniania. Luka wynika z braku autoryzacji na poziomie obiektu, co może prowadzić do odczytu prywatnych plików przepisów, wysyłania ich do dostawcy AI lub tworzenia publicznych linków.
- CVE-2026-59967Średnie
W Tandoor Recipes przed wersją 2.6.10 aplikacja wyszukuje BookmarkletImport po sekwencyjnym kluczu głównym w aktywnym Space bez ograniczania created_by do użytkownika wysyłającego żądanie, gdy uwierzytelniony członek współdzielonego Space prześle identyfikator oczekującego importu innego członka do POST /api/recipe-from-source/. Endpoint zwraca zapisany URL ofiary i przechwyconą zawartość strony, a następnie bezwarunkowo usuwa oczekujący import ofiary.
- CVE-2026-59962Średnie
W Tandoor Recipes przed wersją 2.6.10 niezwalidowane ciągi sort_order i order_field są przekazywane do wywołań Django ORM order_by(), gdy uwierzytelniony użytkownik poda ścieżki przechodzenia przez klucze obce w wyszukiwaniu przepisów, RecipeBook lub zapisanych wartościach CustomFilter. Django interpretuje pola z podwójnym podkreśleniem jako przechodzenie do powiązanych tabel, a kolejność wyników ujawnia wartości z powiązanych pól User.
- CVE-2026-23838Wysokie
Tandoor Recipes to menedżer przepisów, który może być instalowany przez menedżer pakietów Nix. Od wersji 23.05 do 26.05, przy domyślnej konfiguracji (SQLite i domyślny MEDIA_ROOT), plik bazy danych db.sqlite3 jest tworzony w tym samym katalogu co MEDIA_ROOT, przez co może być dostępny zewnętrznie, potencjalnie przez Internet, bez uwierzytelnienia.
Oryginalny opis (angielski, źródło NVD)
Tandoor Recipes is an application for managing recipes, planning meals, and building shopping lists. Prior to 2.6.12, StepViewSet and IngredientViewSet filter only by active Space and use role-level CustomIsUser checks instead of the private-recipe owner or sharing predicate when an authenticated user with read and write API scope in the victim's Space supplies a private recipe or step identifier to the Step API. Request processing uses StepViewSet, IngredientViewSet, api/step/, api/step/{step_id}/, CustomIsUser, CustomRecipePermission. The attack works because the sub-resource querysets return and update private-recipe steps for non-owners because Space membership is accepted without recipe-level authorization. This can read and silently modify another same-Space member's private recipe instructions, while cross-Space access remains out of scope. This issue is fixed in version 2.6.12.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

