CVE-2026-81567
WysokieCVSS 8.7Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 14 - wyżej niż 14% wszystkich znanych CVE
Streszczenie
Rozszerzenie Joomla J2Store (wersje 1.0.0-3.3.2, 4.0.0-4.0.22, 4.1.0-4.1.7) zawiera nieuwierzytelnioną podatność na ślepą iniekcję SQL w liście produktów sklepu. Atakujący może zdalnie wyodrębnić dowolne dane z bazy, takie jak rekordy klientów, zamówienia czy przechowywane tokeny, wykorzystując wnioskowanie boolean lub czasowe.
Ocena ryzyka
Ryzyko jest krytyczne, ponieważ atak nie wymaga logowania i może ujawnić wrażliwe dane klientów oraz dane zamówień, co może prowadzić do naruszenia prywatności i kradzieży tożsamości.
Rekomendacja
Zaktualizuj J2Store do najnowszej dostępnej wersji, która zawiera poprawkę. Jeśli nie jest dostępna, tymczasowo wyłącz publiczny dostęp do listy produktów lub filtrów tagów.
Inne podatności w J2Store
Zobacz wszystkie- CVE-2026-78065Wysokie
W rozszerzeniu Joomla J2Store (wersje 1.0.0-3.3.21, 4.0.0-4.0.21, 4.1.0-4.1.6) wykryto podatność IDOR w funkcji editAddress(), która umożliwia każdemu uwierzytelnionemu użytkownikowi dostęp do adresów zamówień gości. Funkcja przekierowywała nie-właścicieli tylko wtedy, gdy załadowany wiersz adresu miał niepusty user_id należący do kogoś innego. Wiersze adresów zamówień gości mają pusty user_id, więc ten warunek nigdy nie był spełniony — każdy zalogowany użytkownik, zgadując mały, sekwencyjny address_id, mógł zobaczyć pełne imię, adres ulicy i numer telefonu klienta-gościa w formularzu edycji.
- CVE-2026-78064Wysokie
W rozszerzeniu Joomla J2Store (wersje 1.0.0-3.3.21, 4.0.0-4.0.21, 4.1.0-4.1.6) wykryto podatność umożliwiającą anonimowe manipulowanie rekordami koszyka poprzez odziedziczone zadanie `save` z FOF. Plik `fof.xml` przyznaje zadaniom widoku `carts` dziką kartę ACL `true`, a FOF egzekwuje tokeny CSRF tylko na żądaniach HTML backendu, nie na żądaniach frontendu `format=raw`. `J2StoreControllerCarts` ograniczył `remove()` do własnej sesji wywołującego, ale nie nadpisał ogólnego zadania `save` FOF, więc pozostało ono dostępne do wstawiania nowych wierszy koszyka z wybranym przez atakującego `user_id`/`session_id` lub nadpisywania istniejącego wiersza po id.
- CVE-2026-78000Średnie
Rozszerzenie Joomla - j2commerce.com - zawiera odzwierciedlony XSS poprzez parametry `filter_tag`, `pricefrom` i `priceto` w J2Store 1.0.0-3.3.21, 4.0.0-4.0.21, 4.1.0-4.1.6. Cztery procedury obsługi zadań akceptowały zakodowany w base64 adres URL od użytkownika i przekierowywały do niego bez weryfikacji hosta docelowego, umożliwiając phishing przy użyciu zaufanej domeny sklepu. Nie wymaga uwierzytelnienia.
- CVE-2026-77999Wysokie
W rozszerzeniu Joomla J2Store (wersje 1.0.0-3.3.21, 4.0.0-4.0.21, 4.1.0-4.1.6) wykryto podatność umożliwiającą nieuwierzytelnione fałszowanie wywołania zwrotnego PayPal, prowadzące do oszustwa związanego z potwierdzeniem zamówienia. Listener PayPal IPN akceptował odpowiedzi `UNVERIFIED` i każdą nie-`INVALID` jako ważne, wyłączał weryfikację SSL (CURLOPT_SSL_VERIFYPEER) i przechowywał werdykt w polu, którego nic później nie sprawdzało — więc przetwarzanie kontynuowało się niezależnie od wyniku. Dodatkowo porównanie zapłaconej kwoty działało tylko, gdy `mc_gross` było liczbą dodatnią; pominięcie pola w treści POST (`floatval(null) == 0`) pomijało sprawdzenie. W połączeniu z `receiver_email` skonfigurowanym przez sprzedawcę i sekwencyjnym, możliwym do odgadnięcia identyfikatorem zamówienia odczytanym z pola `custom`, anonimowy POST wystarczył, aby przenieść oczekujące zamówienie bezpośrednio do statusu `CONFIRMED` bez płatności lub wymusić na innym kliencie zmianę statusu oczekującego zamówienia na `FAILED`. `paypalv2.php` nie przeprowadzał żadnej kontroli kwoty w żadnych okolicznościach.
- CVE-2026-78069Krytyczne
Rozszerzenie Joomla - j2commerce.com - Brak autoryzacji w łańcuchu delegacji kontrolera Apps w J2Store 1.0.0-3.3.21, 4.0.0-4.0.21, 4.1.0-4.1.6 - Ścieżka delegacji appTask w J2StoreControllerApps tworzy kontrolery wtyczek bez żadnej kontroli ACL. Ponadto applocalizationdata::getInstallerTool() używa nazwy tabeli zależnej od wywołującego bez listy dozwolonych, co umożliwia odczyt/wykonanie plików z możliwością path traversal.
- CVE-2026-82191Średnie
Rozszerzenie Joomla J2Store w wersjach 1.0.0-3.3.2, 4.0.0-4.0.22, 4.1.0-4.1.7 odzwierciedla nieescapowane dane żądania w przekierowaniu PayPal notify. Spreparowany link do endpointu paypal notify, jeśli zostanie otwarty przez przeglądarkę ofiary, powoduje, że przekierowanie do kontrolera checkout com_j2store przenosi parametry wybrane przez atakującego.
- CVE-2026-82190Średnie
Rozszerzenie Joomla J2Store w wersjach 1.0.0-3.3.2, 4.0.0-4.0.22, 4.1.0-4.1.7 używa przewidywalnego/możliwego do podrobienia tokenu dostępu do zamówienia. Każdy, kto zna sekret Joomla, może obliczyć ważny token dostępu dla dowolnego zamówienia bez jego składania, uzyskując dostęp gościa do szczegółów zamówienia i cyfrowych pobrań.
- CVE-2026-82189Wysokie
W rozszerzeniu Joomla J2Store każdy może oznaczyć dowolne zamówienie jako nieudane (Failed) bez uwierzytelnienia. Atakujący może masowo oznaczać oczekujące zamówienia jako nieudane, zakłócając przychody i wymuszając ręczne przetwarzanie, lub przywracać zrealizowane zamówienia do stanu FAILED, powodując zamieszanie operacyjne. W przeciwieństwie do wcześniejszego problemu z oszustwem potwierdzeń, nie jest wymagana żadna poprawna kwota płatności ani dane transakcji.
- CVE-2026-81568Wysokie
W rozszerzeniu Joomla J2Store metoda J2StoreModelOrderdownloads::getFilePath() budowała ścieżkę do zakupionego pliku cyfrowego, łącząc skonfigurowany folder załączników z zapisaną nazwą pliku produktu (product_file_save_name), używając jedynie JPath::clean() (które normalizuje separatory, ale nie rozwiązuje ani nie odrzuca segmentów ..) i zwykłego sprawdzenia JFile::exists(). Jeśli nazwa pliku zawierała segment przejścia ../, klient posiadający ważny token/pid mógł pobrać dowolny plik czytelny dla serwera WWW (np. configuration.php).
- CVE-2026-78081Wysokie
Rozszerzenie Joomla J2Store (wersje 1.0.0-3.3.2, 4.0.0-4.0.22, 4.1.0-4.1.7) brakuje ochrony CSRF w kontrolerach koszyka, płatności i profilu. Sfałszowane żądanie wykorzystujące aktywną sesję ofiary może po cichu zmienić adres rozliczeniowy lub dostawy przed potwierdzeniem zamówienia, co może przekierować towary na adres atakującego.
Oryginalny opis (angielski, źródło NVD)
Joomla Extension - j2commerce.com - Unauthenticated blind SQL injection in the storefront product list in J2Store 1.0.0-3.3.2, 4.0.0-4.0.22, 4.1.0-4.1.7 - Unauthenticated, blind extraction of arbitrary database content (e.g. customer records, order data, stored credentials/tokens) via boolean- or time-based inference, reachable on any public storefront that exposes the standard product listing or product-tags filter.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

