CVE-2026-91154
>_ Opis
Tłumaczenie automatyczne – może zawierać nieścisłości.
Brak uwierzytelnienia dla funkcji krytycznej (CWE-306) w działaniu serwera ponownego sprawdzania poprawności pamięci podręcznej produktu (src/app/actions.ts, revalidateProducts) w szablonie e-commerce MarcosCamara01 przed zatwierdzeniem ec97209 umożliwia zdalnemu, nieuwierzytelnionemu atakującemu wymuszenie wygaśnięcia całej pamięci podręcznej produktów w sklepie w dowolnym momencie. Plik deklaruje „użyj serwera” w zakresie pliku, więc każda wyeksportowana funkcja kompiluje się do akcji serwera, którą można wywołać metodą POST; revalidateProducts wywołuje updateTag("products") bez sprawdzania sesji lub roli, w przeciwieństwie do akcji tylko do odczytu w tym samym pliku, które są bezpieczne z założenia. Dwa komponenty klienta w src/components/admin importują tę funkcję, co powoduje, że jej identyfikator akcji serwera jest kompilowany do publicznego fragmentu /_next/static, którego nie bramkuje oprogramowanie pośredniczące administratora aplikacji (proxy.ts), więc każdy nieuwierzytelniony użytkownik może wyodrębnić ten identyfikator z pakietu publicznego i bezpośrednio wywołać akcję. Po włączeniu cacheComponents cała witryna sklepowa (strona główna, kategorie, strony produktów, wyszukiwarka) jest obsługiwana z wpisów „użyj pamięci podręcznej” generowanych przez getAllProducts, getCategoryProducts i getProduct, wszystkie produkty oznaczone tagiem z godzinnym cacheLife. Powtarzające się nieuwierzytelnione wywoływanie funkcji revalidateProducts powoduje, że pamięć podręczna jest stale zimna, zmuszając każdego odwiedzającego do przeczytania pełnego katalogu produktów z Postgres zamiast udostępniania z pamięci podręcznej, co pogarsza dostępność witryny sklepowej przy niemal zerowym koszcie atakującego.
>_ Słabości (CWE)
>_ Referencje
Dane podatności pochodzą z oficjalnych źródeł (CVE® List / NVD). Opisy po polsku są tłumaczone automatycznie i mogą zawierać nieścisłości – na stronie rekordu można wyświetlić wersję angielską.
This product uses the NVD API but is not endorsed or certified by the NVD.
Copyright © 1999–2026, The MITRE Corporation. CVE is a registered trademark and the CVE logo is a registered trademark of The MITRE Corporation.
CVE Usage: MITRE hereby grants you a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, sublicense, and distribute Common Vulnerabilities and Exposures (CVE®). Any copy you make for such purposes is authorized provided that you reproduce MITRE's copyright designation and this license in any such copy. ALL DOCUMENTS AND THE INFORMATION CONTAINED THEREIN PROVIDED BY MITRE ARE PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND.
NVD Terms of Use / CVE® Terms of Use / nvd.nist.gov / cve.org