CVE-2026-22707
ŚrednieCVSS 5.4Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 9 - wyżej niż 9% wszystkich znanych CVE
Streszczenie
W Strapi w wersjach przed 5.33.3 punkty końcowe Content API wtyczki Upload nie egzekwowały skonfigurowanych przez administratora ograniczeń typu MIME. Uwierzytelniony użytkownik z uprawnieniem do uploadu przez Content API mógł przesłać zabronione typy plików, w tym HTML i SVG, co w domyślnej konfiguracji mogło prowadzić do przejęcia sesji administratora.
Ocena ryzyka
Atakujący może przesłać złośliwe pliki HTML/SVG i przy ich otwarciu przez administratora wykonać JavaScript w kontekście panelu administracyjnego, przejmując sesję i wykonując akcje administracyjne.
Rekomendacja
Zaktualizuj Strapi do wersji 5.33.3 lub nowszej, która egzekwuje politykę bezpieczeństwa na wszystkich ścieżkach uploadu.
Inne podatności w Strapi
Zobacz wszystkie- CVE-2026-27886Wysokie
Strapi to otwartoźródłowy system zarządzania treścią, który w wersjach od 4.0.0 do przed 5.37.0 nie wystarczająco sanitizował parametry zapytań przy filtrowaniu treści przez pola relacyjne. Atakujący bez uwierzytelnienia mógł wykorzystać parametr zapytania `where`, aby przeprowadzić atak boolean-oracle na prywatnych polach w tabeli `admin_users`, co umożliwiało przejęcie konta administratora.
- CVE-2023-22894ŚrednieAktywnie exploitowane
Strapi do wersji 4.5.5 pozwala atakującym z dostępem do panelu administracyjnego na odkrycie wrażliwych danych użytkowników poprzez wykorzystanie filtra zapytań. Atakujący może filtrować użytkowników po kolumnach zawierających wrażliwe informacje i wywnioskować wartości z odpowiedzi API. Super admin może odkryć hashe haseł i tokeny resetowania haseł wszystkich użytkowników.
- CVE-2026-108114Średnie
Strapi w wersjach od 5.47.0 do 5.57.0 zawiera podatność na nieprawidłową autoryzację, która pozwala tokenom API administratora zachować pełny dostęp do Menedżera Treści po ograniczeniu pól roli właściciela. Ponieważ funkcja reconcileTokenPermissionsToUserCeiling ignoruje uprawnienia tokenów z pominiętymi lub pustymi polami, posiadacze tokenów mogą nadal czytać pola treści, które administrator usunął z roli.
- CVE-2026-90561Wysokie
Strapi w wersjach 4.x do 4.26.2 oraz 5.x przed 5.48.1 zawiera podatność stored cross-site scripting w komponencie podglądu WYSIWYG menedżera treści, który nie usuwa znaczników script z tekstu sformatowanego. Użytkownik z rolą Author może zapisać złośliwe znaczniki script w polach tekstu sformatowanego, które wykonują się w sesji Editora lub Super Admina po rozwinięciu panelu podglądu, umożliwiając przejęcie konta.
- CVE-2026-57997Średnie
Wtyczka users-permissions w Strapi nie ogranicza algorytmów JWT, gdy parametr plugin::users-permissions.jwt.algorithm nie jest jawnie skonfigurowany, co pozwala na akceptację tokenów HS384 i HS512 obok domyślnego HS256. Atakujący posiadający jwtSecret może tworzyć tokeny z niestandardowymi wariantami HMAC, omijając ograniczenia algorytmów i osłabiając kontrolę uwierzytelniania.
- CVE-2026-22706Średnie
W Strapi przed wersją 5.33.3 zmiana lub reset hasła użytkownika domyślnie nie unieważniały istniejących sesji refresh-token, ponieważ krok unieważniania zależał od dostarczonego przez wywołującego deviceId. Atakujący posiadający wcześniej refresh token mógł nadal generować nowe tokeny dostępu po resecie hasła przez prawowitego użytkownika, utrzymując nieautoryzowany dostęp do 30 dni. Poprawka w wersji 5.33.3 unieważnia wszystkie refresh tokeny przy każdej zmianie i resecie hasła.
- CVE-2026-22599Wysokie
W Strapi (gałęzie 4.x przed 4.26.1 i 5.x przed 5.33.2) uwierzytelniony administrator mógł wstrzyknąć dowolne polecenia SQL poprzez atrybut `column.defaultTo` w API Content-Type Builder, ustawiając go jako krotkę `[wartość, { isRaw: true }]`. W zależności od silnika bazy danych umożliwiało to odczyt plików, atak DoS lub zdalne wykonanie kodu na serwerze bazy danych.
- CVE-2025-64526Średnie
W Strapi w wersjach przed 5.45.0 middleware rate-limit w pluginie users-permissions budował klucz limitu m.in. na podstawie pola `ctx.request.body.email`, nawet na trasach, których schemat żądania nie zawiera pola email (np. /auth/local, /auth/reset-password, /auth/change-password). Nieuwierzytelniony atakujący mógł podać dowolną wartość email w treści żądania, uzyskując nowy klucz limitu przy każdym żądaniu i tym samym omijając ograniczenie liczby prób na IP. Umożliwiało to masowe ataki brute-force na dane logowania, kody resetowania hasła oraz credential stuffing.
- CVE-2025-53092Średnie
Strapi w wersjach przed 5.20.0 zawiera podatność na błędną konfigurację CORS w domyślnych instalacjach. Domyślnie Strapi odzwierciedla wartość nagłówka Origin w nagłówku odpowiedzi Access-Control-Allow-Origin bez odpowiedniej walidacji lub białej listy, co pozwala witrynie kontrolowanej przez atakującego wysyłać żądania z poświadczeniami do backendu Strapi. Podatność naprawiono w wersji 5.20.0.
- CVE-2025-3930Średnie
Strapi używa tokenów JWT do uwierzytelniania. Po wylogowaniu lub dezaktywacji konta token JWT nie jest unieważniany, co pozwala atakującemu, który ukradł lub przechwycił token, na jego ponowne użycie aż do daty wygaśnięcia (domyślnie 30 dni). Istnienie endpointu /admin/renew-token pozwala na nieograniczone odnawianie tokenów bliskich wygaśnięcia, co zwiększa wpływ ataku. Problem naprawiono w wersji 5.24.1.
Oryginalny opis (angielski, źródło NVD)
Strapi is an open source headless content management system. In Strapi versions prior to 5.33.3, the Upload plugin's Content API endpoints did not enforce the administrator-configured MIME type restrictions (`plugin.upload.security.allowedTypes` and `deniedTypes`). The same restrictions were correctly enforced on the Admin Panel upload path. The upload plugin's `enforceUploadSecurity` security check was invoked in the admin upload controller but was missing from the Content API controller. The Content API handlers `uploadFiles` and `replaceFile` (and the `upload` wrapper that dispatches to them) called the underlying upload service directly, bypassing both the magic-byte MIME detection and the configured allow/deny lists. An authenticated user with the Content API upload permission could therefore upload file types the administrator had explicitly disallowed, including HTML and SVG content. In deployments serving uploaded files from the same origin as the admin panel (default), an attacker could upload an HTML or SVG file that, when opened directly by an admin, executed JavaScript in the admin origin, enabling admin-session hijack and authenticated administrative actions against the admin API. The patch in version 5.33.3 introduces a shared `prepareUploadRequest` helper that wraps `enforceUploadSecurity` and is called from both the Content API and admin upload controllers, ensuring identical security policy enforcement on every upload entry point.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

