CVE-2026-112342
WysokieCVSS 7.1Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 31 - wyżej niż 31% wszystkich znanych CVE
Streszczenie
Tandoor Recipes przed wersją 2.7.0 zawiera wadliwy projekt klucza pamięci podręcznej w pliku cookbook/helper/permission_helper.py, który pozwala uwierzytelnionym użytkownikom zachować nieaktualne uprawnienia grupowe w różnych przestrzeniach. Klucz pamięci podręcznej opiera się tylko na identyfikatorze użytkownika, pomijając aktywną przestrzeń, a wpis jest odświeżany przy każdym żądaniu. Atakujący może utworzyć własną przestrzeń, uzyskać uprawnienia administratora, a następnie przełączyć się na przestrzeń ofiary, gdzie nieaktualna decyzja o uprawnieniach administratora pozwala na podniesienie uprawnień i obejście odebrania uprawnień.
Ocena ryzyka
Uwierzytelniony użytkownik może uzyskać nieautoryzowany dostęp administracyjny do przestrzeni, w której powinien mieć ograniczone uprawnienia, co może prowadzić do modyfikacji lub wycieku danych. Podatność narusza model kontroli dostępu oparty na grupach.
Rekomendacja
Zaktualizuj Tandoor Recipes do wersji 2.7.0 lub nowszej. Do czasu aktualizacji należy dokładnie przeglądać uprawnienia użytkowników i unikać polegania na pamięci podręcznej uprawnień.
Inne podatności w Tandoor Recipes
Zobacz wszystkie- 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.
- CVE-2026-115810Wysokie
Tandoor Recipes przed wersją 2.7.0 zawiera podatność Server-Side Request Forgery (SSRF) w importerze Pestle. Uwierzytelnieni użytkownicy z niskimi uprawnieniami mogą wymusić na serwerze żądania GET do dowolnych hostów wewnętrznych lub zewnętrznych poprzez spreparowany URL obrazu w pliku importu JSON Pestle.
- CVE-2026-61726Wysokie
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.
- 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-27460Średnie
Tandoor Recipes to aplikacja do zarządzania przepisami, planowania posiłków i tworzenia list zakupów. Przed wersją 2.6.5 w funkcji importu przepisów występowała krytyczna podatność typu Denial of Service (DoS), pozwalająca uwierzytelnionemu użytkownikowi na zawieszenie serwera lub znaczne obniżenie jego wydajności poprzez przesłanie dużego pliku ZIP (ZIP Bomb); problem naprawiono w wersji 2.6.5.
- CVE-2026-35046Średnie
W aplikacji Tandoor Recipes w wersjach przed 2.6.4 uwierzytelnieni użytkownicy mogą wstrzykiwać dowolne znaczniki <style> do instrukcji kroków przepisu. Sanitizer bleach.clean() jawnie zezwala na znacznik <style>, co powoduje, że backend przechowuje i udostępnia przez API nieoczyszczone ładunki CSS. Klienci, którzy pobierają instructions_markdown z API i renderują je jako HTML bez dodatkowej sanityzacji, wykonają CSS kontrolowany przez atakującego, co umożliwia m.in. UI redressing, nakładki phishingowe, wizualne zniekształcenie i eksfiltrację danych za pomocą CSS.
Oryginalny opis (angielski, źródło NVD)
Tandoor Recipes before 2.7.0 contains an improper cache-key design in cookbook/helper/permission_helper.py that allows authenticated users to retain stale group-based permissions across different spaces by exploiting a cache key keyed only on user id while omitting the active space, with the cached entry's TTL refreshed on every request. Attackers can create their own space to obtain an admin group designation, then switch their active space to a victim space where they hold lesser privileges, causing the stale cached admin decision to authorize elevated access and bypass group revocations or demotions across multiple permission classes and views.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

